Skip to content

Instantly share code, notes, and snippets.

@Inclushe
Last active June 28, 2024 19:52
Show Gist options
  • Save Inclushe/fcda9e56f2d43fac21b2be56de87780a to your computer and use it in GitHub Desktop.
Save Inclushe/fcda9e56f2d43fac21b2be56de87780a to your computer and use it in GitHub Desktop.
figma_app-dc3a952c65dfdb4f.min.js.br
This file has been truncated, but you can view the full file.
!function() {
try {
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {}
, n = (new Error).stack;
n && (e._sentryDebugIds = e._sentryDebugIds || {},
e._sentryDebugIds[n] = "023cbf78-ebda-5035-9728-65899500f9e2")
} catch (e) {}
}();
(globalThis.webpackChunk = globalThis.webpackChunk || []).push([[7693], {
10199: (e,t,n)=>{
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}),
t.AutoLayout = t.styleForAutoLayout = void 0;
let r = n(358932)
, i = n(411855)
, a = n(545977)
, o = n(229009)
, l = n(539321)
, s = n(450311)
, d = n(478469);
function c(e, t, n) {
let {style: r, overlayStyle: i, wrapperStyle: a} = (0,
o.styleForFrame)(e, t, n);
return {
style: Object.assign(Object.assign(Object.assign({}, r), (0,
l.getParentLayout)(e)), (0,
l.getVisibility)(e)),
overlayStyle: i,
wrapperStyle: a
}
}
t.styleForAutoLayout = c,
t.AutoLayout = i.forwardRef(function(e, t) {
let {attributes: n, children: l} = e
, u = (0,
r.__rest)(e, ["attributes", "children"])
, p = i.useContext(a.ParentContext);
(0,
a.warnInvalidConstraints)(Object.assign(Object.assign({}, u), {
parent: p
}));
let m = (0,
d.normalizeProps)(Object.assign(Object.assign({}, (0,
s.getDefaultAutoLayoutProps)()), u))
, _ = (0,
a.getInvalidFillParentCheckerRef)(Object.assign(Object.assign({}, m), {
parent: p
}))
, h = c(m, p, i.Children.count(l) > 0);
return i.createElement(a.ParentContext.Provider, {
value: {
type: "autolayout",
props: m
}
}, (0,
o.domNodeFromFrame)({
figmaLayerName: m.name,
styles: h,
attributes: n,
children: l,
ref: (0,
a.mergeRefs)([_, t])
}))
})
}
,
40848: (e,t,n)=>{
"use strict";
n.d(t, {
CZ: ()=>s,
Qp: ()=>l,
RF: ()=>i,
RL: ()=>p,
hv: ()=>r,
kz: ()=>m,
nv: ()=>u,
qE: ()=>d,
qS: ()=>c,
sx: ()=>_,
uj: ()=>a,
yu: ()=>o
});
let r = "base_badge--backgroundLight--agxeS"
, i = "base_badge--backgroundWarning--i7d2I"
, a = "base_badge--backgroundWhite--ZqZgN"
, o = "base_badge--borderStrong--makDy"
, l = "base_badge--height24--PMSUp text--fontPos11--2LvXf text--_fontBase--QdLsd"
, s = "base_badge--heightSixteen--BEJT8 text--fontPos9--naThA text--_fontBase--QdLsd"
, d = "base_badge--badgeIconContainer--Gu5zx"
, c = "base_badge--badge--cbfYy base_badge--backgroundLight--agxeS"
, u = "base_badge--badgeContentContainerWithIcon--ECslI"
, p = "base_badge--badgeTooltip--Qz3RM"
, m = "base_badge--tooltipLink--KpcPS"
, _ = "base_badge--badgeWrapperFlex--uukBt"
}
,
342859: (e,t,n)=>{
"use strict";
n.d(t, {
DD: ()=>l,
If: ()=>d,
Jp: ()=>b,
M1: ()=>u,
N1: ()=>a,
NG: ()=>h,
OQ: ()=>S,
QY: ()=>_,
VB: ()=>m,
X7: ()=>s,
Xd: ()=>v,
YO: ()=>r,
Z0: ()=>E,
dD: ()=>f,
eO: ()=>c,
gi: ()=>i,
h_: ()=>A,
kO: ()=>T,
lp: ()=>p,
qY: ()=>I,
tF: ()=>o,
y_: ()=>g,
yq: ()=>y,
zu: ()=>w
});
let r = "basic_resource_header--mobileAttributionLine--SVYDo basic_resource_header--attributionLine--3-ssm text--fontPos13--xW8hS text--_fontBase--QdLsd"
, i = "basic_resource_header--attributionCreator--rV-9C"
, a = "basic_resource_header--headerContainer--YYSPX"
, o = "basic_resource_header--authors--1PIBq text--fontPos13--xW8hS text--_fontBase--QdLsd"
, l = "basic_resource_header--title--9jW4i text--fontPos24--YppUD text--_fontBase--QdLsd ellipsis--ellipsisAfter3Lines--h405C ellipsis--_ellipsisAfterNLines--LzI7k"
, s = "basic_resource_header--title_badge_container--vH8BZ"
, d = "basic_resource_header--bulletSeparator--OGYaL text--fontPos10--s1PI5 text--_fontBase--QdLsd"
, c = "basic_resource_header--stickyTitle--oG0u0 ellipsis--ellipsis--Tjyfa text--fontPos18--rYXJb text--_fontBase--QdLsd"
, u = "basic_resource_header--stats--U1D-b text--fontPos13--xW8hS text--_fontBase--QdLsd"
, p = "basic_resource_header--numberOfUsers--oWoBg"
, m = "basic_resource_header--mobileResourcePageHeaderMaxWidth--McUl4 basic_resource_header--resourcePageHeaderMaxWidth--ym-5U"
, _ = "basic_resource_header--mobileResourcePageHeaderSticky--k2EHs basic_resource_header--mobileResourcePageHeader--EgM2G"
, h = "basic_resource_header--mobileResourceNameHeader--oN4qX text--fontPos24--YppUD text--_fontBase--QdLsd"
, g = "basic_resource_header--mobileName--5NvYd"
, f = "basic_resource_header--anchorLinkContainer--UaF3S"
, E = "basic_resource_header--resourcePageHeaderMobile--pJLU0 basic_resource_header--mobileResourcePageHeader--EgM2G"
, y = "basic_resource_header--resourcePageHeaderSticky--z2Rga"
, b = "basic_resource_header--resourcePageHeaderStickyContainer--XiXE-"
, v = "basic_resource_header--headerStickyLeftSide--OkZLQ"
, I = "basic_resource_header--anchorLink--r0iNn meta_container--metaTab--zRKXG text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, T = "basic_resource_header--activeAnchorLink--3ueWI meta_container--selectedMetaTab--5IRWQ meta_container--metaTab--zRKXG text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, S = "basic_resource_header--ctaContainer--k8wqG"
, w = "basic_resource_header--leftSide--MzgPN"
, A = "basic_resource_header--description--718b9 text--fontPos13--xW8hS text--_fontBase--QdLsd"
}
,
637961: (e,t,n)=>{
"use strict";
n.d(t, {
$P: ()=>eI,
$c: ()=>U,
$n: ()=>es,
A$: ()=>Q,
AJ: ()=>p,
Au: ()=>j,
Az: ()=>eg,
BN: ()=>P,
BP: ()=>eA,
BQ: ()=>O,
DD: ()=>G,
Dk: ()=>ew,
E9: ()=>l,
GE: ()=>u,
HL: ()=>A,
IB: ()=>r,
IQ: ()=>R,
IW: ()=>ei,
JE: ()=>eN,
JM: ()=>L,
JQ: ()=>ev,
Jm: ()=>J,
Oy: ()=>el,
PQ: ()=>ec,
QW: ()=>$,
QX: ()=>eb,
Qd: ()=>ep,
Qj: ()=>em,
SI: ()=>b,
Si: ()=>eS,
Sl: ()=>w,
T6: ()=>a,
UN: ()=>B,
V: ()=>ea,
V3: ()=>ee,
XO: ()=>D,
Xi: ()=>X,
Xq: ()=>Z,
ZR: ()=>M,
ZW: ()=>F,
_1: ()=>C,
_j: ()=>V,
aK: ()=>Y,
bu: ()=>S,
c7: ()=>d,
cy: ()=>W,
em: ()=>K,
en: ()=>T,
fw: ()=>h,
gO: ()=>en,
hm: ()=>o,
iu: ()=>eu,
j4: ()=>i,
jm: ()=>ef,
mU: ()=>ey,
m_: ()=>y,
nJ: ()=>k,
nz: ()=>eT,
o1: ()=>z,
pz: ()=>m,
r6: ()=>eh,
rh: ()=>q,
rn: ()=>H,
rt: ()=>g,
s4: ()=>s,
tt: ()=>c,
u1: ()=>et,
u8: ()=>E,
uh: ()=>eO,
uq: ()=>ed,
v2: ()=>eo,
vR: ()=>eE,
vu: ()=>f,
w: ()=>_,
wS: ()=>I,
wr: ()=>N,
ws: ()=>er,
xQ: ()=>eC,
z3: ()=>v,
zA: ()=>x,
zG: ()=>e_
});
let r = "feed_page--feedApp--CMcLD text--fontPos15--IR8IB text--_fontBase--QdLsd"
, i = "feed_page--categoryPageRedesignMargin--0f8Vx"
, a = "feed_page--exploreFeedApp--OHHs6 feed_page--feedApp--CMcLD text--fontPos15--IR8IB text--_fontBase--QdLsd"
, o = "feed_page--feed--7UNQq text--fontPos13--xW8hS text--_fontBase--QdLsd"
, l = "feed_page--feedResourceGridContainer--yisWJ"
, s = "feed_page--feedResourceGridExplorePageContainer--nIc6q"
, d = "feed_page--feedSection--Vnk47"
, c = "feed_page--magicH1--EOWil text--fontPos40WhyteInktrap--SVcxi text--_fontBaseWhyteInktrap--YiiGP"
, u = "feed_page--magic---00EQ"
, p = "feed_page--subHeading--Q5oY3 text--fontPos20Whyte--o3mBO text--_fontBaseWhyte--efAjI"
, m = "feed_page--sidebar---2-0D"
, _ = "feed_page--selectedSidebarBackdrop--qrbTt"
, h = "feed_page--numSearchResults--pkhEL"
, g = "feed_page--resourceHumanName--Sw7yE"
, f = "feed_page--active--47Vpq"
, E = "feed_page--fullWidthFeed--hizyU"
, y = "feed_page--subheader--UGVYE text--fontPos22--4H4Fc text--_fontBase--QdLsd"
, b = "feed_page--seeAllCollectionsLink--A7xYb text--fontPos13--xW8hS text--_fontBase--QdLsd"
, v = "feed_page--feedGrid--Wm-8Q"
, I = "feed_page--resourceRedesignGapOverride--1AdTY"
, T = "feed_page--compactFeedGrid--S8yrv feed_page--feedGrid--Wm-8Q"
, S = "feed_page--compactFeedRows--jlDLG feed_page--feedGrid--Wm-8Q"
, w = "feed_page--hubFile--uHbnb feed_page--resourceLinkTag--5KQz7"
, A = "feed_page--widget--CnSI2 feed_page--resourceLinkTag--5KQz7"
, C = "feed_page--compactProfileViewGrid--Vz5I9 feed_page--compactFeedGrid--S8yrv feed_page--feedGrid--Wm-8Q"
, N = "feed_page--prototypeIcon--JlZyq"
, O = "feed_page--tileUpperLeftWrapper--mwqC-"
, L = "feed_page--tileEditorIcon--ymAxC"
, R = "feed_page--plugin--eimaR feed_page--resourceLinkTag--5KQz7"
, P = "feed_page--resourcePreview--IePch"
, k = "feed_page--redesignedResourcePreview--MjW2w"
, D = "feed_page--resourcePreviewContentWrapper--H1eHK"
, M = "feed_page--pluginIcon--NQjwf"
, F = "feed_page--resourcePreviewContentWrapperFigJamDots---54d- feed_page--resourcePreviewContentWrapper--H1eHK"
, x = "feed_page--resourcePreviewContentWrapperThumbnailSet--QlsAU feed_page--resourcePreviewContentWrapper--H1eHK"
, U = "feed_page--resourcePreviewContentWrapperRadiusCursorOverride--kfxmj"
, B = "feed_page--resourceMeta--7vtas text--fontPos13--xW8hS text--_fontBase--QdLsd"
, V = "feed_page--redesignedResourceMeta--WUKzv text--fontPos13--xW8hS text--_fontBase--QdLsd"
, H = "feed_page--titleAndAuthor--P2cvB text--fontPos13--xW8hS text--_fontBase--QdLsd"
, G = "feed_page--title--qJMsk"
, W = "feed_page--author--pH7Iw text--fontPos11--2LvXf text--_fontBase--QdLsd"
, K = "feed_page--resourceAvatar--Nwl7h"
, z = "feed_page--actions--UXu0g"
, j = "feed_page--actionNoHover--QdLcL"
, Y = "feed_page--action__default_like--xlPBc feed_page--actionNoHover--QdLcL"
, $ = "feed_page--action__liked--8ZiFG feed_page--actionNoHover--QdLcL"
, Z = "feed_page--resourceMetaAuthor--3wNr7"
, q = "feed_page--redesignedResourceMetaAuthor--43-kr text--fontPos11--2LvXf text--_fontBase--QdLsd"
, J = "feed_page--redesignedAuthor--tKu73 text--fontPos11--2LvXf text--_fontBase--QdLsd"
, X = "feed_page--redesignedAuthorHoverDropdown--4DftQ dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, Q = "feed_page--pluginDescription--fL9Cf text--fontPos11--2LvXf text--_fontBase--QdLsd"
, ee = "feed_page--loadMoreButtonWrapper--QvZXr"
, et = "feed_page--spinner--Z0jz3"
, en = "feed_page--profileRow--YIiOy"
, er = "feed_page--pluginRow--urF1M"
, ei = "feed_page--pluginRowImageContainer--pBAdP"
, ea = "feed_page--pluginRowButtonContainer--ZXV-4"
, eo = "feed_page--pluginRowIcon--Gj3Ol"
, el = "feed_page--pluginRowDescription--9U39k"
, es = "feed_page--pluginRowAuthor--Vg6sm"
, ed = "feed_page--pluginRowUpdatedAt--T2K-9"
, ec = "feed_page--pluginMeta--Z8DkK"
, eu = "feed_page--pluginRowTitle--2c-r8"
, ep = "feed_page--pluginRowTitleNameText--lPAaZ"
, em = "feed_page--pluginInstallCount---BhkG"
, e_ = "feed_page--profileRowAvatar--h2azi"
, eh = "feed_page--profileRowMeta--sfwOx"
, eg = "feed_page--profileRowFollowBox--j7BRa"
, ef = "feed_page--profileRowResources--TLbIS"
, eE = "feed_page--profileRowResourceWrapper--hI5Wd"
, ey = "feed_page--profileRowFollowersMetadata--tlFVr text--fontPos12--YsUAh text--_fontBase--QdLsd"
, eb = "feed_page--profileRowFollowersHeader--q5m62"
, ev = "feed_page--profileRowFollowers--8L1-o"
, eI = "feed_page--profileRowName--p-4KA"
, eT = "feed_page--profileRowProfileHandle--eDbiU text--fontPos12--YsUAh text--_fontBase--QdLsd"
, eS = "feed_page--tileTooltip--44prj dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, ew = "feed_page--pluginRowTitleWithBadge--qTn5u"
, eA = "feed_page--pluginRowDescriptionWithBadge--95gmZ"
, eC = "feed_page--footerContainer--PdYUf"
, eN = "feed_page--metaInRedesignedTile--oALVP"
, eO = "feed_page--metaInRedesignedPluginRow--Jx-Af"
}
,
250769: (e,t,n)=>{
"use strict";
n.r(t),
n.d(t, {
authedAccountEmail: ()=>g,
avatar: ()=>b,
button: ()=>u,
figmaAuthModal: ()=>o,
genericSelectorExternalTeamsIcon: ()=>E,
genericSelectorInner: ()=>h,
genericSelectorModal: ()=>_,
genericSelectorModalCancel: ()=>f,
graphic: ()=>l,
header: ()=>d,
logInButton: ()=>m,
loggedOutCommunityActionModal: ()=>a,
modal: ()=>r,
modalBackdrop: ()=>i,
modalCloseButton: ()=>s,
primaryWideButton: ()=>p,
subHeader: ()=>c,
workspaceSelectorModal: ()=>v,
workspaceSelectorModalInner: ()=>I,
workspaceTitleWrapper: ()=>y
});
let r = "index--modal--vmXNN"
, i = "index--modalBackdrop--VqLCO"
, a = "index--loggedOutCommunityActionModal--P-hYZ index--modalBackdrop--VqLCO"
, o = "index--figmaAuthModal--rNJVQ index--modalBackdrop--VqLCO"
, l = "index--graphic--iU2RU"
, s = "index--modalCloseButton--Migyu text--fontPos24--YppUD text--_fontBase--QdLsd"
, d = "index--header--ZtRxZ text--fontPos22--4H4Fc text--_fontBase--QdLsd"
, c = "index--subHeader--6bNQO text--fontPos16--oMC-G text--_fontBase--QdLsd"
, u = "index--button--NGLN1 text--fontPos16Whyte--OfwSP text--_fontBaseWhyte--efAjI"
, p = "index--primaryWideButton--jq1BX index--button--NGLN1 text--fontPos16Whyte--OfwSP text--_fontBaseWhyte--efAjI"
, m = "index--logInButton--LMXFW index--button--NGLN1 text--fontPos16Whyte--OfwSP text--_fontBaseWhyte--efAjI"
, _ = "index--genericSelectorModal--3aSLC index--modalBackdrop--VqLCO text--fontPos13--xW8hS text--_fontBase--QdLsd"
, h = "index--genericSelectorInner--HBJH2"
, g = "index--authedAccountEmail--zhDrH text--fontPos11--2LvXf text--_fontBase--QdLsd"
, f = "index--genericSelectorModalCancel--WOjxG"
, E = "index--genericSelectorExternalTeamsIcon--KL8jt"
, y = "index--workspaceTitleWrapper--e9YT2"
, b = "index--avatar--nIkKj"
, v = "index--workspaceSelectorModal--KqRLO index--modalBackdrop--VqLCO"
, I = "index--workspaceSelectorModalInner--6wXm6 index--genericSelectorInner--HBJH2"
}
,
302510: (e,t,n)=>{
"use strict";
n.d(t, {
Ec: ()=>c,
G8: ()=>u,
T9: ()=>_,
UY: ()=>d,
Wf: ()=>l,
aT: ()=>h,
jp: ()=>m,
lp: ()=>r,
mH: ()=>a,
sp: ()=>p,
v$: ()=>i,
xW: ()=>s,
zn: ()=>o
});
let r = "32px"
, i = "12px"
, a = "resource_page_media_carousel--hubFileTileFullInnerImage--kVJwo resource_page_media_carousel--hubFileTileInnerImage--irUS9"
, o = "resource_page_media_carousel--mobileCarousel--G3Nxz"
, l = "resource_page_media_carousel--canvasViewerWrapper--wZlH-"
, s = "resource_page_media_carousel--carouselThumbnailsContainer--YuKP9"
, d = "resource_page_media_carousel--carouselThumbnails--VkVVj"
, c = "resource_page_media_carousel--centeredCarouselThumbnails--20mlm resource_page_media_carousel--carouselThumbnails--VkVVj"
, u = "resource_page_media_carousel--carouselImage--91wRk"
, p = "resource_page_media_carousel--fadeOutMaskLeft--J1Skk resource_page_media_carousel--fadeOutMask--hqP3b"
, m = "resource_page_media_carousel--fadeOutMaskRight--1NzE3 resource_page_media_carousel--fadeOutMask--hqP3b"
, _ = "resource_page_media_carousel--carouselArrowLeft--VYt1X resource_page_media_carousel--arrow--5g-tR"
, h = "resource_page_media_carousel--carouselArrowRight--1Dlxa resource_page_media_carousel--arrow--5g-tR"
}
,
955035: ()=>{}
,
244616: (e,t,n)=>{
"use strict";
n.d(t, {
$y: ()=>g,
A8: ()=>b,
Dn: ()=>A,
Ew: ()=>o,
Gu: ()=>I,
LA: ()=>E,
N: ()=>S,
NZ: ()=>T,
PZ: ()=>p,
Rp: ()=>h,
U0: ()=>c,
U6: ()=>w,
iu: ()=>f,
kZ: ()=>s,
my: ()=>r,
n1: ()=>i,
ne: ()=>_,
p$: ()=>m,
pk: ()=>v,
pq: ()=>u,
r3: ()=>l,
u2: ()=>y,
wt: ()=>d,
xM: ()=>a
});
let r = "avatar--avatar--fFibd"
, i = "avatar--circle--ag36Q"
, a = "avatar--roundedSquare--cq522"
, o = "avatar--square--p4eL1"
, l = "avatar--dim--UbqLc"
, s = "avatar--avatarBellWrapper--sd6MY"
, d = "avatar--bell--Lk6s9"
, c = "avatar--avatarWithHandle--Z3934"
, u = "avatar--info--vDGTn"
, p = "avatar--handleRow--0K2-H"
, m = "avatar--handle--wlTXK"
, _ = "avatar--isMe--LeNkH"
, h = "avatar--email--G3FcZ"
, g = "avatar--emailHover--ekuTn"
, f = "avatar--avatarWithOutwardBorder--3JJ57"
, E = "avatar--avatarWithInwardBorder--L469R"
, y = "avatar--clickableAvatarWithHandle--d90vX"
, b = "avatar--disabledDimAvatarWithHandle--5l6cM"
, v = "avatar--multiTeamAvatarContainer--Rb-Kn"
, I = "avatar--multiTeamAvatarContainerHovered--2V7AO"
, T = "avatar--workspaceAvatarBlue--XbbpI"
, S = "avatar--workspaceAvatarPurple--FOGSP"
, w = "avatar--workspaceAvatarGreen--PWm5o"
, A = "avatar--workspaceAvatarTeal--4j3FH"
}
,
478398: (e,t,n)=>{
"use strict";
n.d(t, {
$J: ()=>N,
$e: ()=>w,
$j: ()=>l,
Aq: ()=>o,
B6: ()=>g,
DB: ()=>u,
Dt: ()=>I,
J3: ()=>S,
JT: ()=>r,
Kk: ()=>m,
NM: ()=>c,
O4: ()=>E,
Vg: ()=>C,
Y2: ()=>a,
av: ()=>d,
fF: ()=>y,
hL: ()=>f,
h_: ()=>_,
iZ: ()=>T,
jy: ()=>s,
lI: ()=>b,
mj: ()=>A,
n3: ()=>i,
r: ()=>p,
r3: ()=>v,
zS: ()=>h
});
let r = "banner--bannerBaseAbsolute--u49FZ"
, i = "banner--bannerWarningCta--FdSHo"
, a = "banner--bannerBaseInner--l363V"
, o = "banner--successBanner--ruF24 banner--bannerBase--80Huv"
, l = "banner--warningBanner--m-3vT banner--bannerBase--80Huv"
, s = "banner--errorBanner--b8ymK banner--bannerBase--80Huv"
, d = "banner--bannerSection--74cQW"
, c = "banner--softWarningBanner---kS46 banner--bannerBase--80Huv"
, u = "banner--memoryUsageBarContainer--zzN0V"
, p = "banner--dismissButton--ZMqAK"
, m = "banner--icon--a5jex"
, _ = "banner--description---mdB-"
, h = "banner--confidentialityBanner--BKuUX banner--bannerBase--80Huv"
, g = "banner--infoBannerDesign--Aarfc banner--bannerBase--80Huv"
, f = "banner--creatorStatsBannerContainer--Lw6bF"
, E = "banner--infoBannerWhiteboard--htrQs banner--bannerBase--80Huv"
, y = "banner--infoBannerDevMode--r-gZd banner--bannerBase--80Huv"
, b = "banner--ctaButton--tou-0"
, v = "banner--infoBannerSlides--ghVau banner--bannerBase--80Huv"
, I = "banner--infoBannerSites--GGDYr banner--bannerBase--80Huv"
, T = "banner--ctaBannerSection--5igvi banner--bannerSection--74cQW"
, S = "banner--iconLarge--rHox5"
, w = "banner--mainText--CJNXv"
, A = "banner--ctaButtonCommunity--03wDW"
, C = "banner--ctaButtonPrimary--fWDCl"
, N = "banner--linkButton--6Mb0p"
}
,
159256: (e,t,n)=>{
"use strict";
n.d(t, {
$M: ()=>a,
Bi: ()=>v,
Fb: ()=>_,
Fl: ()=>d,
J7: ()=>S,
JQ: ()=>P,
KR: ()=>s,
Kb: ()=>f,
MP: ()=>A,
Nv: ()=>N,
Q3: ()=>k,
RR: ()=>p,
Sp: ()=>C,
Tz: ()=>u,
Vl: ()=>l,
_0: ()=>r,
cO: ()=>o,
cf: ()=>x,
cu: ()=>g,
dL: ()=>b,
g: ()=>L,
gW: ()=>U,
gf: ()=>D,
h1: ()=>V,
hI: ()=>M,
i2: ()=>R,
ii: ()=>i,
iz: ()=>c,
kU: ()=>T,
o6: ()=>y,
pB: ()=>I,
vG: ()=>E,
wH: ()=>B,
wp: ()=>m,
xB: ()=>F,
xc: ()=>h,
xm: ()=>O,
yZ: ()=>w
});
let r = "community_cards--cardChildDisplayOnHover--7KpMt"
, i = "community_cards--cardLayoutContainer--nPcgb"
, a = "community_cards--cardSubtitleRowSizing--9WRul"
, o = "community_cards--cardBottomRowSizing--sT6xQ"
, l = "community_cards--cardImageContainer--8ngfu base_community_cards--base_cardImageContainer--jpAKE base_community_cards--_hasBorder--kFIag"
, s = "community_cards--cardHover_TopLeft--yGcAk"
, d = "community_cards--cardBottomRow_MetadataContainer--QLUfh"
, c = "community_cards--cardBottomRow_Metadata_HoverText--McZzP"
, u = "community_cards--cardBottomRow_Metadata_HoverText_AnimateHeight--4wdBR community_cards--cardBottomRow_Metadata_HoverText--McZzP"
, p = "community_cards--cardBottomRow_Metadata_AuthorName_WithHoverText--GJXdW"
, m = "community_cards--cardBottomRowAvatarDropdown--2uCLR"
, _ = "community_cards--cardBottomRow_Metadata_AvatarContainer--6-CIe"
, h = "community_cards--cardBottomRow_Metadata_TextContainer--ewZLG"
, g = "community_cards--cardBottomRow_Metadata_PrimaryText--tktO3 text--fontPos13--xW8hS text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, f = "community_cards--base_cardBottomRow_Metadata_SecondaryText---Tn2M text--fontPos11--2LvXf text--_fontBase--QdLsd"
, E = "community_cards--cardBottomRow_Metadata_AuthorName_WithDropdown--Fk7tl"
, y = "community_cards--cardBottomRow_ResourceActionContainer--hgEhI"
, b = "community_cards--cardBottomRow_ResourceActionButton--v146M"
, v = "community_cards--cardHover_Center--hzP7R community_cards--_cardHover--BGAKM base_community_cards--base_cardHover--5h7Ip"
, I = "community_cards--cardHover_Cover--kIVQS community_cards--_cardHover--BGAKM base_community_cards--base_cardHover--5h7Ip"
, T = "community_cards--cardHover_BottomLeft--XlAgk community_cards--_cardHover--BGAKM base_community_cards--base_cardHover--5h7Ip"
, S = "community_cards--cardHover_BottomRight--5So4- community_cards--_cardHover--BGAKM base_community_cards--base_cardHover--5h7Ip"
, w = "community_cards--publisherDropdown--m7Bx2"
, A = "community_cards--publisherDropdownContent_Row--iIBB3"
, C = "community_cards--publisherDropdownContent_Row_Text--7hDpO text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, N = "community_cards--creatorPreviewDummySpace_Name--fb75z"
, O = "community_cards--creatorPreviewDummySpace_Avatar--LLBj8"
, L = "community_cards--figjamTileMeta--Sh90c"
, R = "community_cards--figjamTextMetadataCaret--bqK8s"
, P = "community_cards--figjamMetadataContainer--4kXQt"
, k = "community_cards--defaultCursor--K5TUO"
, D = "community_cards--figjamTextMetadataContainer--LBupv"
, M = "community_cards--figjamTextMetadataContainerFull--VPsvv"
, F = "community_cards--figjamTextMetadataLockIcon--yazii"
, x = "community_cards--figjamTextMetadataErrorContainer--XDHyT"
, U = "community_cards--figjamTextMetadataName--wP7vv text--fontPos12--YsUAh text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, B = "community_cards--subtextDetails--2-EUq"
, V = "community_cards--subtextPublishers--BR4-w ellipsis--ellipsis--Tjyfa"
}
,
152462: (e,t,n)=>{
"use strict";
n.d(t, {
Vi: ()=>r,
hh: ()=>i,
jx: ()=>d,
nu: ()=>s,
tt: ()=>a,
uD: ()=>l,
uw: ()=>o
});
let r = "cta_button--duplicateButtonContainer--GU-rX cta_button--buttonBase--xMT0c text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L"
, i = "cta_button--figjam--ZRMcS"
, a = "cta_button--duplicateButtonContainerNoIcon--t9Vxs cta_button--duplicateButtonContainer--GU-rX cta_button--buttonBase--xMT0c text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L"
, o = "cta_button--duplicateButtonContainerNoIconWide--KYJ2x"
, l = "cta_button--textIconContainer--wV-ch"
, s = "cta_button--duplicateButtonContainerNoIconDisabled--IPh2F cta_button--duplicateButtonContainerDisabled--IzZn7 cta_button--duplicateButtonContainer--GU-rX cta_button--buttonBase--xMT0c text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L"
, d = "cta_button--ctaButtonLink--5C3KX"
}
,
183846: (e,t,n)=>{
"use strict";
n.d(t, {
BE: ()=>i,
LL: ()=>l,
Un: ()=>a,
Xk: ()=>o,
_1: ()=>s,
iZ: ()=>d,
uu: ()=>r
});
let r = "detail_view--installButton--IloIX"
, i = "detail_view--installButtonSubtext--iqsQz text--fontPos11--2LvXf text--_fontBase--QdLsd"
, a = "detail_view--slidesDisabledSubtext--hHKPc detail_view--installButtonSubtext--iqsQz text--fontPos11--2LvXf text--_fontBase--QdLsd"
, o = "detail_view--pendingInviteBanner--Jfy7s text--fontPos13--xW8hS text--_fontBase--QdLsd"
, l = "detail_view--pendingInviteButton--XYgKx"
, s = "detail_view--paidResourceSection--crSbo detail_view--metadataSectionText--jEK-6 metadata_section--metadataSectionText--7ruPx text--fontPos13--xW8hS text--_fontBase--QdLsd"
, d = "detail_view--reportSection--qDu-P detail_view--metadataSectionText--jEK-6 metadata_section--metadataSectionText--7ruPx text--fontPos13--xW8hS text--_fontBase--QdLsd"
}
,
227565: (e,t,n)=>{
"use strict";
n.d(t, {
$z: ()=>h,
BA: ()=>_,
GC: ()=>p,
Ij: ()=>g,
Js: ()=>E,
KE: ()=>o,
Lm: ()=>a,
PJ: ()=>u,
Rt: ()=>N,
SL: ()=>v,
Tm: ()=>w,
Uz: ()=>b,
Vg: ()=>s,
Yk: ()=>f,
ZF: ()=>I,
aq: ()=>d,
bx: ()=>y,
g4: ()=>r,
g8: ()=>i,
i3: ()=>A,
jG: ()=>m,
nf: ()=>T,
q5: ()=>S,
qc: ()=>C,
qr: ()=>c,
vu: ()=>l
});
let r = "universal_posting_modal--loadingContainer--5giX-"
, i = "universal_posting_modal--modalClose--eqgHH"
, a = "universal_posting_modal--toolBarContainer--9HhzX"
, o = "universal_posting_modal--toolbar--hWp2O"
, l = "universal_posting_modal--playgroundtoolbar--62laP"
, s = "universal_posting_modal--grid--Jdvpe"
, d = "universal_posting_modal--previewModal--XtKWL universal_posting_modal--modalBase--HkH3v"
, c = "universal_posting_modal--footer--A-QeR"
, u = "universal_posting_modal--footerText--Pp0H1 universal_posting_modal--_userSelectNone--dHUZk"
, p = "universal_posting_modal--buttonGroup--C-atN"
, m = "universal_posting_modal--scrollContainer--YtNZ-"
, _ = "universal_posting_modal--developmentPluginsListContainer--NCC-b"
, h = "universal_posting_modal--pluginContainer--y5Lud universal_posting_modal--_pluginContainerBase--jcMw7"
, g = "universal_posting_modal--pluginContainerSelected--1Een3 universal_posting_modal--_pluginContainerBase--jcMw7"
, f = "universal_posting_modal--workspaceBarContainer--VHcn1"
, E = "universal_posting_modal--workspaceInfoContainer--l3mjM text--fontPos13--xW8hS text--_fontBase--QdLsd"
, y = "universal_posting_modal--desktopMessageContainer--QXif3 text--fontPos16--oMC-G text--_fontBase--QdLsd"
, b = "universal_posting_modal--desktopMessageTitle--3XDQ-"
, v = "universal_posting_modal--desktopMessageSubTitle--UGHlr"
, I = "universal_posting_modal--searchQuery--07ulH"
, T = "universal_posting_modal--link--h1jPd"
, S = "universal_posting_modal--pluginInfo--Kx70e text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, w = "universal_posting_modal--universalPostingSearchContainer--BFSZI"
, A = "universal_posting_modal--xIcon--9icra"
, C = "universal_posting_modal--searchIcon--r7rXz search--searchIconBrowseIA--WYUGA search--searchIcon--0Agiv"
, N = "universal_posting_modal--searchInput--fTx57 search--communityLandingSearchInput--Mtiu3 search--searchInput__OLD--m2Hef text--fontPos13--xW8hS text--_fontBase--QdLsd text--fontPos14--OL9Hp text--_fontBase--QdLsd"
}
,
764643: (e,t,n)=>{
"use strict";
n.r(t),
n.d(t, {
_thumbnailBase: ()=>g,
buttons: ()=>l,
contextMenu: ()=>v,
fieldContainer: ()=>a,
fieldContainerFaded: ()=>o,
gridContainer: ()=>m,
label: ()=>r,
learnMore: ()=>i,
listContainer: ()=>p,
listItemContainer: ()=>_,
listItemRemoveButton: ()=>h,
offlineIcon: ()=>R,
outerContainer: ()=>s,
outerContainerBorderBottom: ()=>d,
publishCTA: ()=>w,
scrollContainer_grid: ()=>u,
scrollContainer_list: ()=>c,
skeletonText: ()=>L,
skeletonThumbnailGrid: ()=>O,
skeletonThumbnailList: ()=>N,
thumbnailGrid: ()=>E,
thumbnailGridBase: ()=>f,
thumbnailList: ()=>b,
thumbnailListBase: ()=>y,
tryAgain: ()=>P,
trying: ()=>k,
warning: ()=>I,
warningIcon: ()=>A,
warningIconList: ()=>C,
warningOfflineContainer: ()=>T,
warningPublish: ()=>S
});
let r = "preferred_values_instance_picker--label--to5M3"
, i = "preferred_values_instance_picker--learnMore--zD-c7"
, a = "preferred_values_instance_picker--fieldContainer--JJx3j"
, o = "preferred_values_instance_picker--fieldContainerFaded--Z8-Oj preferred_values_instance_picker--fieldContainer--JJx3j"
, l = "preferred_values_instance_picker--buttons---ohnK"
, s = "preferred_values_instance_picker--outerContainer---jRbV"
, d = "preferred_values_instance_picker--outerContainerBorderBottom--eh6jg preferred_values_instance_picker--outerContainer---jRbV"
, c = "preferred_values_instance_picker--scrollContainer_list--kaH92"
, u = "preferred_values_instance_picker--scrollContainer_grid--8kvKL"
, p = "preferred_values_instance_picker--listContainer--BPie-"
, m = "preferred_values_instance_picker--gridContainer--2LTF6"
, _ = "preferred_values_instance_picker--listItemContainer--a4t-g"
, h = "preferred_values_instance_picker--listItemRemoveButton--HO05L"
, g = "preferred_values_instance_picker--_thumbnailBase--eAxDp"
, f = "preferred_values_instance_picker--thumbnailGridBase--O9Rrc preferred_values_instance_picker--_thumbnailBase--eAxDp"
, E = "preferred_values_instance_picker--thumbnailGrid--XHfz- preferred_values_instance_picker--thumbnailGridBase--O9Rrc preferred_values_instance_picker--_thumbnailBase--eAxDp drilldown_item--_thumbnailContainer--kDsBt"
, y = "preferred_values_instance_picker--thumbnailListBase--KpYBM preferred_values_instance_picker--_thumbnailBase--eAxDp"
, b = "preferred_values_instance_picker--thumbnailList--nGJE1 drilldown_item--_thumbnailContainer--kDsBt preferred_values_instance_picker--thumbnailListBase--KpYBM preferred_values_instance_picker--_thumbnailBase--eAxDp"
, v = "preferred_values_instance_picker--contextMenu--qSN6X"
, I = "preferred_values_instance_picker--warning--bgA-c"
, T = "preferred_values_instance_picker--warningOfflineContainer--9BcdC"
, S = "preferred_values_instance_picker--warningPublish--fB8Mq preferred_values_instance_picker--warning--bgA-c"
, w = "preferred_values_instance_picker--publishCTA--FlNCB"
, A = "preferred_values_instance_picker--warningIcon--2TXXz"
, C = "preferred_values_instance_picker--warningIconList--aDgpb preferred_values_instance_picker--warningIcon--2TXXz"
, N = "preferred_values_instance_picker--skeletonThumbnailList--sAAp7 preferred_values_instance_picker--thumbnailListBase--KpYBM preferred_values_instance_picker--_thumbnailBase--eAxDp"
, O = "preferred_values_instance_picker--skeletonThumbnailGrid--UVfqq preferred_values_instance_picker--thumbnailGridBase--O9Rrc preferred_values_instance_picker--_thumbnailBase--eAxDp"
, L = "preferred_values_instance_picker--skeletonText--YCONM"
, R = "preferred_values_instance_picker--offlineIcon--4JDDc"
, P = "preferred_values_instance_picker--tryAgain--UNg1i"
, k = "preferred_values_instance_picker--trying--HmoFd"
}
,
730797: (e,t,n)=>{
"use strict";
n.d(t, {
K8: ()=>m,
LC: ()=>r,
Me: ()=>a,
Q_: ()=>l,
RH: ()=>o,
UD: ()=>u,
V_: ()=>s,
YM: ()=>i,
t$: ()=>d,
uZ: ()=>p,
x6: ()=>c
});
let r = "prop_pill--pillEnabled--yqtJT prop_pill--basePill--Nx5ci pill--pill--yeLll"
, i = "prop_pill--instanceSwapPill--MvGRm"
, a = "prop_pill--componentPropName--k2AM9"
, o = "prop_pill--pillSelected--ZlxUy"
, l = "prop_pill--pillDisabled--MFJRj prop_pill--basePill--Nx5ci pill--pill--yeLll"
, s = "prop_pill--pillContainer--7rI2Q"
, d = "prop_pill--componentPropRow--yTifC"
, c = "prop_pill--button--0oOIV"
, u = "prop_pill--buttonContainer--myLjn"
, p = "prop_pill--ui3ComponentPropRowInstanceSwap--hYD19"
, m = "prop_pill--ui3VariableTypeIconContainer--EqMaw"
}
,
427018: (e,t,n)=>{
"use strict";
n.d(t, {
$G: ()=>r,
$z: ()=>i,
BH: ()=>a,
GD: ()=>p,
MJ: ()=>u,
O6: ()=>o,
Ve: ()=>_,
Yo: ()=>s,
a4: ()=>d,
bD: ()=>c,
nd: ()=>h,
qx: ()=>l,
s9: ()=>g,
ym: ()=>m
});
let r = "-144px"
, i = "desktop_new_tab_view--newTabView--xPTS3"
, a = "desktop_new_tab_view--topSection--YiYaE"
, o = "desktop_new_tab_view--topSectionContent--CzXg6"
, l = "desktop_new_tab_view--topSectionContentWithSlides--KqkAl"
, s = "desktop_new_tab_view--topSectionWithDropdown--i82fQ"
, d = "desktop_new_tab_view--folderDropdown--NyFdh"
, c = "desktop_new_tab_view--folderDropdownPlaceholder--bosVZ"
, u = "desktop_new_tab_view--folderHeader--72sHl"
, p = "desktop_new_tab_view--primaryText--YjgdS"
, m = "desktop_new_tab_view--topSectionDivider--hQ6La"
, _ = "desktop_new_tab_view--fileCardsSection--d7yQC"
, h = "desktop_new_tab_view--bottomSection--aWNBL"
, g = "desktop_new_tab_view--hideNewTab--0jOy2"
}
,
714236: (e,t,n)=>{
"use strict";
n.d(t, {
M: ()=>s,
Mv: ()=>m,
NY: ()=>g,
TN: ()=>a,
az: ()=>c,
bL: ()=>h,
dL: ()=>_,
hQ: ()=>o,
k3: ()=>u,
kL: ()=>r,
lt: ()=>l,
m9: ()=>d,
rx: ()=>i,
sI: ()=>p,
ts: ()=>f
});
let r = "file_browser_page_view--container--wgWQp"
, i = "file_browser_page_view--tabletOptimizedContainer--rxoPd file_browser_page_view--container--wgWQp"
, a = "file_browser_page_view--scrollableContainerClass--TCxy-"
, o = "file_browser_page_view--contentContainer--lirCR"
, l = "file_browser_page_view--metaContainer--Cz3PC"
, s = "file_browser_page_view--tabletOptimizedMetaContainer--l-KYt file_browser_page_view--metaContainer--Cz3PC"
, d = "file_browser_page_view--mobileToolBarSpacer--yNIQP"
, c = "file_browser_page_view--hideOnMobile--P06ka"
, u = "file_browser_page_view--newGenericFileButton--SibCM basic_form--primaryBtnGeneric--qianb basic_form--btn--FSrmp ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd"
, p = "file_browser_page_view--newFilePlusIcon--XTojv"
, m = "file_browser_page_view--viewBarWrapper--lzAB1"
, _ = "file_browser_page_view--headerWrapper--QTnvE"
, h = "file_browser_page_view--footerWrapper--J4DbG"
, g = "file_browser_page_view--disabledButton--tdlm2"
, f = "file_browser_page_view--disabledButtonSvg--jFh1m"
}
,
14134: (e,t,n)=>{
"use strict";
n.d(t, {
RS: ()=>l,
Ys: ()=>s,
_U: ()=>a,
is: ()=>d,
p$: ()=>i,
rP: ()=>r,
yd: ()=>o
});
let r = "team_tile--teamIcon--vtfgY"
, i = "team_tile--emptyState--9kn67 tiles_view--emptyState--lR8Xc text--fontPos11--2LvXf text--_fontBase--QdLsd"
, a = "team_tile--emptyTitle--wz7tU tiles_view--emptyTitle--Ir5LP"
, o = "team_tile--emptyButton--eSEvu tiles_view--emptyButton--3MMre"
, l = "team_tile--newTeamIcon--BXh0F tiles_view--newFileIcon--1n9v-"
, s = "team_tile--joinSpinner--imJ7Z"
, d = "team_tile--favoriteStarContainer---OsRP button_styles--button--Ix6rT"
}
,
396754: (e,t,n)=>{
"use strict";
n.d(t, {
Ac: ()=>F,
Bo: ()=>R,
E0: ()=>T,
EU: ()=>b,
F: ()=>ee,
F0: ()=>Z,
Fb: ()=>d,
Gn: ()=>k,
HX: ()=>O,
HY: ()=>f,
Hl: ()=>w,
Ie: ()=>s,
Jr: ()=>l,
Ks: ()=>_,
LC: ()=>M,
N6: ()=>i,
Nd: ()=>a,
PT: ()=>L,
P_: ()=>C,
Pr: ()=>q,
Ps: ()=>V,
QB: ()=>y,
S: ()=>et,
Su: ()=>h,
TV: ()=>D,
W: ()=>I,
Wu: ()=>x,
Yw: ()=>U,
ZD: ()=>H,
Zy: ()=>J,
ab: ()=>E,
aq: ()=>G,
b0: ()=>c,
dX: ()=>Y,
db: ()=>N,
eA: ()=>$,
fK: ()=>Q,
h7: ()=>B,
hy: ()=>K,
iY: ()=>ei,
im: ()=>r,
kv: ()=>S,
ni: ()=>v,
of: ()=>W,
p7: ()=>m,
pV: ()=>g,
q9: ()=>j,
qS: ()=>er,
re: ()=>p,
sD: ()=>u,
sH: ()=>en,
uD: ()=>A,
uz: ()=>o,
vK: ()=>P,
vg: ()=>z,
x: ()=>X
});
let r = "team_upgrade_v2--teamUpgrade--emch2"
, i = "team_upgrade_v2--breadCrumbsMenuContainer--KtEmN"
, a = "team_upgrade_v2--cancelMenuItem--bjGcr"
, o = "team_upgrade_v2--checkoutStepContainer--Vmcfq"
, l = "team_upgrade_v2--checkoutPageContent--j-2g3"
, s = "team_upgrade_v2--checkoutSidebarContainer---1wVl"
, d = "team_upgrade_v2--stepTitle--8iV70"
, c = "team_upgrade_v2--stepSubtitle--RKsis"
, u = "team_upgrade_v2--adjustEditorsBody--LEJYR"
, p = "team_upgrade_v2--adjustEditorsSection--FFme1"
, m = "team_upgrade_v2--teamWithAvatarHandle--3w-x2"
, _ = "team_upgrade_v2--adjustEditorsRow--cSROb"
, h = "team_upgrade_v2--adjustEditorsRowStart--l-tLI team_upgrade_v2--adjustEditorsRow--cSROb"
, g = "team_upgrade_v2--greyDivider--mHQ7e"
, f = "team_upgrade_v2--columnTitle--Z8-gj"
, E = "team_upgrade_v2--editorColumn--L87RK"
, y = "team_upgrade_v2--editorInfo--YQZ1H"
, b = "team_upgrade_v2--normalGreyText--JAc48"
, v = "team_upgrade_v2--truncateEditorColumnText--vM7sa"
, I = "team_upgrade_v2--editorEmail--Wn-b5 team_upgrade_v2--normalGreyText--JAc48 team_upgrade_v2--truncateEditorColumnText--vM7sa"
, T = "team_upgrade_v2--checkboxColumn--hhJ1s"
, S = "team_upgrade_v2--checkbox---aBF3"
, w = "team_upgrade_v2--plusSvg--GLi67"
, A = "team_upgrade_v2--textLink--ZxoEU"
, C = "team_upgrade_v2--paymentStripeContainer--6-Ttk"
, N = "team_upgrade_v2--reviewStepBody--W-yYD"
, O = "team_upgrade_v2--reviewStepBodyWithBusinessDetails--IUuAd"
, L = "team_upgrade_v2--reviewStepBusinessDetails--DXfwr"
, R = "team_upgrade_v2--reviewStepSummary--7rgPo"
, P = "team_upgrade_v2--banner--zZD-Q"
, k = "team_upgrade_v2--reviewStepCheckbox--lu1Yk"
, D = "team_upgrade_v2--reviewStepUpgradeTitle--0OQIl"
, M = "team_upgrade_v2--sidebarTitle--h0CCa"
, F = "team_upgrade_v2--sidebarOption--axo8r"
, x = "team_upgrade_v2--sidebarOptionLabel--DCism"
, U = "team_upgrade_v2--sidebarOptionLabelWithAnnualSavings--3TFBs"
, B = "team_upgrade_v2--sidebarCurrencyContainer--xqYZz"
, V = "team_upgrade_v2--teamName--zecVG"
, H = "team_upgrade_v2--billingCycleHeader--64mbk"
, G = "team_upgrade_v2--radioRow--7q8jH"
, W = "team_upgrade_v2--strikethrough--5aHSA"
, K = "team_upgrade_v2--greyStrikethrough--v6928 team_upgrade_v2--strikethrough--5aHSA"
, z = "team_upgrade_v2--editorCostRow--avzd-"
, j = "team_upgrade_v2--calculationRow--AUGmm"
, Y = "team_upgrade_v2--planComparison--b-Jrh"
, $ = "team_upgrade_v2--createTeamButton--pmLjn"
, Z = "team_upgrade_v2--createTeamNameInput--E-cTS"
, q = "team_upgrade_v2--createTeamIcon--OlWEH"
, J = "team_upgrade_v2--createTeamTextInput--Drx5a"
, X = "team_upgrade_v2--createTeamUpgradeExisting--Tde8n"
, Q = "team_upgrade_v2--cartButton--a9UAE"
, ee = "team_upgrade_v2--centered--ExzVe"
, et = "team_upgrade_v2--loadingSpinner---zNsR publish_modal--spinner--7DaqW"
, en = "team_upgrade_v2--numeric--AdnQb"
, er = "team_upgrade_v2--badge--glbGY"
, ei = "team_upgrade_v2--infoSection--nkK4j"
}
,
248480: (e,t,n)=>{
"use strict";
n.d(t, {
Af: ()=>I,
FS: ()=>g,
GD: ()=>_,
G_: ()=>d,
In: ()=>h,
J$: ()=>m,
MP: ()=>b,
SG: ()=>a,
Te: ()=>f,
Yg: ()=>y,
_C: ()=>l,
_o: ()=>c,
bQ: ()=>T,
c6: ()=>p,
cI: ()=>i,
gb: ()=>o,
hI: ()=>s,
jw: ()=>E,
kL: ()=>r,
ny: ()=>v,
u1: ()=>S,
us: ()=>w,
vk: ()=>u,
yp: ()=>A
});
let r = "footer_banner--container--HxFNE"
, i = "footer_banner--bannerContainer--uRlsy"
, a = "footer_banner--mobileBannerContainer--u6y9d"
, o = "footer_banner--iconButton--XmgF1"
, l = "footer_banner--googleBanner--ic9N1 footer_banner--banner--i9JNi"
, s = "footer_banner--mobileBanner--qguYw footer_banner--banner--i9JNi"
, d = "footer_banner--wordWrapper--w2SGa"
, c = "footer_banner--buttonWrapper--H2Stl"
, u = "footer_banner--clickable--99aMM"
, p = "footer_banner--figmaIcon--sGo3W footer_banner--clickable--99aMM"
, m = "footer_banner--timerIcon--9khH9"
, _ = "footer_banner--primaryText--UWvyo"
, h = "footer_banner--mobilePrimaryText--AHCZ9"
, g = "footer_banner--textContainer--T1Z8U"
, f = "footer_banner--mobileTextContainer--MUP8u"
, E = "footer_banner--primaryTextPlaceholder--NbLik"
, y = "footer_banner--secondaryText--6-Mgk"
, b = "footer_banner--mobileSecondaryText--RNxnV"
, v = "footer_banner--mobileSignUpButton--dFlxi"
, I = "footer_banner--mobileSignUpButtonContent--9xsVM"
, T = "footer_banner--fullWidthButtonWrapper--dTHM2"
, S = "footer_banner--spinner--xrqKX"
, w = "footer_banner--spinnerBlade--oJ-MF"
, A = "footer_banner--bannerButtonGroup--DOBU0"
}
,
420711: (e,t,n)=>{
"use strict";
n.d(t, {
B8: ()=>c,
BN: ()=>s,
Hi: ()=>a,
Qg: ()=>r,
_K: ()=>o,
kL: ()=>i,
rH: ()=>u,
u$: ()=>l,
uu: ()=>d
});
let r = "fullscreen_accessibility_tree--visuallyHidden---8P2O"
, i = "fullscreen_accessibility_tree--container--rXuNd"
, a = "fullscreen_accessibility_tree--debugModeNode--aGne7"
, o = "fullscreen_accessibility_tree--debugModeNodeTransition--PP1HR"
, l = "fullscreen_accessibility_tree--debugModeNodeRender1--sOwjz fullscreen_accessibility_tree--debugModeNode--aGne7"
, s = "fullscreen_accessibility_tree--debugModeNodeRender2--d5GgH fullscreen_accessibility_tree--debugModeNode--aGne7"
, d = "fullscreen_accessibility_tree--debugModeNodeRender3--ferOf fullscreen_accessibility_tree--debugModeNode--aGne7"
, c = "fullscreen_accessibility_tree--debugModeNodeRender4--fiCWb fullscreen_accessibility_tree--debugModeNode--aGne7"
, u = "fullscreen_accessibility_tree--node--WGNTu"
}
,
724258: (e,t,n)=>{
"use strict";
n.d(t, {
$_: ()=>m,
K2: ()=>i,
Kt: ()=>d,
LE: ()=>o,
NV: ()=>s,
O$: ()=>l,
Qq: ()=>p,
UQ: ()=>_,
cv: ()=>c,
l8: ()=>a,
v6: ()=>u,
zc: ()=>r
});
let r = "action_option--iconContainer--LFlTl action_option--_iconContainerBase--FtOiz"
, i = "action_option--largeIconContainer--T0anG action_option--_iconContainerBase--FtOiz"
, a = "action_option--checkMarkContainer--hq6Bt action_option--iconContainer--LFlTl action_option--_iconContainerBase--FtOiz"
, o = "action_option--shortcut--w0R75"
, l = "action_option--largeShortcut--4uECE action_option--shortcut--w0R75"
, s = "action_option--optionContainer--ru4UN"
, d = "action_option--optionContainerLimitWidth--aaElZ"
, c = "action_option--largeOptionContainer--qZzaL"
, u = "action_option--largeOptionContainerWrapper--AePOP"
, p = "action_option--text--fSMIm"
, m = "action_option--largeText--d3Px5 action_option--text--fSMIm"
, _ = "action_option--largeDescription--1RlSt"
}
,
849369: (e,t,n)=>{
"use strict";
n.d(t, {
$S: ()=>I,
AD: ()=>l,
Ad: ()=>f,
Cc: ()=>y,
G2: ()=>T,
H0: ()=>p,
I: ()=>_,
IV: ()=>F,
KX: ()=>o,
MI: ()=>m,
Ny: ()=>D,
OW: ()=>s,
P4: ()=>M,
Qr: ()=>h,
TH: ()=>g,
TI: ()=>B,
X7: ()=>r,
ZG: ()=>v,
_D: ()=>P,
ag: ()=>A,
aq: ()=>U,
b$: ()=>L,
dg: ()=>N,
f1: ()=>b,
h$: ()=>H,
iL: ()=>E,
if: ()=>R,
jn: ()=>G,
k$: ()=>x,
kb: ()=>S,
pG: ()=>C,
pz: ()=>a,
r8: ()=>k,
rH: ()=>d,
rz: ()=>V,
tJ: ()=>u,
uc: ()=>c,
w5: ()=>w,
y6: ()=>O,
yF: ()=>i
});
let r = "chunk_diff_details--chunkDiffDetails--jy2yz text--fontPos11--2LvXf text--_fontBase--QdLsd"
, i = "chunk_diff_details--divider--2Mr-q"
, a = "chunk_diff_details--layersList--e9S0c"
, o = "chunk_diff_details--mainTitle--vdyvJ text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, l = "chunk_diff_details--disclosure--vEErG"
, s = "chunk_diff_details--caret--u2yzQ"
, d = "chunk_diff_details--node--c80fZ"
, c = "chunk_diff_details--nodeLego--I9McS"
, u = "chunk_diff_details--nodeNames--KWP3B"
, p = "chunk_diff_details--scrollableSection--D4PjI"
, m = "chunk_diff_details--scrollableLayers--hBhdL"
, _ = "chunk_diff_details--layersWrapper--kf9DV"
, h = "chunk_diff_details--selectedNode--r8k42"
, g = "chunk_diff_details--nodeTitle--hzugs"
, f = "chunk_diff_details--nodeTitleLego--32B5s"
, E = "chunk_diff_details--nodeTitleRowLego--ajdsT chunk_diff_details--nodeTitleLego--32B5s"
, y = "chunk_diff_details--nodeIcon--ui-4E"
, b = "chunk_diff_details--nodeIconLego--6JkAh"
, v = "chunk_diff_details--leftRightContainer--b0GkS"
, I = "chunk_diff_details--fullWidthContainer--omBg2"
, T = "chunk_diff_details--leftRightContainerLeft--XQxsR"
, S = "chunk_diff_details--left--aF7sL"
, w = "chunk_diff_details--fieldName--3vTK7"
, A = "chunk_diff_details--fieldValue--3wOgr"
, C = "chunk_diff_details--right--Wx1G8"
, N = "chunk_diff_details--changedElement---NaHQ"
, O = "chunk_diff_details--layerColumn--yUJ5S"
, L = "chunk_diff_details--layerColumnHeader--Pyum0"
, R = "chunk_diff_details--layerColumnHeaderBold--hYrEv"
, P = "chunk_diff_details--detailsColumnTreatments--S7L50"
, k = "chunk_diff_details--changedLabel--jqma6 chunk_diff_details--label---p6Jd"
, D = "chunk_diff_details--addedLabel--gLd-C chunk_diff_details--label---p6Jd"
, M = "chunk_diff_details--removedLabel--h5i2C chunk_diff_details--label---p6Jd"
, F = "chunk_diff_details--skipMargin--CW5U-"
, x = "chunk_diff_details--propertyRow--XbRK9"
, U = "chunk_diff_details--propertyElement--NIJBh"
, B = "chunk_diff_details--changesInset--DVnsf"
, V = "chunk_diff_details--fieldNameLego--OdYt4"
, H = "chunk_diff_details--truncTextPadRight--E-Ke0"
, G = "chunk_diff_details--copyableChanges--1LoXJ"
}
,
963380: (e,t,n)=>{
"use strict";
n.d(t, {
Kn: ()=>l,
P3: ()=>u,
VO: ()=>o,
Xu: ()=>d,
hr: ()=>s,
i3: ()=>p,
ig: ()=>i,
kG: ()=>c,
q_: ()=>a,
vi: ()=>r
});
let r = "attachment--thumbnailButton--CfAkK"
, i = "attachment--selectedThumbnailButton--x2RnD attachment--thumbnailButton--CfAkK"
, a = "attachment--thumbnailImage--Jx4fa"
, o = "attachment--lightOverlay--F8qzZ attachment--overlay--dIw1C"
, l = "attachment--publishedThumbnailContainer--oFj0f"
, s = "attachment--pendingThumbnailContainer--iL-xu"
, d = "attachment--darkOverlay--l3K9x attachment--overlay--dIw1C"
, c = "attachment--composerContainer--mP7Kx"
, u = "attachment--deleteBadge--9aSjm"
, p = "attachment--xIcon--hhlua"
}
,
757207: (e,t,n)=>{
"use strict";
n.d(t, {
$S: ()=>s,
Du: ()=>T,
F7: ()=>a,
GI: ()=>y,
In: ()=>I,
KK: ()=>N,
Lo: ()=>_,
MJ: ()=>h,
OM: ()=>m,
Qq: ()=>w,
SD: ()=>R,
UR: ()=>o,
VM: ()=>l,
WJ: ()=>O,
WO: ()=>S,
YD: ()=>A,
aW: ()=>L,
eX: ()=>i,
ex: ()=>C,
g2: ()=>b,
k8: ()=>g,
lo: ()=>f,
wC: ()=>u,
wG: ()=>d,
wb: ()=>c,
xH: ()=>E,
xS: ()=>r,
xe: ()=>p,
zl: ()=>v
});
let r = "thread_comment--threadHeaderLeft--gppoV thread_comment--_threadHeader--59aR8"
, i = "thread_comment--threadHeaderRight--1gMsu thread_comment--_threadHeader--59aR8"
, a = "thread_comment--threadHeaderContainer--0TaTS"
, o = "thread_comment--threadHeaderButton--psBeY"
, l = "thread_comment--threadHeaderButtonInactive--LhTNi"
, s = "thread_comment--addReactionButton--n1Dj5"
, d = "thread_comment--loader--GUeJt"
, c = "thread_comment--threadContainer--oH8Ia"
, u = "thread_comment--threadContainerCommunityDetailsPage--W6Cmv thread_comment--threadContainer--oH8Ia"
, p = "thread_comment--threadContainerAnimated--OT8HU thread_comment--threadContainer--oH8Ia"
, m = "thread_comment--threadContainerInner--Bzqm7"
, _ = "thread_comment--threadElement--4grcZ thread_comment--_threadElement--PYPeg text--fontPos11--2LvXf text--_fontBase--QdLsd text--fontPos13--xW8hS text--_fontBase--QdLsd"
, h = "thread_comment--threadElementReplyContainer--6vz0m thread_comment--threadElement--4grcZ thread_comment--_threadElement--PYPeg text--fontPos11--2LvXf text--_fontBase--QdLsd text--fontPos13--xW8hS text--_fontBase--QdLsd"
, g = "thread_comment--threadSubelementNoMargin--aGW6z"
, f = "thread_comment--indentedQuickReplyThreadSubelement--PR9a5 thread_comment--threadSubelementNoMargin--aGW6z"
, E = "thread_comment--quickReplyThreadSubelementNoMargin--MD3aF thread_comment--threadSubelementNoMargin--aGW6z"
, y = "thread_comment--indentedThreadSubelement--gs1fI thread_comment--threadSubelement--7-le3 thread_comment--threadSubelementNoMargin--aGW6z"
, b = "thread_comment--rightJustified--lK8hG"
, v = "thread_comment--leftJustified--HHuN0"
, I = "thread_comment--quickReplyThreadElement--cZUZj thread_comment--_threadElement--PYPeg text--fontPos11--2LvXf text--_fontBase--QdLsd text--fontPos11--2LvXf text--_fontBase--QdLsd"
, T = "thread_comment--authorAvatar--xOCLt"
, S = "thread_comment--authorHandle--fmYkb thread_comment--headerLabel--Oq7ar"
, w = "thread_comment--text--FHTSU"
, A = "thread_comment--grayLabel--6ZZkD thread_comment--headerLabel--Oq7ar"
, C = "thread_comment--iconButtonSpace--VkGFf"
, N = "thread_comment--attachmentsContainer--lOeTy"
, O = "thread_comment--reactionsContainer--n2YcQ"
, L = "thread_comment--resolvedIcon--YSM3V"
, R = "thread_comment--loadingAvatar--82RED comment_cluster_elements--loadingSpinner--6derj"
}
,
386362: (e,t,n)=>{
"use strict";
n.d(t, {
Gm: ()=>g,
MP: ()=>m,
OX: ()=>l,
Sg: ()=>a,
U0: ()=>i,
bQ: ()=>h,
fP: ()=>r,
i8: ()=>_,
iQ: ()=>c,
mr: ()=>o,
o1: ()=>f,
oD: ()=>d,
q9: ()=>p,
uX: ()=>u,
xu: ()=>s
});
let r = "thread_comment_composer--inputSectionWrapper--Bxyab"
, i = "thread_comment_composer--newComment--eYLj7"
, a = "thread_comment_composer--composerEmpty--VgMY7"
, o = "thread_comment_composer--highlighted--GPAOe"
, l = "thread_comment_composer--editableTypeahead--9R6Yd text--fontPos13--xW8hS text--_fontBase--QdLsd"
, s = "thread_comment_composer--leftComposerButtonGroup--6jQ3I"
, d = "thread_comment_composer--submitUpArrowIcon--e8uT9"
, c = "thread_comment_composer--submitUpArrowIconDisabled--iPBY3 thread_comment_composer--submitUpArrowIcon--e8uT9"
, u = "thread_comment_composer--textButton--GUo5c"
, p = "thread_comment_composer--editSubmitButtons--GyqGL"
, m = "thread_comment_composer--replyComposerContainer---8DSl"
, _ = "thread_comment_composer--replyAuthorElement--qze1r"
, h = "thread_comment_composer--errorFallback--G5K6y text--fontPos13--xW8hS text--_fontBase--QdLsd thread_comment_composer--inputSectionWrapper--Bxyab"
, g = "thread_comment_composer--errorFallbackNewComment--xlyNp thread_comment_composer--errorFallback--G5K6y text--fontPos13--xW8hS text--_fontBase--QdLsd thread_comment_composer--inputSectionWrapper--Bxyab thread_comment_composer--newComment--eYLj7"
, f = "thread_comment_composer--actions--7LRnN"
}
,
799088: (e,t,n)=>{
"use strict";
n.d(t, {
Lq: ()=>l,
N2: ()=>a,
Ph: ()=>h,
R3: ()=>r,
b: ()=>g,
bI: ()=>p,
el: ()=>o,
gZ: ()=>m,
hF: ()=>s,
h_: ()=>i,
kO: ()=>_,
qr: ()=>c,
wV: ()=>u,
wx: ()=>d
});
let r = "figma_basics_tooltip--tooltipContainer--y5pAG pointer_modal--walkThroughModal--6eTVS pointer_modal--pointerModal--wrpFz"
, i = "figma_basics_tooltip--description--2Km4-"
, a = "figma_basics_tooltip--tooltipContainerForToolbar--PhD77"
, o = "figma_basics_tooltip--tooltipContainerForDesignPanel--UI7Mt"
, l = "figma_basics_tooltip--tooltipContainerForLeftPanel--pBrWU"
, s = "figma_basics_tooltip--tooltipContainer__noTarget--kQ-Rm"
, d = "figma_basics_tooltip--header--1MabN text--fontPos13--xW8hS text--_fontBase--QdLsd"
, c = "figma_basics_tooltip--footer--4iPlu"
, u = "figma_basics_tooltip--lowerLeftText--6fDVr text--fontPos11--2LvXf text--_fontBase--QdLsd"
, p = "figma_basics_tooltip--bottomRightContainer--zvs9g"
, m = "figma_basics_tooltip--loadingBar--RRCLi"
, _ = "figma_basics_tooltip--filledLoadingSection--hztYR"
, h = "figma_basics_tooltip--borderRightRadius--OD3B7"
, g = "figma_basics_tooltip--closeButton--TYRdE"
}
,
633410: (e,t,n)=>{
"use strict";
n.d(t, {
$J: ()=>o,
FC: ()=>r,
MY: ()=>l,
PA: ()=>u,
Wc: ()=>i,
_q: ()=>d,
nP: ()=>a,
sx: ()=>s,
yL: ()=>c
});
let r = "fullscreen_view--fullscreenHtml--NMpxO"
, i = "fullscreen_view--fullscreenBody--w5jxN"
, a = "fullscreen_view--flexContainer--RlX3H"
, o = "fullscreen_view--containerExtensionOverride--JB0U9"
, l = "fullscreen_view--page--uZukb"
, s = "fullscreen_view--fontsIcon--sGgPE"
, d = "fullscreen_view--filebar--IUEDt"
, c = "fullscreen_view--rightNav--YJm34"
, u = "fullscreen_view--additionalRightNav--0sr7T"
}
,
630171: (e,t,n)=>{
"use strict";
n.d(t, {
$0: ()=>T,
$8: ()=>k,
CP: ()=>h,
DF: ()=>b,
GE: ()=>B,
Hb: ()=>i,
Ik: ()=>N,
K9: ()=>M,
KJ: ()=>y,
Kk: ()=>E,
Lg: ()=>v,
Lq: ()=>m,
ND: ()=>d,
NT: ()=>C,
Q9: ()=>V,
Sl: ()=>I,
ZJ: ()=>R,
Zl: ()=>P,
_H: ()=>c,
aW: ()=>w,
b6: ()=>u,
bV: ()=>f,
dp: ()=>x,
f: ()=>o,
gO: ()=>F,
ik: ()=>r,
m7: ()=>_,
m_: ()=>L,
mq: ()=>S,
p1: ()=>g,
pu: ()=>A,
sh: ()=>D,
t4: ()=>U,
tH: ()=>O,
uU: ()=>a,
vF: ()=>p,
wx: ()=>s,
xZ: ()=>l
});
let r = "compare_changes_modal--modalContainerLarge---iAsD"
, i = "compare_changes_modal--modalInnerContainer--TQZcV"
, a = "compare_changes_modal--compareChangesContainer--81M8-"
, o = "compare_changes_modal--compareChangesContainerLarge--qGkOy"
, l = "compare_changes_modal--containerWithSidePanel--uvMV9"
, s = "compare_changes_modal--header--Y0WnE text--fontPos11--2LvXf text--_fontBase--QdLsd"
, d = "compare_changes_modal--compareChangesInner--873zA"
, c = "compare_changes_modal--leftPanel--1Kn-R"
, u = "compare_changes_modal--history--HO13m"
, p = "compare_changes_modal--compareChanges--r2iMv"
, m = "compare_changes_modal--loading--9Gj-T"
, _ = "compare_changes_modal--versionSubheader--IYdmY"
, h = "compare_changes_modal--imagesContainer--g7KiK"
, g = "compare_changes_modal--imagesContainerSideBySide--Xhrzv compare_changes_modal--imagesContainer--g7KiK"
, f = "compare_changes_modal--imagesContainerSideBySideFullHeight--uk2gl compare_changes_modal--imagesContainerSideBySide--Xhrzv compare_changes_modal--imagesContainer--g7KiK"
, E = "compare_changes_modal--imagesContainerFullHeight--R9vqh compare_changes_modal--imagesContainer--g7KiK"
, y = "compare_changes_modal--imageBoxSideBySide--6Ixmv compare_changes_modal--imageBox---7rqx"
, b = "compare_changes_modal--imageBoxOverlay--m11a8 compare_changes_modal--imageBox---7rqx"
, v = "compare_changes_modal--imageHeader--hifS9 text--fontPos11--2LvXf text--_fontBase--QdLsd"
, I = "compare_changes_modal--image--ikCOw"
, T = "compare_changes_modal--noImage--MWmW0"
, S = "compare_changes_modal--imageBoxDivider--PeKgh"
, w = "compare_changes_modal--changeDetailsContainer--DxPGO"
, A = "compare_changes_modal--changeDetails--Zba3y text--fontPos11--2LvXf text--_fontBase--QdLsd"
, C = "compare_changes_modal--changeDetailsStatus--d0YuM text--fontPos11--2LvXf text--_fontBase--QdLsd"
, N = "compare_changes_modal--fullHeightContainer--TrbSu"
, O = "compare_changes_modal--comparableControls--D403G"
, L = "compare_changes_modal--subheader--rEZjG"
, R = "compare_changes_modal--subheaderSection--0Ma9N"
, P = "compare_changes_modal--historyTitle--eRow5"
, k = "compare_changes_modal--debugUploadFileButton--a-7YM"
, D = "compare_changes_modal--versionName--bA2k4"
, M = "compare_changes_modal--subheaderTitle--hQs3R"
, F = "compare_changes_modal--ellipsis--7w991 ellipsis--ellipsis--Tjyfa"
, x = "compare_changes_modal--versionLabel--9xe00"
, U = "compare_changes_modal--subheaderDivider--NNzCi"
, B = "compare_changes_modal--loadingImage--eCKqt"
, V = "compare_changes_modal--modalError--j-tLH text--fontPos11--2LvXf text--_fontBase--QdLsd"
}
,
613122: (e,t,n)=>{
"use strict";
n.d(t, {
Bz: ()=>U,
C$: ()=>i,
CI: ()=>V,
CJ: ()=>o,
C_: ()=>h,
FU: ()=>x,
GM: ()=>l,
J8: ()=>S,
JA: ()=>p,
Ku: ()=>r,
Mf: ()=>a,
NZ: ()=>m,
Nk: ()=>_,
PG: ()=>v,
Q3: ()=>C,
QL: ()=>P,
SR: ()=>B,
T7: ()=>N,
Ug: ()=>u,
Uo: ()=>R,
Ve: ()=>O,
Y0: ()=>f,
Yk: ()=>g,
b3: ()=>A,
cw: ()=>D,
fi: ()=>I,
gK: ()=>d,
hM: ()=>c,
iV: ()=>y,
k3: ()=>w,
mH: ()=>k,
pG: ()=>T,
pi: ()=>F,
qH: ()=>M,
u$: ()=>L,
xQ: ()=>b,
xd: ()=>E,
yR: ()=>s
});
let r = "keyboard_shortcut_panel--keyboardShortcutPanel--M0Z-f"
, i = "keyboard_shortcut_panel--nav--rmt2R"
, a = "keyboard_shortcut_panel--tab--9t5Mb"
, o = "keyboard_shortcut_panel--thinnerTab--lUwLL"
, l = "keyboard_shortcut_panel--spacerTab--yNO02"
, s = "keyboard_shortcut_panel--tabActive--xPG7y keyboard_shortcut_panel--tab--9t5Mb"
, d = "keyboard_shortcut_panel--tabLeftOfActive--aapeI keyboard_shortcut_panel--tab--9t5Mb"
, c = "keyboard_shortcut_panel--tabRightOfActive--pA4GA keyboard_shortcut_panel--tab--9t5Mb"
, u = "keyboard_shortcut_panel--tabActiveCompletedFirstTime--qYX3O keyboard_shortcut_panel--tabActive--xPG7y keyboard_shortcut_panel--tab--9t5Mb"
, p = "keyboard_shortcut_panel--navWithFirstTabActive--KBbpA keyboard_shortcut_panel--nav--rmt2R"
, m = "keyboard_shortcut_panel--navWithLastTabActive--ptUFB keyboard_shortcut_panel--nav--rmt2R"
, _ = "keyboard_shortcut_panel--closeX--QSyPA"
, h = "keyboard_shortcut_panel--replayAnimation--ZpPzH"
, g = "keyboard_shortcut_panel--replayAnimationActive--entZF keyboard_shortcut_panel--replayAnimation--ZpPzH"
, f = "keyboard_shortcut_panel--tabContents--UBIdJ"
, E = "keyboard_shortcut_panel--tabContentsCompleted--YcQRt keyboard_shortcut_panel--tabContents--UBIdJ"
, y = "keyboard_shortcut_panel--tabContentsCompletedFirstTime--5s31O keyboard_shortcut_panel--tabContents--UBIdJ"
, b = "keyboard_shortcut_panel--categoryCaption--7m7qR"
, v = "keyboard_shortcut_panel--contents--8ae0D"
, I = "keyboard_shortcut_panel--column--lHvov"
, T = "keyboard_shortcut_panel--caption--a6WBZ"
, S = "keyboard_shortcut_panel--shortcutRow--6AogW"
, w = "keyboard_shortcut_panel--shortcutRowUsed--COYQU keyboard_shortcut_panel--shortcutRow--6AogW"
, A = "keyboard_shortcut_panel--shortcutRowPressed--eQ-Vp keyboard_shortcut_panel--shortcutRow--6AogW"
, C = "keyboard_shortcut_panel--shortcutRowPressedFirstTime--DZrX7 keyboard_shortcut_panel--shortcutRow--6AogW"
, N = "keyboard_shortcut_panel--shortcutRowCompletedTab--F1jL4 keyboard_shortcut_panel--shortcutRowUsed--COYQU keyboard_shortcut_panel--shortcutRow--6AogW"
, O = "keyboard_shortcut_panel--shortcutRowCompletedAllTabs--J5zY3 keyboard_shortcut_panel--shortcutRowUsed--COYQU keyboard_shortcut_panel--shortcutRow--6AogW"
, L = "keyboard_shortcut_panel--shortcutRowHeld--XwsHX keyboard_shortcut_panel--shortcutRowUsed--COYQU keyboard_shortcut_panel--shortcutRow--6AogW"
, R = "keyboard_shortcut_panel--and---b-w4"
, P = "keyboard_shortcut_panel--shortcutName--Q5dhd"
, k = "keyboard_shortcut_panel--shortcutIconCanvas---wufa"
, D = "keyboard_shortcut_panel--shortcutIcon--zS4rz"
, M = "keyboard_shortcut_panel--keyBindings--8LxQV"
, F = "keyboard_shortcut_panel--keyBinding--wvHKI"
, x = "keyboard_shortcut_panel--singleCharKeyBox--DD6s1 keyboard_shortcut_panel--shortcutBox--9Ltqp"
, U = "keyboard_shortcut_panel--contentsSpacedOut--Jp-4I keyboard_shortcut_panel--contents--8ae0D"
, B = "keyboard_shortcut_panel--multiCharKeyBox--LZwGA keyboard_shortcut_panel--shortcutBox--9Ltqp"
, V = "keyboard_shortcut_panel--usage--qzeP9"
}
,
659265: (e,t,n)=>{
"use strict";
n.d(t, {
AD: ()=>s,
Bm: ()=>a,
Gr: ()=>m,
HR: ()=>h,
Ki: ()=>c,
Md: ()=>r,
OW: ()=>d,
QT: ()=>u,
QX: ()=>p,
Rm: ()=>i,
UU: ()=>o,
iE: ()=>l,
y$: ()=>_
});
let r = "component_sidebar_asset_tile--fileName--J2dQ0 ellipsis--ellipsis--Tjyfa"
, i = "component_sidebar_asset_tile--secondary--nsKER"
, a = "component_sidebar_asset_tile--nameWrapper--rAA6d"
, o = "component_sidebar_asset_tile--name--3gVvZ ellipsis--ellipsis--Tjyfa"
, l = "component_sidebar_asset_tile--wrapper--5fJmf component_sidebar_asset_tile--_wrapperBase--7olel"
, s = "component_sidebar_asset_tile--listWrapper--WJAUr component_sidebar_asset_tile--_wrapperBase--7olel"
, d = "component_sidebar_asset_tile--caret---LMDc component_sidebar_asset_tile--_caretBase--eIh4G"
, c = "component_sidebar_asset_tile--listCaret--cs9bq component_sidebar_asset_tile--_caretBase--eIh4G"
, u = "component_sidebar_asset_tile--focusableElementWrapper---mXHu"
, p = "component_sidebar_asset_tile--tileWrapper--GTsPX"
, m = "component_sidebar_asset_tile--shownInFlyout--Vku5Q"
, _ = "component_sidebar_asset_tile--hoverableElementWrapper--5cPDu"
, h = "component_sidebar_asset_tile--selectedFlyoutFocus--W6bG1"
}
,
246497: (e,t,n)=>{
"use strict";
n.d(t, {
CL: ()=>a,
CR: ()=>s,
KB: ()=>o,
eb: ()=>r,
gd: ()=>l,
lN: ()=>d,
pJ: ()=>i
});
let r = "cursor_bot--smoothScroll--8NqWp"
, i = "cursor_bot--cursorBotContainer--u2vDL"
, a = "cursor_bot--progressIslandContainer--tuyOW"
, o = "cursor_bot--progressIslandWrapper--Y6p21 cursor_bot--progressIslandBase--R1s-s"
, l = "cursor_bot--playbackButton--fHpmO"
, s = "cursor_bot--fullscreenEventBlocker--jPF73"
, d = "cursor_bot--highFiveCursor--MWm2R"
}
,
780634: (e,t,n)=>{
"use strict";
n.d(t, {
Do: ()=>p,
Du: ()=>h,
El: ()=>E,
JO: ()=>v,
Jx: ()=>b,
Lp: ()=>S,
Mc: ()=>g,
ON: ()=>o,
RW: ()=>m,
Rq: ()=>s,
Vr: ()=>_,
Vs: ()=>f,
Y: ()=>a,
YZ: ()=>d,
ZF: ()=>w,
h3: ()=>y,
hu: ()=>u,
jG: ()=>c,
kL: ()=>r,
qc: ()=>l,
qp: ()=>I,
se: ()=>i,
xn: ()=>T
});
let r = "post_to_feed_view--container--BiDZs"
, i = "post_to_feed_view--noContentContainer--VE8Tm post_to_feed_view--container--BiDZs text--fontPos16--oMC-G text--_fontBase--QdLsd"
, a = "post_to_feed_view--searchFilterContainer--lyX72"
, o = "post_to_feed_view--searchBar--IwmvI"
, l = "post_to_feed_view--searchIcon---WXsZ"
, s = "post_to_feed_view--caretIcon--akCZQ"
, d = "post_to_feed_view--pageMenuDropdown--bS4RV"
, c = "post_to_feed_view--scrollContainer--syalR"
, u = "post_to_feed_view--innerScrollContainer--aP8K2"
, p = "post_to_feed_view--loadingSpinnerContainer--E8n20"
, m = "post_to_feed_view--pageSection--85j7J"
, _ = "post_to_feed_view--pageHeader--ZOfTF"
, h = "post_to_feed_view--pageHeaderFaint--p-zwO"
, g = "post_to_feed_view--tilesGrid--Ft03l"
, f = "post_to_feed_view--tile--9a4ta"
, E = "post_to_feed_view--selectedTile--D6T9A post_to_feed_view--tile--9a4ta"
, y = "post_to_feed_view--tileThumbnail--FkrR9"
, b = "post_to_feed_view--tileOverlay--iyl2x"
, v = "post_to_feed_view--tileDetails--FZrxQ"
, I = "post_to_feed_view--nodeName--jbJro"
, T = "post_to_feed_view--thumbnail--uAumv"
, S = "post_to_feed_view--notFoundContainer--5cMl3 text--fontPos16--oMC-G text--_fontBase--QdLsd"
, w = "post_to_feed_view--searchQuery--TIyhI"
}
,
688553: (e,t,n)=>{
"use strict";
n.d(t, {
Nz: ()=>s,
X3: ()=>r,
e3: ()=>l,
f$: ()=>i,
lo: ()=>o,
x7: ()=>a
});
let r = "chit--chitThumbnail--KxCGp"
, i = "chit--chitAlpha--Mn-aK"
, a = "chit--chit--WdWdx"
, o = "chit--chitBorder--ydYLm"
, l = "chit--chitShowFocus--M0ub5 chit--chit--WdWdx"
, s = "/** @postcss-export-raw */\n\n.chit--chitThumbnail--KxCGp {\n width: 16px;\n height: 16px;\n}\n\n.chit--chitAlpha--Mn-aK {\n right: 0;\n top: 0;\n width: 50%;\n height: 100%;\n position: absolute;\n border-top-right-radius: 1px;\n border-bottom-right-radius: 1px;\n\n background: url('data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A');\n}\n\n.chit--chit--WdWdx {\n border-radius: 1px;\n\n overflow: hidden;\n position: relative;\n flex-shrink: 0;\n height: 16px;\n width: 16px;\n}\n\n[data-fpl-version='ui3'] .chit--chit--WdWdx {\n border-radius: var(--radius-small);\n }\n\n.chit--chitBorder--ydYLm {\n position: absolute;\n\n /* Our goal is to draw a 0.5px \"hairline\" border around these chits. However, Chrome\n doesn't support sub-pixel borders and Safari doesn't support sub-pixel box-shadows,\n so we use this hack where we draw a 1px box at twice the size and then scale it down. */\n top: -50%;\n left: -50%;\n right: -50%;\n bottom: -50%;\n box-shadow: inset 0 0 0 1px var(--color-border, rgba(0, 0, 0, 0.1));\n transform-origin: center center;\n transform: scale(0.5);\n}\n\n[data-fpl-version='ui3'] .chit--chitBorder--ydYLm {\n /* Border radius is a percentage instead of an actual value since we render chits\n at various sizes (see: gridVariableChit), this ensures its always the right radius no matter the size */\n border-radius: 20%;\n }\n\n/* The above fix looks good everywhere except in FireFox on low-density displays. In that\n case, we just throw our hands in the air and render a 1px border around the chit. */\n\n@media screen and (-webkit-max-device-pixel-ratio: 1.5), screen and (max-resolution: 1.5dppx) {\n @supports (-moz-appearance: none) {\n .chit--chitBorder--ydYLm {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n box-shadow: inset 0 0 0 1px var(--color-border, rgba(0, 0, 0, 0.1));\n transform: none;\n }\n }\n}\n\n.chit--chitShowFocus--M0ub5:focus::after {\n content: '';\n position: absolute;\n\n /* Render a border using a shadow on top of the content in .chit */\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n box-shadow: inset 0 0 0 1px var(--color-border-selected, #0d99ff);\n transform: scale(1);\n }\n"
}
,
747213: (e,t,n)=>{
"use strict";
n.d(t, {
AP: ()=>l,
CB: ()=>o,
Cq: ()=>p,
EX: ()=>d,
Ee: ()=>a,
Mx: ()=>m,
Sd: ()=>s,
XL: ()=>r,
Zh: ()=>c,
_v: ()=>_,
eN: ()=>g,
eR: ()=>h,
nf: ()=>i,
zF: ()=>u
});
let r = "code_inspection_panels--stylePreviewCodeScrollContainer--BgxmE"
, i = "code_inspection_panels--swatch--k-GyP"
, a = "code_inspection_panels--inspectorRow--VL6Ua"
, o = "code_inspection_panels--inspectionGroup--xesmI"
, l = "code_inspection_panels--formattingControls--D3Bma"
, s = "code_inspection_panels--platformSelect--Cq3OJ"
, d = "code_inspection_panels--paintInspector--F0bwe"
, c = "code_inspection_panels--generatedCode--AibGI"
, u = "code_inspection_panels--codePanelContainer--IXb8m"
, p = "code_inspection_panels--codePanelTitle---3WbH inspect_panels--panelTitle--HvsFh text--fontPos11--2LvXf text--_fontBase--QdLsd"
, m = "code_inspection_panels--instancePanel--53DAN"
, _ = "code_inspection_panels--instancePanelTitle--s-rGx"
, h = "code_inspection_panels--findSymbolLink--a-bxC blue_link--blueLink--9rlnd"
, g = "code_inspection_panels--findSymbolLinkDisabled--cNFY5 code_inspection_panels--findSymbolLink--a-bxC blue_link--blueLink--9rlnd"
}
,
813813: (e,t,n)=>{
"use strict";
n.d(t, {
A9: ()=>E,
Bz: ()=>S,
Dn: ()=>p,
F7: ()=>r,
G1: ()=>P,
G3: ()=>w,
HH: ()=>i,
Hz: ()=>G,
JY: ()=>a,
M3: ()=>B,
Nw: ()=>L,
Pq: ()=>N,
Rp: ()=>b,
S4: ()=>s,
T0: ()=>f,
T7: ()=>W,
TH: ()=>k,
Tq: ()=>u,
VC: ()=>U,
Vd: ()=>V,
W0: ()=>F,
Wm: ()=>d,
Xx: ()=>h,
YK: ()=>c,
Yz: ()=>o,
Zg: ()=>H,
_: ()=>m,
cL: ()=>g,
dC: ()=>T,
fF: ()=>y,
gO: ()=>O,
ij: ()=>K,
jP: ()=>M,
jg: ()=>C,
k$: ()=>v,
mD: ()=>l,
mW: ()=>R,
rG: ()=>A,
sk: ()=>D,
sv: ()=>x,
vd: ()=>z,
yr: ()=>_,
zy: ()=>I
});
let r = "inspect_panels--inspectionPanel--q5999"
, i = "inspect_panels--inspectionPanelContents--OccDN"
, a = "inspect_panels--inspectionPanelNoPadding--akqko"
, o = "inspect_panels--inspectionPanelNoBottomPadding--d8in-"
, l = "inspect_panels--inspectionPanelNoBorder--HOZxu"
, s = "inspect_panels--titlelessInspectionPanel--TIW5Q inspect_panels--inspectionPanel--q5999"
, d = "inspect_panels--extraTopPaddingForUI2--soQIw"
, c = "inspect_panels--tabularInspectionPanel--1wNYr inspect_panels--inspectionPanel--q5999"
, u = "inspect_panels--titlelessTabularInspectionPanel---4s5O inspect_panels--tabularInspectionPanel--1wNYr inspect_panels--inspectionPanel--q5999"
, p = "inspect_panels--panelTitle--HvsFh text--fontPos11--2LvXf text--_fontBase--QdLsd"
, m = "inspect_panels--snug--xm-O-"
, _ = "inspect_panels--panelTitleText--eXEMf ellipsis--ellipsis--Tjyfa"
, h = "inspect_panels--panelTitleTextThin--jHgrZ"
, g = "inspect_panels--copyButton--9DNH2 blue_link--blueLink--9rlnd"
, f = "inspect_panels--contentProperty--ozLiU text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsisAfter8Lines--WZFi8 ellipsis--_ellipsisAfterNLines--LzI7k"
, E = "inspect_panels--copyableRow--0JP9W inspect_panels--highlightRow--fEWtj ellipsis--ellipsis--Tjyfa"
, y = "inspect_panels--onCopyHover--08D17"
, b = "inspect_panels--onCopyActive--qImqP"
, v = "inspect_panels--propertyRow--07fx- inspect_panels--basePropertyRow--dLxSz inspect_panels--_basePropertyRow--StmAE"
, I = "inspect_panels--propertyRowWithDiff--Zjo16 inspect_panels--basePropertyRow--dLxSz inspect_panels--_basePropertyRow--StmAE"
, T = "inspect_panels--propertyRowContent--mNEn1 inspect_panels--copyableRow--0JP9W inspect_panels--highlightRow--fEWtj ellipsis--ellipsis--Tjyfa"
, S = "inspect_panels--propertyName--eb8y- text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, w = "inspect_panels--propertyNameMultiLine--8FMNI inspect_panels--propertyName--eb8y- text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, A = "inspect_panels--propertyNameWrap--WWvz8 inspect_panels--propertyName--eb8y- text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, C = "inspect_panels--propertyNameSpacer--Xv--k"
, N = "inspect_panels--propertyRowContainer--VOOlz"
, O = "inspect_panels--variablePill--6IgJW"
, L = "inspect_panels--propertyValue--HurfX ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd"
, R = "inspect_panels--propertyValueMultiline--5-Hdm inspect_panels--propertyValue--HurfX ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd"
, P = "inspect_panels--propertyValueDefault--0lbAP ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd"
, k = "inspect_panels--propertyValueNode--two4Y blue_link--blueLink--9rlnd"
, D = "inspect_panels--typographyPanel--oBH2a"
, M = "inspect_panels--showMore--SGwsc text--fontPos11--2LvXf text--_fontBase--QdLsd inspect_panels--copyableRow--0JP9W inspect_panels--highlightRow--fEWtj ellipsis--ellipsis--Tjyfa"
, F = "inspect_panels--panelCopyActionControls--F4fTa"
, x = "inspect_panels--headerSelectionWithBorder--GHm7O inspect_selection_header--headerSelection--05a4w"
, U = "inspect_panels--warningRow--VfsuZ text--fontPos11--2LvXf text--_fontBase--QdLsd"
, B = "inspect_panels--multipleVariableWrapper--kRjbR"
, V = "inspect_panels--vertical--vjb5-"
, H = "inspect_panels--change--DNiIB"
, G = "inspect_panels--basis--h66st"
, W = "inspect_panels--dash--kh3M8"
, K = "inspect_panels--ellipsisWithWrap--8oqTj"
, z = "inspect_panels--propertyDiffLine--Nm1re"
}
,
82131: (e,t,n)=>{
"use strict";
n.d(t, {
DV: ()=>m,
Dn: ()=>u,
FL: ()=>E,
KQ: ()=>h,
LO: ()=>i,
MC: ()=>b,
N4: ()=>p,
Om: ()=>f,
PD: ()=>o,
VM: ()=>v,
Y7: ()=>_,
cL: ()=>c,
ed: ()=>a,
gn: ()=>l,
lN: ()=>g,
lS: ()=>d,
l_: ()=>I,
lo: ()=>s,
v9: ()=>r,
yr: ()=>y
});
let r = "collapsible_property_panel--showOnTitleHover--yqPoD"
, i = "collapsible_property_panel--panelTitleRow--AV-Sv collapsible_property_panel--_hoverTarget--eRHji"
, a = "collapsible_property_panel--panelTitleRowOuter--i5K0R"
, o = "collapsible_property_panel--emptyPanelTitleRowOuter---pBf9 collapsible_property_panel--panelTitleRowOuter--i5K0R"
, l = "collapsible_property_panel--ui3Row--9nUnV collapsible_property_panel--_hoverTarget--eRHji"
, s = "collapsible_property_panel--ui3RowSelected--FZgmc"
, d = "collapsible_property_panel--ui3RowButtons--xHUX3"
, c = "collapsible_property_panel--styleTitle--a7BMw"
, u = "collapsible_property_panel--panelTitle--4vpTS raw_components--panelTitle--VAQQA"
, p = "collapsible_property_panel--titleButton--7yILK"
, m = "collapsible_property_panel--fadeOutOnTitleUnhover--15rtL"
, _ = "collapsible_property_panel--panelTitleRowInGrid--Kq3wh collapsible_property_panel--panelTitleRow--AV-Sv collapsible_property_panel--_hoverTarget--eRHji"
, h = "collapsible_property_panel--panelTitleRowInGridWithButton--8yQlq"
, g = "collapsible_property_panel--panelEmptyTitleRowInGrid--TlCXf collapsible_property_panel--panelEmptyTitleRow--vDg0z collapsible_property_panel--panelTitleRow--AV-Sv collapsible_property_panel--_hoverTarget--eRHji"
, f = "collapsible_property_panel--panelStyleTitle--R1Tqo collapsible_property_panel--panelTitle--4vpTS raw_components--panelTitle--VAQQA"
, E = "collapsible_property_panel--panelMixedMessage--UuCKj"
, y = "collapsible_property_panel--panelTitleText--vFGYT"
, b = "collapsible_property_panel--titleButtons--k6Lxk"
, v = "collapsible_property_panel--dropdownOption--cy1JZ"
, I = "collapsible_property_panel--updateIcon--0YXMO"
}
,
334495: (e,t,n)=>{
"use strict";
n.d(t, {
Lt: ()=>s,
Qz: ()=>a,
Wv: ()=>r,
be: ()=>d,
d_: ()=>p,
f0: ()=>u,
hF: ()=>c,
hL: ()=>_,
in: ()=>i,
kL: ()=>o,
lb: ()=>m,
t_: ()=>l
});
let r = "combo_box--selectInputExpanded--SgrsN select--selectInputExpanded--Lz6m4"
, i = "combo_box--focused--vZXh1 select--selectInputFocused--c-NQ7"
, a = "combo_box--containerDisabled--bNA2c combo_box--_container--uIFGE raw_components--singleRowHeight--dKM4t"
, o = "combo_box--container--Vml-n combo_box--_container--uIFGE raw_components--singleRowHeight--dKM4t select--comboBoxShowChevronOnHover--rVuud"
, l = "combo_box--selectDisabled--yJxRy combo_box--_select--T75K- select--comboBoxSelectDisabled--EWdld select--_comboBoxSelect--zpLTH"
, s = "combo_box--select--JMl-q select--comboBoxSelect--T-iQ- select--_comboBoxSelect--zpLTH combo_box--_select--T75K- select--comboBoxSelectDisabled--EWdld select--_comboBoxSelect--zpLTH"
, d = "combo_box--selectInput--fikB4 raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t"
, c = "combo_box--input--CW6xE raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t"
, u = "combo_box--scrubbableControl--t9lCI raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t combo_box--_scrubbableControlBase--jZV-D"
, p = "combo_box--withSvg--BjUJI"
, m = "combo_box--_scrubbableControlBase--jZV-D"
, _ = "combo_box--noBorderOnFocus--7Ago-"
}
,
371875: (e,t,n)=>{
"use strict";
n.d(t, {
D9: ()=>l,
Dn: ()=>o,
TQ: ()=>a,
UD: ()=>i,
Vo: ()=>r,
dC: ()=>s
});
let r = "containing_assets_panel--componentIcon--K0Y2t"
, i = "containing_assets_panel--buttonContainer--xwH3S"
, a = "containing_assets_panel--componentName--Lwkmx"
, o = "containing_assets_panel--panelTitle--18hNI"
, l = "containing_assets_panel--componentNameRow--INBzF"
, s = "containing_assets_panel--selectComponentIcon--Uh7sV"
}
,
641160: (e,t,n)=>{
"use strict";
n.d(t, {
$L: ()=>N,
A7: ()=>k,
By: ()=>E,
FY: ()=>w,
I1: ()=>V,
IU: ()=>z,
KE: ()=>s,
Lp: ()=>_,
Mf: ()=>I,
OI: ()=>d,
Pd: ()=>A,
Ph: ()=>o,
R: ()=>h,
T0: ()=>U,
Yg: ()=>R,
Zp: ()=>B,
aj: ()=>G,
dn: ()=>y,
eh: ()=>f,
ek: ()=>i,
eu: ()=>m,
ew: ()=>l,
gF: ()=>O,
gq: ()=>u,
gv: ()=>L,
hv: ()=>v,
iV: ()=>S,
j6: ()=>H,
jG: ()=>p,
kb: ()=>P,
lf: ()=>g,
mp: ()=>r,
qq: ()=>W,
rq: ()=>C,
s5: ()=>F,
tM: ()=>c,
tq: ()=>D,
ux: ()=>a,
wR: ()=>M,
yR: ()=>T,
yW: ()=>b,
yc: ()=>x,
zU: ()=>K
});
let r = "properties_panel--focusManager--iZVd8"
, i = "properties_panel--hideOnFocus--ZF9Cv"
, a = "properties_panel--panelPosition--oppQ8"
, o = "properties_panel--withInsetEditorEnabled--ahDM-"
, l = "properties_panel--insetForRulers--rk7or"
, s = "properties_panel--panelContainer--cKjqh"
, d = "properties_panel--shareButton--QK9z-"
, c = "properties_panel--panelContainerCollapsedWithBackground--9UCfA"
, u = "properties_panel--scrollOuterContainer--rxp11"
, p = "properties_panel--scrollContainer--o2LxW"
, m = "properties_panel--panelContainerLoading--wdXCI"
, _ = "properties_panel--drillDownContainer--VaNDa"
, h = "properties_panel--hidden--JXxwt"
, g = "properties_panel--externalStyleLink--NJGQN"
, f = "properties_panel--propertiesPanel--BQ7Lw"
, E = "properties_panel--propertiesPanelNoTabs--xP4a6"
, y = "properties_panel--propertiesPanelCollapsed--XjWdJ"
, b = "properties_panel--tabsHeader--b5J9f pages_panel--tabsHeader--ez-pH"
, v = "properties_panel--tabsHeaderBordered--UTQmW properties_panel--tabsHeader--b5J9f pages_panel--tabsHeader--ez-pH"
, I = "properties_panel--tab--G8lIz pages_panel--tab--Uge5B"
, T = "properties_panel--tabActive--s04ep pages_panel--tabActive--BitzC pages_panel--tab--Uge5B"
, S = "properties_panel--tabActiveSingle--wUXVu properties_panel--tabActive--s04ep pages_panel--tabActive--BitzC pages_panel--tab--Uge5B"
, w = "properties_panel--stylePreviewContainer--KAG5V"
, A = "properties_panel--prototypePanel--BXFg-"
, C = "properties_panel--ui3ToolbarPanel--jj-VE"
, N = "properties_panel--ui3ToolbarForPanelHeader--1QBL6"
, O = "properties_panel--ui3SelectionActionsContainer---7oX-"
, L = "properties_panel--dropdownInput--EOia1"
, R = "properties_panel--panelHeaderControls--oFMeq"
, P = "properties_panel--left--1pgjP"
, k = "properties_panel--fullHeightSidebarTabsHeader--PHP85"
, D = "properties_panel--fullHeightSidebarTabs--WP5tu pages_panel--tabsHeader--ez-pH"
, M = "properties_panel--zoomMenuContainer--GW3DS"
, F = "properties_panel--instanceDropdownOverrides--8wA5k"
, x = "properties_panel--bumpSelectChevronToLeft--7Xcx3"
, U = "properties_panel--ui3FrameLayerHeaderSelect--eG1lv"
, B = "properties_panel--ui3ToolbarItemsMixedText--77Auf"
, V = "properties_panel--ui3UnfocusedRenameComponentInputOverrides--ZCc0j"
, H = "properties_panel--ui3FocusedRenameComponentInputOverrides--GYahZ"
, G = "properties_panel--ui3NodeTypeDisplay--1I8ks ellipsis--ellipsis--Tjyfa"
, W = "properties_panel--ui3HiddenOnboardingTarget--dNILG"
, K = "properties_panel--dialogTriggerButton--7xDVp"
, z = "properties_panel--instanceNeedsUpdatesIcon--NLnYQ"
}
,
50275: (e,t,n)=>{
"use strict";
n.d(t, {
AE: ()=>b,
D9: ()=>u,
Fs: ()=>S,
Hr: ()=>E,
KF: ()=>a,
MB: ()=>y,
MT: ()=>i,
NQ: ()=>_,
Nj: ()=>A,
Oe: ()=>r,
Rb: ()=>N,
Rt: ()=>o,
Rv: ()=>l,
TX: ()=>I,
WR: ()=>p,
ZS: ()=>T,
Zh: ()=>w,
_P: ()=>s,
_i: ()=>m,
a7: ()=>d,
g6: ()=>g,
pC: ()=>h,
qA: ()=>C,
qf: ()=>c,
tY: ()=>O,
vF: ()=>v,
zc: ()=>f
});
let r = "prototype_expression_builder--bottomBorder---GcEs"
, i = "prototype_expression_builder--searchContainer--Pgq5x"
, a = "prototype_expression_builder--searchInputContainer--jpUKl"
, o = "prototype_expression_builder--searchInput--tyCwO"
, l = "prototype_expression_builder--expressionError--iJ11P"
, s = "prototype_expression_builder--builderParagraph--yNofj"
, d = "prototype_expression_builder--placeholderPreview--YUDwq"
, c = "prototype_expression_builder--placeholder--2aqlR"
, u = "prototype_expression_builder--expressionBuilderContainer--HG8Mc"
, p = "prototype_expression_builder--expressionBuilderContainerNarrow--1Gz4J prototype_expression_builder--expressionBuilderContainer--HG8Mc"
, m = "prototype_expression_builder--expressionBuilderContainerUI3--UAteY prototype_expression_builder--expressionBuilderContainer--HG8Mc"
, _ = "prototype_expression_builder--expressionBuilderContainerCell--Ta5-9 prototype_expression_builder--expressionBuilderContainer--HG8Mc"
, h = "prototype_expression_builder--expressionBuilderUI3--ei0jU"
, g = "prototype_expression_builder--expressionBuilderUI3LHS--rfcBR"
, f = "prototype_expression_builder--iconContainer--c-MAD"
, E = "prototype_expression_builder--operator---sIkC"
, y = "prototype_expression_builder--operatorUnary--vNe8G"
, b = "prototype_expression_builder--operatorUnaryRightParenthesis--4JEAv"
, v = "prototype_expression_builder--operatorUI3LeftCol--a755K"
, I = "prototype_expression_builder--libraryPickerContainer--HTzR2"
, T = "prototype_expression_builder--createVariableButton--FrYXp raw_components--iconButtonEnabled--WmVk5 raw_components--_iconButton---ybo6"
, S = "prototype_expression_builder--createVariableDropdownOption--Q6Pvi"
, w = "prototype_expression_builder--expressionModalWrapper--aIPUl"
, A = "prototype_expression_builder--aiButton--WYT0D raw_components--iconButtonEnabled--WmVk5 raw_components--_iconButton---ybo6"
, C = "prototype_expression_builder--aiButtonEnabled--y-QIT raw_components--iconButtonSelected--bJibL raw_components--_iconButton---ybo6"
, N = "prototype_expression_builder--aiPluginContainer--aV7td prototype_expression_builder--bottomBorder---GcEs"
, O = "prototype_expression_builder--expressionPreviewClickContainerUI3--pZb7d"
}
,
333483: (e,t,n)=>{
"use strict";
n.d(t, {
Ah: ()=>f,
CZ: ()=>N,
DS: ()=>x,
Dn: ()=>O,
EA: ()=>d,
LE: ()=>w,
LJ: ()=>c,
Li: ()=>y,
No: ()=>g,
O1: ()=>m,
PB: ()=>b,
PQ: ()=>r,
Pf: ()=>o,
Tz: ()=>F,
U: ()=>h,
X0: ()=>S,
Z4: ()=>p,
Zz: ()=>C,
_Z: ()=>s,
a2: ()=>v,
aW: ()=>I,
ai: ()=>_,
bW: ()=>R,
co: ()=>k,
ht: ()=>A,
iY: ()=>P,
kR: ()=>i,
l$: ()=>T,
n1: ()=>D,
pc: ()=>u,
pq: ()=>a,
sI: ()=>L,
vR: ()=>E,
wh: ()=>l,
zU: ()=>M
});
let r = "raw_components--border--SKh2u"
, i = "raw_components--rowSelectedSecondary---U7Us raw_components--rowSelected--M2Eip"
, a = "raw_components--iconButtonEnabled--WmVk5 raw_components--_iconButton---ybo6"
, o = "raw_components--label--4LcC7 raw_components--base--T7G0z"
, l = "raw_components--labelInactive--tm1fU raw_components--label--4LcC7 raw_components--base--T7G0z"
, s = "raw_components--textInput--t9D8g raw_components--base--T7G0z raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t"
, d = "raw_components--textInputSoftDisabled--M5O7I"
, c = "raw_components--noPlaceholderLine--KBoD7"
, u = "raw_components--textAreaInput--mi1Ag raw_components--base--T7G0z raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t"
, p = "raw_components--noLeftBorder--QE-ZB"
, m = "raw_components--squareRightBorder--ktojw"
, _ = "raw_components--chevron--nJiSt"
, h = "raw_components--wide--F33jp"
, g = "raw_components--transparentIconButtonEnabled--l2bm3 raw_components--iconButtonEnabled--WmVk5 raw_components--_iconButton---ybo6"
, f = "raw_components--iconButtonDisabled--SoTjK raw_components--_iconButton---ybo6"
, E = "raw_components--iconButtonSelected--bJibL raw_components--_iconButton---ybo6"
, y = "raw_components--iconButtonWithChevron--oEJZZ"
, b = "raw_components--outlineButton--FyUoF"
, v = "raw_components--modalPanel--wmDfl"
, I = "raw_components--propertiesPanelWithNoHeader--bdYHH"
, T = "raw_components--singleRow--W5dYN raw_components--_singleRow--yTGIY raw_components--singleRowHeight--dKM4t raw_components--_row--rHucX raw_components--row--NThzm"
, S = "raw_components--row200--Dgjc6 raw_components--row200Height--wotRv raw_components--_row--rHucX"
, w = "raw_components--row150--2Q0-i raw_components--_rowHeight150--ZzVcZ raw_components--_row--rHucX"
, A = "raw_components--row125--J20Ob raw_components--_rowHeight125--G2mEi raw_components--_row--rHucX"
, C = "raw_components--labelRow--wxp77 raw_components--singleRow--W5dYN raw_components--_singleRow--yTGIY raw_components--singleRowHeight--dKM4t raw_components--_row--rHucX raw_components--row--NThzm"
, N = "raw_components--rowSelected--M2Eip"
, O = "raw_components--panelTitle--VAQQA"
, L = "raw_components--panelTitleWithoutChevron--qIjza"
, R = "raw_components--collapsiblePanelTitle--PXa3p"
, P = "raw_components--panelTitleExtended--GoX-m raw_components--panelTitle--VAQQA"
, k = "raw_components--panelTitleWithTip--iJvZe raw_components--panelTitle--VAQQA"
, D = "raw_components--panelTitleWithTipText--o5oVa"
, M = "raw_components--panelTitleWithTipIcon---l6SX"
, F = "raw_components--panelTitleFaded--cUUkM raw_components--panelTitle--VAQQA"
, x = "raw_components--panelIconContainer--V9E3Z"
}
,
344525: (e,t,n)=>{
"use strict";
n.d(t, {
AN: ()=>h,
BB: ()=>c,
BI: ()=>S,
CU: ()=>N,
Df: ()=>B,
H9: ()=>U,
HT: ()=>f,
IK: ()=>g,
IZ: ()=>w,
JB: ()=>k,
O: ()=>F,
Om: ()=>D,
P2: ()=>E,
QF: ()=>v,
Qc: ()=>u,
Qw: ()=>_,
UY: ()=>a,
Vb: ()=>m,
Wm: ()=>b,
ZM: ()=>R,
ai: ()=>d,
fE: ()=>O,
fH: ()=>p,
hF: ()=>o,
hH: ()=>i,
kL: ()=>r,
l8: ()=>A,
nJ: ()=>C,
pR: ()=>l,
re: ()=>L,
sS: ()=>M,
tN: ()=>s,
uK: ()=>I,
w$: ()=>x,
x1: ()=>y,
yF: ()=>T,
z6: ()=>P
});
let r = "select--container--UJhOt raw_components--singleRowHeight--dKM4t"
, i = "select--hiddenInput--3smCs raw_components--selectHiddenInput--bJ8vl"
, a = "select--safariVoiceover--meUJ0"
, o = "select--input--meQUx raw_components--base--T7G0z raw_components--border--SKh2u raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t ellipsis--ellipsis--Tjyfa"
, l = "select--inputDisabled--08EdX select--input--meQUx raw_components--base--T7G0z raw_components--border--SKh2u raw_components--input--JB4Ix raw_components--singleRowHeight--dKM4t ellipsis--ellipsis--Tjyfa"
, s = "select--inputTextWrapper--kEwIr"
, d = "select--chevron--KfTY2"
, c = "select--inputWithSvg--t6hLE"
, u = "select--inputAlignRight--5HWz5"
, p = "select--boldActionDropdown--ZAbhZ"
, m = "select--inputSvg--Sqy6u"
, _ = "select--backgroundOnHover--5kQnp"
, h = "select--inputText--I3JIv select--inputTextWrapper--kEwIr"
, g = "select--inputTextTruncated--j6p-H ellipsis--ellipsis--Tjyfa"
, f = "select--inputTextFill--H3tO-"
, E = "select--dropdownContainer--0zweb _overlayBase--_overlayBase--Rkj8l"
, y = "select--dropdownScrollClip--5ft6D"
, b = "select--dropdown--8DAM-"
, v = "select--dropdownContentWrapper--yDAla"
, I = "select--option--8gulr dropdown--_optionBase--z-REc text--fontNeg12--2PWcg text--_fontBase--QdLsd text--_negText--j9g-L"
, T = "select--divider--HfbAX"
, S = "select--optionFocused--8DSsx select--option--8gulr dropdown--_optionBase--z-REc text--fontNeg12--2PWcg text--_fontBase--QdLsd text--_negText--j9g-L"
, w = "select--optionDisabled--fEanh select--option--8gulr dropdown--_optionBase--z-REc text--fontNeg12--2PWcg text--_fontBase--QdLsd text--_negText--j9g-L"
, A = "select--optionHeader--34zhZ select--option--8gulr dropdown--_optionBase--z-REc text--fontNeg12--2PWcg text--_fontBase--QdLsd text--_negText--j9g-L"
, C = "select--optionTruncatedText--QqUBO"
, N = "select--optionTextRemoveRightPadding--ULI6k"
, O = "select--optionFullWidth--sW3Zl"
, L = "select--optionText--D3BVM select--optionTruncatedText--QqUBO ellipsis--ellipsis--Tjyfa"
, R = "select--rightLabel--I-ojL"
, P = "select--check--xQ8c3"
, k = "select--rightCheck--UdnTu"
, D = "select--rightCheckText--vWTPu"
, M = "select--topScrollIndicator--nys8N select--scrollIndicator--U0Wy-"
, F = "select--bottomScrollIndicator--C7EE7 select--scrollIndicator--U0Wy-"
, x = "select--scrollIndicatorChevron--9-te-"
, U = "select--optionIcon--yngNx"
, B = "select--iconToReplaceCheck--MMwXJ"
}
,
769502: (e,t,n)=>{
"use strict";
n.d(t, {
A5: ()=>y,
Kk: ()=>N,
Kz: ()=>o,
N: ()=>a,
NC: ()=>h,
O_: ()=>T,
QK: ()=>g,
RM: ()=>b,
Sj: ()=>d,
Sz: ()=>S,
T$: ()=>s,
T1: ()=>u,
TE: ()=>i,
UN: ()=>l,
Yv: ()=>E,
Z2: ()=>O,
_V: ()=>v,
aO: ()=>p,
be: ()=>w,
hF: ()=>f,
j1: ()=>C,
kk: ()=>A,
mR: ()=>_,
mm: ()=>r,
oH: ()=>c,
uH: ()=>m,
zp: ()=>I
});
let r = "stack_panel_v4--doubleRow--JWS-N"
, i = "stack_panel_v4--tripleRow--vu288 stack_panel_v4--doubleRow--JWS-N"
, a = "stack_panel_v4--stackModeControl--Hdn8q"
, o = "stack_panel_v4--stackSpacingControlVariables--KlE-F"
, l = "stack_panel_v4--stackCounterSpacingControlVariables--SIIo0"
, s = "stack_panel_v4--stackAlignmentControl--pvRL-"
, d = "stack_panel_v4--layoutDetailsIcon--aBd9A"
, c = "stack_panel_v4--gridLeft--zvUyF"
, u = "stack_panel_v4--gridRight--nE-KR"
, p = "stack_panel_v4--gridTop--y9uDT"
, m = "stack_panel_v4--gridBottom--2Asj6"
, _ = "stack_panel_v4--gridLeftLong--d3-sD"
, h = "stack_panel_v4--paddingControlsToggleIcon--X-Ifk"
, g = "stack_panel_v4--inactiveLabel--fcNUD raw_components--iconInsideBorderFocusWithin--2g7fO"
, f = "stack_panel_v4--input--VwHBa raw_components--flushLeft--YH-5P"
, E = "stack_panel_v4--readOnlyText--ecb6J text--fontPos11--2LvXf text--_fontBase--QdLsd"
, y = "stack_panel_v4--updateRow--iDASO"
, b = "stack_panel_v4--migrationUpgradeButton--Z-zTU stack_panel_v4--_migrationButton--Es40L"
, v = "stack_panel_v4--migrationDowngradeButton--JfBHS stack_panel_v4--_migrationButton--Es40L"
, I = "stack_panel_v4--questionMarkIcon--B-faL"
, T = "stack_panel_v4--ui3StackModeControl--GzLVB"
, S = "stack_panel_v4--ui3ComboBoxContainer--7oZU9 dimension_input--ui3ComboBoxContainer--BbSLS"
, w = "stack_panel_v4--selectInput--DdAPZ"
, A = "stack_panel_v4--comboBoxInput--ewblc dimension_input--comboBoxInput--J0jWQ"
, C = "stack_panel_v4--comboBoxPillsContainer--BiDzq dimension_input--comboBoxPillsContainer--Uv3fj"
, N = "stack_panel_v4--icon--PJRhG"
, O = "stack_panel_v4--textAutoResize--r9cZU"
}
,
975687: (e,t,n)=>{
"use strict";
n.d(t, {
Aq: ()=>i,
E3: ()=>d,
Ev: ()=>f,
Ii: ()=>_,
L8: ()=>a,
Qb: ()=>g,
Vf: ()=>u,
Z7: ()=>h,
ZE: ()=>l,
aM: ()=>o,
em: ()=>r,
jO: ()=>p,
lG: ()=>m,
lV: ()=>c,
mi: ()=>s,
pV: ()=>E,
t: ()=>y,
wG: ()=>b
});
let r = "states_panel--selectPropertyRow--WgdpJ raw_components--_row--rHucX"
, i = "states_panel--selectPropertyLabel--yEdA7"
, a = "states_panel--indentedSelectPropertyLabel--VJ5Tf states_panel--selectPropertyLabel--yEdA7"
, o = "states_panel--indentedExtendedSelectPropertyLabel--42OP1 states_panel--selectPropertyLabel--yEdA7"
, l = "states_panel--selectPropertyDropdown--3zHBh"
, s = "states_panel--selectExtendedPropertyDropdown--mcjM0"
, d = "states_panel--toggleContainer--aBTvd raw_components--singleRowHeight--dKM4t"
, c = "states_panel--toggleExtendedContainer--4-k9b raw_components--singleRowHeight--dKM4t"
, u = "states_panel--errorStateWithCloseButtonBox--jayB0 states_panel--errorStateBoxBase--NGwjK"
, p = "states_panel--errorStateBoxFlush--LYAGK states_panel--errorStateBox--AYnRU states_panel--errorStateBoxBase--NGwjK"
, m = "states_panel--errorStateBoxRegular--nhPoJ states_panel--errorStateBox--AYnRU states_panel--errorStateBoxBase--NGwjK"
, _ = "states_panel--errorStateBoxHeader--zgSnc"
, h = "states_panel--errorStateBoxTitle--pZ8tj"
, g = "states_panel--errorStateBoxTitleText--VY8En"
, f = "states_panel--errorStateBoxWarningIcon--5BPCj"
, E = "states_panel--errorStateBoxLink--N1Bq6"
, y = "states_panel--ui3ErrorStateBoxContent--07s-y"
, b = "states_panel--instanceSwapConsumptionPanel--OeQdP"
}
,
614851: (e,t,n)=>{
"use strict";
n.d(t, {
BP: ()=>p,
Cs: ()=>_,
GC: ()=>T,
KG: ()=>O,
Kw: ()=>c,
PK: ()=>y,
QK: ()=>a,
T1: ()=>d,
X8: ()=>u,
Xq: ()=>h,
eC: ()=>g,
fm: ()=>f,
gb: ()=>l,
hF: ()=>r,
i6: ()=>S,
iq: ()=>b,
jC: ()=>I,
kv: ()=>A,
mH: ()=>C,
oH: ()=>s,
r: ()=>w,
sC: ()=>m,
t5: ()=>E,
vP: ()=>o,
wO: ()=>N,
xP: ()=>v,
xe: ()=>i
});
let r = "transform_panel--input--nRDX0 raw_components--flushLeft--YH-5P"
, i = "transform_panel--fplToggle--2M0Ew"
, a = "transform_panel--inactiveLabel--fPCxr raw_components--iconInsideBorderFocusWithin--2g7fO"
, o = "transform_panel--dropdownIcon--7m7wZ"
, l = "transform_panel--iconButton--EGQDL"
, s = "transform_panel--gridLeft--W4laA"
, d = "transform_panel--gridRight--3nSe7"
, c = "transform_panel--scrubbableInputLeftColNoFocus--PBjfS"
, u = "transform_panel--scrubbableInputRightColNoFocus--oK-l-"
, p = "transform_panel--scrubbableInputLeftCol--AP3qU raw_components--borderFocusWithin--BaipZ transform_panel--scrubbableInputLeftColNoFocus--PBjfS"
, m = "transform_panel--scrubbableInput--2QO5M transform_panel--scrubbableInputLeftCol--AP3qU raw_components--borderFocusWithin--BaipZ transform_panel--scrubbableInputLeftColNoFocus--PBjfS"
, _ = "transform_panel--arcToolInputs--dchQV raw_components--borderFocusWithin--BaipZ"
, h = "transform_panel--arcToolInputsUi3--H4Qwg"
, g = "transform_panel--arcToolRatio--G9Dq-"
, f = "transform_panel--arcToolStart--BcMpc"
, E = "transform_panel--arcToolSweep--Rb34n"
, y = "transform_panel--arcToolInput--hhYYv"
, b = "transform_panel--framePresetDropdown--qiajY"
, v = "transform_panel--framePresetDropdownSmall--bsIDl"
, I = "transform_panel--mirroringIcon--fj7AY transform_panel--inactiveLabel--fPCxr raw_components--iconInsideBorderFocusWithin--2g7fO"
, T = "transform_panel--handleMirroring--pp-Ug"
, S = "transform_panel--handleMirroringInput--NteeH"
, w = "transform_panel--handleMirroringChevron--cJBan"
, A = "transform_panel--checkbox--dxHjN"
, C = "transform_panel--checkboxLabel--sCUAV checkbox--_checkboxLabel--shM0N"
, N = "transform_panel--applyVariableOption--olkGv"
, O = "transform_panel--framePresetDropdownInput--gsuy1"
}
,
985749: (e,t,n)=>{
"use strict";
n.d(t, {
N8: ()=>i,
NL: ()=>l,
kv: ()=>s,
pX: ()=>o,
tT: ()=>r,
wn: ()=>a
});
let r = "quick_actions--qaV2Window--ylCiI"
, i = "quick_actions--qaV2WindowInner--9CIzB text--fontPos13--xW8hS text--_fontBase--QdLsd"
, a = "quick_actions--resultDisabled--NUR49"
, o = "quick_actions--itemCheckedDisabled---SUD4"
, l = "quick_actions--itemChecked--DZ6yH"
, s = "quick_actions--checkbox--Tp8PR"
}
,
255214: (e,t,n)=>{
"use strict";
n.d(t, {
Fq: ()=>m,
Jg: ()=>u,
Sm: ()=>s,
XN: ()=>d,
bk: ()=>p,
gb: ()=>r,
i9: ()=>o,
mR: ()=>l,
oB: ()=>c,
og: ()=>_,
tA: ()=>i,
wH: ()=>a
});
let r = "theme_editor--iconButton--PIoXO theme_editor--baseIconButton--zQIey"
, i = "theme_editor--fontIconButton--ln8lw theme_editor--iconButton--PIoXO theme_editor--baseIconButton--zQIey"
, a = "theme_editor--selected--q0EMs"
, o = "theme_editor--svgText--bqhfJ"
, l = "theme_editor--iconActive--r-ppd"
, s = "theme_editor--svgIcon--s2xcI"
, d = "theme_editor--boxInherit--kGVmO"
, c = "theme_editor--colorSelect--S7T0D"
, u = "theme_editor--precedence--nqkZq"
, p = "theme_editor--pickerUnderlay---g9Jh"
, m = "theme_editor--pickerOverlay--h54x2"
, _ = "theme_editor--pickerWrapper--Q33-r"
}
,
598907: (e,t,n)=>{
"use strict";
n.d(t, {
$8: ()=>p,
CZ: ()=>d,
FV: ()=>f,
Io: ()=>m,
Kf: ()=>i,
ON: ()=>r,
WL: ()=>u,
ed: ()=>a,
h8: ()=>E,
iu: ()=>b,
l4: ()=>l,
nW: ()=>_,
qf: ()=>s,
t6: ()=>o,
w8: ()=>y,
wM: ()=>g,
yL: ()=>c,
zF: ()=>h
});
let r = "plugin_parameter_entry--searchBar--fGA-G"
, i = "plugin_parameter_entry--inputContainer--uDzoR"
, a = "plugin_parameter_entry--inputContainerFinal--eDmCW"
, o = "plugin_parameter_entry--inputTextBox--hHalR"
, l = "plugin_parameter_entry--placeholderContainer--9-r-3 plugin_parameter_entry--centerItemsVertically--J04BQ"
, s = "plugin_parameter_entry--placeholder--LODpq"
, d = "plugin_parameter_entry--hiddenText--r0pS3"
, c = "plugin_parameter_entry--optionalDivider--jC-j6"
, u = "plugin_parameter_entry--parameterDescription--6kB-a text--fontPos11--2LvXf text--_fontBase--QdLsd"
, p = "plugin_parameter_entry--noSuggestions--P6VRd"
, m = "plugin_parameter_entry--pill--Td7lz text--fontPos11--2LvXf text--_fontBase--QdLsd"
, _ = "plugin_parameter_entry--pillIcon--9GdVI"
, h = "plugin_parameter_entry--pluginLabelIcon--4yVQI plugin_parameter_entry--pillIcon--9GdVI"
, g = "plugin_parameter_entry--middlePrompt--kpeqX plugin_parameter_entry--centerItemsVertically--J04BQ"
, f = "plugin_parameter_entry--keyContainer--DcwMq plugin_parameter_entry--centerItemsVertically--J04BQ"
, E = "plugin_parameter_entry--optionalIcons--in0Kn quick_actions--keyIcon--GFkIK"
, y = "plugin_parameter_entry--keyLabel--fzYwW"
, b = "plugin_parameter_entry--parameterResultTextHolder--EW-F3 plugin_parameter_entry--centerItemsVertically--J04BQ"
}
,
802454: (e,t,n)=>{
"use strict";
n.d(t, {
$P: ()=>i,
D6: ()=>g,
DU: ()=>r,
EA: ()=>p,
Hq: ()=>b,
Ke: ()=>l,
LE: ()=>f,
NL: ()=>y,
Rt: ()=>a,
Tk: ()=>o,
V4: ()=>h,
VU: ()=>_,
Vu: ()=>v,
ZR: ()=>u,
ix: ()=>s,
kv: ()=>T,
pB: ()=>m,
pX: ()=>E,
qc: ()=>c,
w8: ()=>I,
wn: ()=>d
});
let r = "quick_actions--floating--uGf99 text--fontPos13--xW8hS text--_fontBase--QdLsd"
, i = "quick_actions--search---Oi-e quick_actions--centerItemsVertically--Nb6JD"
, a = "quick_actions--searchInput--PSRk5"
, o = "quick_actions--noresult--NZsEA quick_actions--centerItemsVertically--Nb6JD"
, l = "quick_actions--result--a2QFG quick_actions--centerItemsVertically--Nb6JD"
, s = "quick_actions--resultActive--JnXEf quick_actions--result--a2QFG quick_actions--centerItemsVertically--Nb6JD"
, d = "quick_actions--resultDisabled--Zuza5"
, c = "quick_actions--searchIcon--prXl4"
, u = "quick_actions--pluginIcon--oSF9D"
, p = "quick_actions--iconHolder--dMD0c quick_actions--centerItemsVertically--Nb6JD"
, m = "quick_actions--pluginIconSvg--WMsjq"
, _ = "quick_actions--rightChevronIcon--1S5oG"
, h = "quick_actions--resultTextHolder--kfqzE quick_actions--centerItemsVertically--Nb6JD"
, g = "quick_actions--resultText--x40-- text--fontPos13--xW8hS text--_fontBase--QdLsd"
, f = "quick_actions--shortcut--GMKpE text--fontPos13--xW8hS text--_fontBase--QdLsd quick_actions--centerItemsVertically--Nb6JD"
, E = "quick_actions--itemCheckedDisabled--nl8jU"
, y = "quick_actions--itemChecked--zTpUC"
, b = "quick_actions--tabShortcutIcon--f-UdB quick_actions--keyIcon--GFkIK"
, v = "quick_actions--developmentPluginLabel--nhw9I text--fontPos9--naThA text--_fontBase--QdLsd quick_actions--centerItemsVertically--Nb6JD"
, I = "quick_actions--keyLabel--pZTZK"
, T = "quick_actions--checkbox--g-nqt"
}
,
706607: (e,t,n)=>{
"use strict";
n.r(t),
n.d(t, {
activeButton: ()=>l,
chevron: ()=>E,
delightfulMenu: ()=>d,
disabledButton: ()=>o,
enabledButton: ()=>a,
flyout: ()=>c,
flyoutButton: ()=>m,
flyoutDropdownShown: ()=>u,
fullHeightSidebarFlyout: ()=>p,
fullHeightSidebarFlyoutButton: ()=>h,
fullHeightSidebarFlyoutChevron: ()=>_,
fullHeightSidebarFlyoutDropdownShown: ()=>g,
grid: ()=>f,
largeDisplayDropdown: ()=>y,
pointingDropdown: ()=>s,
selected: ()=>i,
updatesBadge: ()=>r
});
let r = "toolbar_styles--updatesBadge--NbkFp"
, i = "toolbar_styles--selected--zUa6K"
, a = "toolbar_styles--enabledButton--fEwmC"
, o = "toolbar_styles--disabledButton--wv8Iu"
, l = "toolbar_styles--activeButton--YHzcB"
, s = "toolbar_styles--pointingDropdown--6rrL3"
, d = "toolbar_styles--delightfulMenu--A6bY7"
, c = "toolbar_styles--flyout--S3qfl"
, u = "toolbar_styles--flyoutDropdownShown--WU8JV"
, p = "toolbar_styles--fullHeightSidebarFlyout--d9LJ3 toolbar_styles--flyout--S3qfl"
, m = "toolbar_styles--flyoutButton--lyOUg"
, _ = "toolbar_styles--fullHeightSidebarFlyoutChevron--aENEg"
, h = "toolbar_styles--fullHeightSidebarFlyoutButton--dU4LR toolbar_styles--flyout--S3qfl"
, g = "toolbar_styles--fullHeightSidebarFlyoutDropdownShown--rT9w3 toolbar_styles--flyoutDropdownShown--WU8JV"
, f = "toolbar_styles--grid--M8sVG"
, E = "toolbar_styles--chevron--3YF14"
, y = "toolbar_styles--largeDisplayDropdown--yFQ1V"
}
,
610544: (e,t,n)=>{
"use strict";
n.d(t, {
Dn: ()=>b,
FE: ()=>A,
FH: ()=>h,
Jk: ()=>u,
LY: ()=>y,
QO: ()=>T,
S0: ()=>_,
Sn: ()=>w,
WB: ()=>g,
Xf: ()=>i,
Y7: ()=>d,
cm: ()=>p,
hF: ()=>o,
i5: ()=>m,
l4: ()=>a,
mu: ()=>E,
om: ()=>s,
r2: ()=>I,
r4: ()=>v,
sH: ()=>r,
sy: ()=>S,
vu: ()=>C,
wR: ()=>l,
wg: ()=>c,
zj: ()=>f
});
let r = "zoom_menu--zoomMenuBase--Uy7YH"
, i = "zoom_menu--zoomMenu--3OqMw"
, a = "zoom_menu--fullHeightSidebarZoomMenu--ElxlP"
, o = "zoom_menu--input---hdA- input--darkInput--zfbnG"
, l = "zoom_menu--zoomMenuContainer--DJXOL"
, s = "zoom_menu--zoomMenuContainerActive--E7m0j"
, d = "zoom_menu--fullHeightSidebarZoomMenuContainer--So738"
, c = "zoom_menu--fullHeightSidebarZoomMenuContainerActive--jPaQb zoom_menu--fullHeightSidebarZoomMenuContainer--So738"
, u = "zoom_menu--fullHeightSidebarZoomMenuContainerCollapsed--FpFJm zoom_menu--fullHeightSidebarZoomMenuContainer--So738"
, p = "zoom_menu--zoomAmount--Qb6gL"
, m = "zoom_menu--fullHeightSidebarZoomAmount---M-Dz zoom_menu--zoomAmount--Qb6gL"
, _ = "zoom_menu--fullHeightSidebarZoomAmountActive--EKFn- zoom_menu--fullHeightSidebarZoomAmount---M-Dz zoom_menu--zoomAmount--Qb6gL"
, h = "zoom_menu--chevronContainer---jqeH"
, g = "zoom_menu--fullHeightSidebarChevronActive--s0s-C"
, f = "zoom_menu--zoomInputContainer---Xqu1"
, E = "zoom_menu--zoomControls--kNX-s"
, y = "zoom_menu--middleZoomButton--17GYR"
, b = "zoom_menu--zoomMiddleChevronContainer--XxlkP"
, v = "zoom_menu--zoomMiddleChevronContainerActive--dN2OQ zoom_menu--zoomMiddleChevronContainer--XxlkP"
, I = "zoom_menu--zoomMiddleChevronSVGContainer--6TlCz"
, T = "zoom_menu--zoomMinus--wljce"
, S = "zoom_menu--zoomPlus--B-iye"
, w = "zoom_menu--enabled--JWySc"
, A = "zoom_menu--feedZoomPan--AxC05"
, C = "zoom_menu--active--WlOsd"
}
,
565727: (e,t,n)=>{
"use strict";
n.d(t, {
Bx: ()=>l,
Gq: ()=>o,
Io: ()=>i,
Nt: ()=>s,
Nz: ()=>c,
Qq: ()=>a,
_C: ()=>d,
zr: ()=>r
});
let r = "variable_pill--root--0ibUT"
, i = "variable_pill--pill--NU8eR variable_pill_base--pillBase--HIf9B"
, a = "variable_pill--text--Fm5k5"
, o = "variable_pill--invalid--dxyCJ"
, l = "variable_pill--deletedIcon--QaRlG"
, s = "variable_pill--inferredIcon--eLJef"
, d = "variable_pill--isHovered--qumV3"
, c = "/** @postcss-export-raw */\n\n.variable_pill--root--0ibUT {\n display: inline-flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n overflow: hidden;\n max-width: 100%;\n}\n\n[data-fpl-version='ui3'] .variable_pill--root--0ibUT {\n gap: var(--spacer-1);\n }\n\n.variable_pill--pill--NU8eR {\n display: flex;\n gap: 3px;\n}\n\n[data-fpl-version='ui3'] .variable_pill--pill--NU8eR {\n gap: 0;\n }\n\n.variable_pill--text--Fm5k5 {\n -webkit-user-select: none;\n user-select: none;\n flex: 1 1 auto;\n overflow: hidden;\n}\n\n[data-fpl-version='ui3'] .variable_pill--text--Fm5k5 span {\n font-family: var(--text-body-medium-font-family);\n font-size: var(--text-body-medium-font-size);\n font-weight: var(--text-body-medium-font-weight);\n letter-spacing: var(--text-body-medium-letter-spacing);\n line-height: var(--text-body-medium-line-height);\n }\n\n.variable_pill--invalid--dxyCJ {\n -webkit-text-decoration: line-through;\n text-decoration: line-through;\n}\n\n.variable_pill--deletedIcon--QaRlG {\n fill: var(--color-icon-secondary);\n}\n\n.variable_pill--inferredIcon--eLJef {\n fill: var(--color-icon-secondary);\n}\n\n.variable_pill--inferredIcon--eLJef:hover {\n fill: var(--color-icon-tertiary-hover);\n }\n\n.variable_pill--root--0ibUT.variable_pill--isHovered--qumV3 .variable_pill--inferredIcon--eLJef {\n fill: var(--color-icon-tertiary-hover);\n}\n"
}
,
107047: (e,t,n)=>{
"use strict";
n.d(t, {
Er: ()=>l,
Fi: ()=>p,
JJ: ()=>i,
N: ()=>u,
Nz: ()=>m,
Q_: ()=>d,
RH: ()=>a,
Uq: ()=>s,
eK: ()=>c,
pv: ()=>r,
xH: ()=>o
});
let r = "variable_pill_base--pillBase--HIf9B"
, i = "variable_pill_base--pillHasIcon--qR8Mw"
, a = "variable_pill_base--pillSelected--WuPhz"
, o = "variable_pill_base--pillDefault--5YSwx"
, l = "variable_pill_base--pillDisableHover--A9znd"
, s = "variable_pill_base--pillDefaultComponent--GMeSg"
, d = "variable_pill_base--pillDisabled--Xci9C"
, c = "variable_pill_base--pillDisabledTertiary--C2fJb"
, u = "variable_pill_base--pillInSelection--HupPT"
, p = "variable_pill_base--pillNarrow--Oai69"
, m = "/** @postcss-export-raw */\n\n.variable_pill_base--pillBase--HIf9B {\n align-items: center;\n border-radius: 4px;\n border-width: 1px;\n border-style: solid;\n box-sizing: border-box;\n height: 20px;\n overflow: hidden;\n padding: 0 5px;\n display: inline;\n}\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillHasIcon--qR8Mw {\n padding: 0 5px 0 3px;\n }\n\n[data-fpl-version='ui3'] .variable_pill_base--pillBase--HIf9B:not(.variable_pill_base--pillSelected--WuPhz):not(:hover) {\n --color-icon: var(--color-icon-secondary);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDefault--5YSwx {\n color: var(--color-text);\n background-color: var(--color-bg-secondary);\n border-color: var(--color-border);\n }\n\n[data-fpl-version='ui3'] .variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDefault--5YSwx {\n background-color: var(--color-bg);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDefault--5YSwx:not(.variable_pill_base--pillDisableHover--A9znd):hover {\n background-color: var(--color-bg-tertiary);\n border-color: var(--color-bg-tertiary);\n }\n\n[data-fpl-version='ui3'] .variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDefault--5YSwx:not(.variable_pill_base--pillDisableHover--A9znd):hover {\n background-color: var(--color-bg-hover);\n border-color: var(--color-bg-hover);\n }\n\n[data-fpl-version='ui3'] .variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDefault--5YSwx:not(.variable_pill_base--pillDisableHover--A9znd):hover:not(.variable_pill_base--pillHasIcon--qR8Mw) {\n background-color: var(--color-bg-tertiary);\n border-color: var(--color-bg-tertiary);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDefaultComponent--GMeSg {\n color: var(--color-text);\n background-color: var(--color-bg-component-tertiary);\n border-color: var(--color-border);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDisabled--Xci9C {\n color: var(--color-text-disabled);\n background-color: var(--color-bg-secondary);\n border-color: var(--color-border);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDisabled--Xci9C:not(.variable_pill_base--pillDisableHover--A9znd):hover {\n background-color: var(--color-bg);\n border-color: var(--color-border);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillDisabledTertiary--C2fJb {\n color: var(--color-text-tertiary);\n background-color: var(--color-bg);\n border-color: var(--color-border);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillSelected--WuPhz {\n color: var(--color-text);\n background-color: var(--color-bg-selected);\n border-color: var(--color-border-selected);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillInSelection--HupPT {\n color: var(--color-text);\n background-color: var(--color-bg-onselected);\n border-color: var(--color-border-onselected);\n }\n\n.variable_pill_base--pillBase--HIf9B.variable_pill_base--pillNarrow--Oai69 {\n padding: 0 2px;\n }\n\n[data-fpl-version='ui3'] .variable_pill_base--pillBase--HIf9B {\n border-radius: var(--radius-medium);\n padding: var(--spacer-0) var(--spacer-1) var(--spacer-0) 0;\n }\n\n[data-fpl-version='ui3'] .variable_pill_base--pillBase--HIf9B:not(.variable_pill_base--pillHasIcon--qR8Mw) {\n padding-left: var(--spacer-1);\n }\n"
}
,
194490: (e,t,n)=>{
"use strict";
n.d(t, {
I4: ()=>s,
JL: ()=>c,
Jp: ()=>i,
QW: ()=>o,
cI: ()=>l,
hI: ()=>d,
qS: ()=>a,
x6: ()=>r
});
let r = "go_to_stripe_button--button--7wJjr"
, i = "go_to_stripe_button--buttonConstrained--f8nDf"
, a = "go_to_stripe_button--badge--aJn3P text--fontPos12--YsUAh text--_fontBase--QdLsd"
, o = "go_to_stripe_button--warningIcon--eeAU7"
, l = "go_to_stripe_button--bannerContainer--QiRC1"
, s = "go_to_stripe_button--bannerContainerWarning--pqfuE go_to_stripe_button--bannerContainer--QiRC1"
, d = "go_to_stripe_button--updatePaymentText--OJxG9 text--fontPos11--2LvXf text--_fontBase--QdLsd"
, c = "go_to_stripe_button--bannerRight--pD3Zz"
}
,
301280: (e,t,n)=>{
"use strict";
n.d(t, {
BF: ()=>a,
_V: ()=>r,
kV: ()=>i
});
let r = "dock--dock--A6jIs"
, i = "dock--dockDesign--kbym5 dock--dock--A6jIs"
, a = "dock--dockLeft--fAueV dock--dock--A6jIs"
}
,
687348: (e,t,n)=>{
"use strict";
n.d(t, {
JX: ()=>s,
P0: ()=>l,
S: ()=>d,
VM: ()=>i,
h_: ()=>o,
oQ: ()=>a,
tJ: ()=>r
});
let r = "figjam_plugin_detail_in_editor--metadataContainer--qQ5Hi"
, i = "figjam_plugin_detail_in_editor--coverImageNotDraggable---pwfP"
, a = "figjam_plugin_detail_in_editor--resourceUsageDetails--SGXXh"
, o = "figjam_plugin_detail_in_editor--description--a03k0 text--fontPos13--xW8hS text--_fontBase--QdLsd"
, l = "figjam_plugin_detail_in_editor--communityLinkBase--9ekc6"
, s = "figjam_plugin_detail_in_editor--communityLinkIcon---FG3j text--fontPos11--2LvXf text--_fontBase--QdLsd"
, d = "figjam_plugin_detail_in_editor--loadingSpinner--D-Bwn browse_resources_modal--loadingSpinner--pMJQa"
}
,
179494: (e,t,n)=>{
"use strict";
n.d(t, {
$C: ()=>m,
B6: ()=>h,
BG: ()=>O,
Bx: ()=>U,
Cq: ()=>R,
D1: ()=>l,
F$: ()=>o,
FV: ()=>u,
Gy: ()=>N,
JW: ()=>k,
MJ: ()=>d,
ML: ()=>M,
NH: ()=>p,
Pg: ()=>E,
QF: ()=>P,
UK: ()=>s,
VJ: ()=>I,
Vx: ()=>V,
Xb: ()=>r,
Y2: ()=>D,
Y9: ()=>F,
YB: ()=>H,
Yl: ()=>y,
ZK: ()=>g,
Zv: ()=>L,
_P: ()=>i,
c6: ()=>a,
ez: ()=>G,
k7: ()=>W,
kQ: ()=>K,
lI: ()=>T,
lO: ()=>S,
lP: ()=>c,
o2: ()=>C,
od: ()=>b,
ot: ()=>B,
rz: ()=>x,
sI: ()=>A,
vt: ()=>_,
y2: ()=>v,
y7: ()=>f,
zZ: ()=>w
});
let r = "resource_tiles--showOnHover--2v687"
, i = "resource_tiles--figjamPluginRowIconHoverBg--0GjEb"
, a = "resource_tiles--fauxFocused--Tk7MC"
, o = "resource_tiles--optionsButtonActive--CnmDE resource_tiles--optionsButton--B7MN2"
, l = "resource_tiles--optionsButtonShowOnHover--kJQHm resource_tiles--optionsButton--B7MN2 resource_tiles--showOnHover--2v687"
, s = "resource_tiles--pluginTitleBadgeContainer--Q-9cz"
, d = "resource_tiles--browsePluginTile--Dl1N0 resource_tiles--_browsePluginTileBase--V7a7Y resource_tiles--_browseTileBase--7oogR resource_tiles--_parentWithHoverAction--m180X"
, c = "resource_tiles--pluginTileIcon--rmGOy resource_tiles--_browseTileIconBase--DDmKv"
, u = "resource_tiles--pluginTileMeta--xgpJR"
, p = "resource_tiles--browsePluginTileDevModeWizard--ApW9E"
, m = "resource_tiles--browsePluginTileSmall--t70Gg resource_tiles--_browsePluginTileBase--V7a7Y resource_tiles--_browseTileBase--7oogR resource_tiles--_parentWithHoverAction--m180X"
, _ = "resource_tiles--pluginTileIconLoading--mas66 resource_tiles--pluginTileIcon--rmGOy resource_tiles--_browseTileIconBase--DDmKv"
, h = "resource_tiles--pluginTileName--9Isog text--fontPos12--YsUAh text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, g = "resource_tiles--pluginTileSubheader--Fihho text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, f = "resource_tiles--pluginTileCommunityDescription__OLD--AQ2X1 ellipsis--ellipsis--Tjyfa"
, E = "resource_tiles--pluginTileCommunityDescription--TiroQ ellipsis--ellipsis--Tjyfa"
, y = "resource_tiles--communityTilePublisherAndMetrics--49SDI"
, b = "resource_tiles--ctaButtonContainer--z2HxW"
, v = "resource_tiles--priceBadgeContainer--6O7DF"
, I = "resource_tiles--widgetMonetizationBadge--hXbF6"
, T = "resource_tiles--ctaButton--qu-bG"
, S = "resource_tiles--cta--JU9XJ text--fontPos12--YsUAh text--_fontBase--QdLsd"
, w = "resource_tiles--buttonSubmenuChevron--af8r9"
, A = "resource_tiles--buttonSubmenuChevronWhite--c7pTT resource_tiles--buttonSubmenuChevron--af8r9"
, C = "resource_tiles--rowChevron--tIIjl"
, N = "resource_tiles--widgetTileSmall--gtI7m resource_tiles--_widgetTileBase--pKu3B resource_tiles--_browseTileBase--7oogR resource_tiles--_parentWithHoverAction--m180X text--fontPos11--2LvXf text--_fontBase--QdLsd"
, O = "resource_tiles--widgetTile--OjUTk resource_tiles--_widgetTileBase--pKu3B resource_tiles--_browseTileBase--7oogR resource_tiles--_parentWithHoverAction--m180X text--fontPos12--YsUAh text--_fontBase--QdLsd"
, L = "resource_tiles--widgetTileIconSmall--Dox02 resource_tiles--_widgetTileIconBase--vgb2t resource_tiles--_browseTileIconBase--DDmKv"
, R = "resource_tiles--widgetTileIcon--hGlOB resource_tiles--_widgetTileIconBase--vgb2t resource_tiles--_browseTileIconBase--DDmKv"
, P = "resource_tiles--widgetTileMetadata--Ggrsh"
, k = "resource_tiles--widgetTileNameContainer--HqAEf"
, D = "resource_tiles--widgetTileName--hvW06 ellipsis--ellipsis--Tjyfa"
, M = "resource_tiles--widgetTileSubheader--7-TT- ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd"
, F = "resource_tiles--paymentErrorIcon--w-8j9"
, x = "resource_tiles--widgetTileDescription--Nbm5J ellipsis--ellipsis--Tjyfa"
, U = "resource_tiles--developmentIcon--cQxaQ"
, B = "resource_tiles--relativeContainer--7lvHF"
, V = "resource_tiles--redDot---lNFV red_dot--baseRedDot--AZelu"
, H = "resource_tiles--saveButtonEditorSmall--Jt970 resource_tiles--_saveButton--mDwpY"
, G = "resource_tiles--saveButtonVisible---tZad"
, W = "resource_tiles--saveButtonEditorLarge--nKxZq resource_tiles--_saveButton--mDwpY"
, K = "resource_tiles--svg16--B1UCN"
}
,
983238: (e,t,n)=>{
"use strict";
n.d(t, {
Ar: ()=>B,
B9: ()=>c,
Cr: ()=>I,
FQ: ()=>M,
Hn: ()=>H,
IL: ()=>l,
Ju: ()=>S,
Lq: ()=>s,
M3: ()=>w,
Mn: ()=>A,
Ny: ()=>U,
OQ: ()=>E,
Ok: ()=>L,
TI: ()=>p,
Ym: ()=>R,
ZA: ()=>f,
ZO: ()=>m,
_1: ()=>r,
_S: ()=>o,
_y: ()=>P,
a5: ()=>F,
b: ()=>a,
dC: ()=>g,
gF: ()=>V,
gh: ()=>k,
hw: ()=>y,
jS: ()=>h,
kP: ()=>_,
kb: ()=>N,
nW: ()=>x,
oX: ()=>D,
pG: ()=>O,
qb: ()=>b,
r7: ()=>v,
sQ: ()=>C,
uS: ()=>u,
w0: ()=>d,
wV: ()=>i,
zG: ()=>T
});
let r = "8px"
, i = "pointer_modal--announcementPointerModalDark--9DD-M pointer_modal--announcementPointerModal---X9Ui"
, a = "pointer_modal--closeButton--yKnli"
, o = "pointer_modal--closeButtonExtraSpacing--e8erM"
, l = "pointer_modal--announcementPointerModalLight--AaKLA pointer_modal--announcementPointerModal---X9Ui"
, s = "pointer_modal--pointerModalBlue--9Jjg8 pointer_modal--pointerModal--wrpFz"
, d = "pointer_modal--walkThroughModal--6eTVS pointer_modal--pointerModal--wrpFz"
, c = "pointer_modal--walkThroughModalAnimateFast--Xm453 pointer_modal--walkThroughModal--6eTVS pointer_modal--pointerModal--wrpFz"
, u = "pointer_modal--closeButtonWhite--nj2uk"
, p = "pointer_modal--primaryCtaButtonLight--WnZAX pointer_modal--primaryCtaButton--Snffw"
, m = "pointer_modal--primaryCtaButtonDark--ZWijN pointer_modal--primaryCtaButton--Snffw"
, _ = "pointer_modal--ctaButtonDiv--kXQXv"
, h = "pointer_modal--secondaryCtaButtonLight---Dv4E pointer_modal--secondaryCtaButton--Jg0Yu"
, g = "pointer_modal--secondaryCtaButtonDark--dKbwo pointer_modal--secondaryCtaButton--Jg0Yu"
, f = "pointer_modal--footerDiv--JtCDN"
, E = "pointer_modal--ctaContainer--luZLz"
, y = "pointer_modal--connectorModal--Adxkh"
, b = "pointer_modal--normal--BIIPY"
, v = "pointer_modal--shadow--wdDMe"
, I = "pointer_modal--bold--cXTTH"
, T = "pointer_modal--zDom--ODE-k"
, S = "pointer_modal--zCanvas--UhXWk"
, w = "pointer_modal--connector--6LWaP"
, A = "pointer_modal--top--FKowX"
, C = "pointer_modal--bottom--eio8M"
, N = "pointer_modal--left--1j5Nt"
, O = "pointer_modal--right--nwMNE"
, L = "pointer_modal--verticalConnectorLine---AFah"
, R = "pointer_modal--horizontalConnectorLine--y5InX"
, P = "pointer_modal--connectorNode--diOtX"
, k = "pointer_modal--noMotion--YIicU"
, D = "pointer_modal--topTriangleBackground--bAkvB pointer_modal--topTriangle--eTQ3K"
, M = "pointer_modal--topTriangleForeground--BZxHM pointer_modal--topTriangle--eTQ3K"
, F = "pointer_modal--bottomTriangleBackground--GHZc5 pointer_modal--bottomTriangle--iDHi9"
, x = "pointer_modal--bottomTriangleForeground--2hiBJ pointer_modal--bottomTriangle--iDHi9"
, U = "pointer_modal--rightTriangleBackground--fw0l3 pointer_modal--rightTriangle--rQltw"
, B = "pointer_modal--rightTriangleForeground--ReV7J pointer_modal--rightTriangle--rQltw"
, V = "pointer_modal--leftTriangleBackground--GAtIC pointer_modal--leftTriangle--p5eQp"
, H = "pointer_modal--leftTriangleForeground--shkXU pointer_modal--leftTriangle--p5eQp"
}
,
914205: (e,t,n)=>{
"use strict";
n.d(t, {
Cb: ()=>i,
M4: ()=>o,
Q$: ()=>a,
Q0: ()=>d,
_d: ()=>u,
iZ: ()=>s,
k9: ()=>l,
mT: ()=>c,
qW: ()=>r
});
let r = "inline_preview_device_frames--previewDeviceContainer--fNvYG"
, i = "inline_preview_device_frames--fillGapsBetweenDeviceAndIframe--DuNNK"
, a = "inline_preview_device_frames--hideCornersForOverlyRoundedDevice--Rn1BM"
, o = "inline_preview_device_frames--previewDeviceImage--pSzed"
, l = "inline_preview_device_frames--previewDeviceHeader--KHpCv"
, s = "inline_preview_device_frames--deviceFrameHitTargetSvg--w7930"
, d = "inline_preview_device_frames--rotatedHorizontal--5yjwl"
, c = "inline_preview_device_frames--positionRotatedHorizontalDeviceFrame--mPJzu"
, u = "inline_preview_device_frames--positionRotatedHorizontalDeviceFrameHitTarget--zmylC"
}
,
523931: (e,t,n)=>{
"use strict";
n.d(t, {
CN: ()=>s,
FO: ()=>d,
KW: ()=>r,
VR: ()=>a,
Wc: ()=>i,
Xt: ()=>u,
aq: ()=>l,
cD: ()=>c,
dS: ()=>o
});
let r = "inline_preview_modal--prototypeModalTitle--Y5Zqk"
, i = "inline_preview_modal--iframeContainer--ylTh5"
, a = "inline_preview_modal--previewIframe--RpUIN"
, o = "inline_preview_modal--disablePointerEvents--sc1Yf"
, l = "inline_preview_modal--previewModal--FO-5S"
, s = "inline_preview_modal--previewModalSlides--0PFWB"
, d = "inline_preview_modal--previewModalHeader--parjV"
, c = "inline_preview_modal--previewFocused--DQTOg"
, u = "inline_preview_modal--previewNotFocused--cr3Ii"
}
,
256320: (e,t,n)=>{
"use strict";
n.d(t, {
BL: ()=>i,
Db: ()=>g,
Dg: ()=>l,
GQ: ()=>T,
I5: ()=>S,
Kb: ()=>I,
MD: ()=>p,
Qn: ()=>w,
Qs: ()=>r,
S: ()=>c,
SV: ()=>v,
Tw: ()=>y,
Yf: ()=>E,
ay: ()=>d,
iM: ()=>a,
iQ: ()=>_,
lI: ()=>A,
o: ()=>m,
oO: ()=>h,
qg: ()=>b,
qr: ()=>s,
v0: ()=>u,
xC: ()=>o,
yl: ()=>f,
zP: ()=>C
});
let r = "rcs_components--content--N7eCo text--fontPos11--2LvXf text--_fontBase--QdLsd"
, i = "rcs_components--content_v2--e-qFs text--fontPos11--2LvXf text--_fontBase--QdLsd"
, a = "rcs_components--contentMobile--D3SLD text--fontPos13--xW8hS text--_fontBase--QdLsd"
, o = "rcs_components--contentFeatureUpdate--BQecL text--fontPos11--2LvXf text--_fontBase--QdLsd rcs_components--contentLarge--1qHKL rcs_components--leftRightContent--5yuzu"
, l = "rcs_components--imgContainer--JofI3"
, s = "rcs_components--footer--l5bb0"
, d = "rcs_components--footer_v3--3EWin"
, c = "rcs_components--footerStepCounter--jKzRi"
, u = "rcs_components--buttonRow--OfMRY"
, p = "rcs_components--closeButtonDefault--q8cPK rcs_components--closeButtonBase--wooGI"
, m = "rcs_components--closeButtonOnLight--rFK2o rcs_components--closeButtonBase--wooGI"
, _ = "rcs_components--closeButtonMobileOnLight--jElEv rcs_components--closeButtonOnLight--rFK2o rcs_components--closeButtonBase--wooGI"
, h = "rcs_components--closeButtonOnDark--SRWWX rcs_components--closeButtonBase--wooGI"
, g = "rcs_components--closeButtonHighContrast--Dlf2s rcs_components--closeButtonBase--wooGI"
, f = "rcs_components--modal--sgfHP"
, E = "rcs_components--mobileModal--yvxOb"
, y = "rcs_components--welcomeSequenceModal--TOyd- rcs_components--overflowingModal--QrH-H"
, b = "rcs_components--fullscreenBackground--tIex6"
, v = "rcs_components--fullscreenWelcomeSequenceModal--cuKAh rcs_components--welcomeSequenceModal--TOyd- rcs_components--overflowingModal--QrH-H"
, I = "rcs_components--modalAnimateIn--zcZjW"
, T = "rcs_components--bottomRightModalContainer--KnCz8"
, S = "rcs_components--centerModalContainer--V6MlJ"
, w = "rcs_components--centerModalContainerInner--j4P5U"
, A = "rcs_components--ctaButton--5FSzm"
, C = "rcs_components--loadingSpinner--rOHo1"
}
,
972045: (e,t,n)=>{
"use strict";
n.d(t, {
Cr: ()=>r,
G3: ()=>i,
Hj: ()=>o,
RZ: ()=>g,
SI: ()=>s,
W8: ()=>l,
X8: ()=>d,
Yl: ()=>p,
b: ()=>a,
g2: ()=>m,
o$: ()=>c,
pO: ()=>h,
vW: ()=>_,
xi: ()=>u
});
let r = "onboarding--bold--N-fnA"
, i = "onboarding--centeredText--9h5aS"
, a = "onboarding--closeButton--cqvr-"
, o = "onboarding--promoPointerTitle--Z1b9a text--fontPos13--xW8hS text--_fontBase--QdLsd"
, l = "onboarding--communityDuplicateModal--uG9y7 rcs_components--overflowingModal--QrH-H"
, s = "onboarding--communityDuplicateModalInner--HSIRJ"
, d = "onboarding--dismiss--Vi5jc"
, c = "onboarding--communityNew--kHK85 text--fontPos13--xW8hS text--_fontBase--QdLsd"
, u = "onboarding--communityLandingEditorLeft--FBrzi"
, p = "onboarding--editorOnboardingHeader--Kk5Cb"
, m = "onboarding--landingImgContainer--cGDDW"
, _ = "onboarding--inner--iQKer"
, h = "onboarding--lowZIndexPointerModal--9C2QH pointer_modal--pointerModalBlue--9Jjg8 pointer_modal--pointerModal--wrpFz"
, g = "onboarding--shelfSubtitle--juWHB text--fontPos13--xW8hS text--_fontBase--QdLsd"
}
,
692665: (e,t,n)=>{
"use strict";
n.d(t, {
$u: ()=>O,
BA: ()=>A,
D: ()=>C,
E0: ()=>I,
Gb: ()=>p,
KY: ()=>r,
NM: ()=>s,
SB: ()=>_,
SM: ()=>L,
T3: ()=>y,
TH: ()=>c,
U1: ()=>b,
UE: ()=>o,
Ym: ()=>R,
_Z: ()=>i,
ai: ()=>m,
cE: ()=>h,
cr: ()=>u,
eO: ()=>v,
eh: ()=>k,
gE: ()=>a,
hP: ()=>P,
jG: ()=>l,
jm: ()=>D,
ld: ()=>g,
ln: ()=>E,
nM: ()=>T,
p$: ()=>N,
ry: ()=>M,
sI: ()=>f,
sM: ()=>S,
uH: ()=>w,
wY: ()=>d
});
let r = "multi_select_list--actionBar--T9qpZ"
, i = "multi_select_list--actionBarVisible--3rWgr multi_select_list--actionBar--T9qpZ"
, a = "multi_select_list--actionIcon--3FtZB"
, o = "multi_select_list--arrow--CW8ia"
, l = "multi_select_list--scrollContainer--B-Dk-"
, s = "multi_select_list--scrollContent--bCmOd"
, d = "multi_select_list--tableWrapper--pDejK"
, c = "multi_select_list--tableWithNewScrollContext--Iffr4"
, u = "multi_select_list--actionBarContentContainer--lbuSx _overlayBase--_overlayBase--Rkj8l text--fontNeg11--StdFq text--_fontBase--QdLsd text--_negText--j9g-L"
, p = "multi_select_list--dropdownColumn--n-MKQ table--column--974RA"
, m = "multi_select_list--chevron--v5fMB"
, _ = "multi_select_list--actionBarContentContainerVisible--AEaW4 multi_select_list--actionBarContentContainer--lbuSx _overlayBase--_overlayBase--Rkj8l text--fontNeg11--StdFq text--_fontBase--QdLsd text--_negText--j9g-L"
, h = "multi_select_list--menuBarLeft--aUL8Q"
, g = "multi_select_list--menuBarRight--ZRnOb"
, f = "multi_select_list--menuBarDropdown--Lf9-4"
, E = "multi_select_list--stickyHeader--FkV5r"
, y = "multi_select_list--stickyHeaderWithBanner--9IDR1 multi_select_list--stickyHeader--FkV5r"
, b = "multi_select_list--headerRow--22Lao"
, v = "multi_select_list--headerRowDisabled--zG4LU multi_select_list--headerRow--22Lao multi_select_list--_disabled--INopV"
, I = "multi_select_list--checkboxColumn--SgkHV"
, T = "multi_select_list--row--nfio-"
, S = "multi_select_list--unselectedCheckbox--KAaaj"
, w = "multi_select_list--rowWithRoundedBorder--im1TP"
, A = "multi_select_list--notFirstRowInSelectedGroup--3m6oH"
, C = "multi_select_list--notLastRowInSelectedGroup--N4myp"
, N = "multi_select_list--emptyState--QQcOE"
, O = "multi_select_list--checkboxMenuButton--9l3KJ multi_select_list--_menuButtonBase--mqxd7"
, L = "multi_select_list--batchActionCount--R41SC"
, R = "multi_select_list--batchActionClear--7q1Vl"
, P = "multi_select_list--actionButton--D2K4w"
, k = "multi_select_list--dropdownColumnDisabled--Ww1Nl table--column--974RA"
, D = "multi_select_list--longList--Oz-Pp"
, M = "multi_select_list--longListDisabled--x8onM multi_select_list--longList--Oz-Pp multi_select_list--_disabled--INopV"
}
,
594994: (e,t,n)=>{
"use strict";
n.d(t, {
Jw: ()=>o,
Lm: ()=>a,
NQ: ()=>g,
Y1: ()=>m,
ai: ()=>h,
ef: ()=>s,
h3: ()=>r,
hq: ()=>y,
i1: ()=>d,
k_: ()=>l,
li: ()=>p,
q0: ()=>i,
um: ()=>u,
vH: ()=>E,
vL: ()=>c,
xW: ()=>f,
zP: ()=>_
});
let r = "desktop_tool_bar--toolBarSpacerContainer--rLTCP"
, i = "desktop_tool_bar--toolBarSpacerContainerTabletOptimized--0Tv6Q desktop_tool_bar--toolBarSpacerContainer--rLTCP"
, a = "desktop_tool_bar--toolBarContainer--1EjL8"
, o = "desktop_tool_bar--pageViewToolBarContainer--iC3UY desktop_tool_bar--toolBarContainer--1EjL8"
, l = "desktop_tool_bar--settingsModalToolbarStickyContainer--lE8qt"
, s = "desktop_tool_bar--toolBarContainerFullWidth--GT5GG desktop_tool_bar--toolBarContainer--1EjL8"
, d = "desktop_tool_bar--toolBarLeftSide--wJapT text--fontPos13--xW8hS text--_fontBase--QdLsd"
, c = "desktop_tool_bar--toolBarCenter--orkTM"
, u = "desktop_tool_bar--toolBarCenterFullWidth---a4El"
, p = "desktop_tool_bar--toolBarRightSide--XfTEn"
, m = "desktop_tool_bar--toolBarTabContent--a1orn ellipsis--ellipsis--Tjyfa"
, _ = "desktop_tool_bar--toolBarTabContentBase--CoAtY"
, h = "desktop_tool_bar--chevron--zwxsY"
, g = "desktop_tool_bar--adminSettingsToolBarTabContentBase--xaPNN"
, f = "desktop_tool_bar--adminSettingsToolBarTabContentSelected--YOoLG"
, E = "desktop_tool_bar--chevronWithoutPadding--UcjNP"
, y = "desktop_tool_bar--chevronSvgContainer--Fz1VL"
}
,
714786: (e,t,n)=>{
"use strict";
n.d(t, {
AL: ()=>v,
BI: ()=>p,
DL: ()=>d,
Fp: ()=>r,
G7: ()=>_,
Hl: ()=>i,
LH: ()=>f,
MO: ()=>u,
Nn: ()=>I,
VQ: ()=>g,
YM: ()=>y,
e6: ()=>c,
ev: ()=>E,
hv: ()=>h,
j7: ()=>a,
ko: ()=>l,
nP: ()=>o,
vO: ()=>s,
xn: ()=>b,
yH: ()=>m
});
let r = "voice_users--voiceParticipantAvatar--7mhMG"
, i = "voice_users--overflowRow--dyDR2"
, a = "voice_users--nameAndSuffixContainer--GGoKj"
, o = "voice_users--flexContainer--bWLmT"
, l = "voice_users--flexLeftContainer--EVDRS"
, s = "voice_users--flexRightContainer--Su6EL"
, d = "voice_users--voiceParticipantName--MPxav text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, c = "voice_users--participantStatus--cnVtZ"
, u = "voice_users--participantRow--D4Yar"
, p = "voice_users--hoverable--tq5aE"
, m = "voice_users--containsCursor--Wx6C4"
, _ = "voice_users--secondaryMenuIconButtonContainer--aAh8o"
, h = "voice_users--secondaryActionsMenuButton--2emFq"
, g = "voice_users--secondaryActionsMenuButtonActive--QoLJK"
, f = "voice_users--multiplayerUserView--7nAcD"
, E = "voice_users--voiceUsersWrapper--83FhS"
, y = "voice_users--voiceUsersOverflowScrollingContainer--KXSUW"
, b = "voice_users--userSuffix--2OgbZ text--fontPos11--2LvXf text--_fontBase--QdLsd"
, v = "voice_users--voiceUserHeadphonesIcon--wLuPW"
, I = "voice_users--mutedContainer--JL7uZ"
}
,
236238: (e,t,n)=>{
"use strict";
n.d(t, {
N: ()=>r
});
let r = "/** @postcss-export-raw */\n\n/*\n * Stylesheet for all quill editor related content.\n * Branched off of https://cdn.quilljs.com/1.3.6/quill.snow.css\n */\n\n.text-editor {\n border: 1px solid var(--color-border, #d4d4d4);\n border-radius: 3px;\n}\n\n.text-editor:focus-within {\n margin: -1px;\n border: 2px solid var(--color-border-selected, #0d99ff);\n }\n\n[data-fpl-version='ui3'] .text-editor {\n border-radius: var(--radius-medium);\n }\n\n[data-fpl-version='ui3'] .text-editor:focus-within {\n margin: var(--spacer-0);\n border-width: 1px;\n }\n\n.ql-toolbar button {\n border: 1px solid transparent;\n outline: none;\n}\n\n.ql-toolbar button:focus-visible {\n /* stylelint-disable @figma/color-no-deprecated-theme -- TODO: refactor with semantic token */\n border: 1px solid var(--fg-focus);\n /* stylelint-enable @figma/color-no-deprecated-theme */\n /* stylelint-disable @figma/color-no-deprecated-theme -- TODO: refactor with semantic token */\n outline: 1px solid var(--fg-focus);\n /* stylelint-enable @figma/color-no-deprecated-theme */\n outline-offset: -2px;\n }\n\n.ql-toolbar button:focus {\n /* stylelint-disable @figma/color-no-deprecated-theme -- TODO: refactor with semantic token */\n border: 1px solid var(--fg-focus);\n /* stylelint-enable @figma/color-no-deprecated-theme */\n /* stylelint-disable @figma/color-no-deprecated-theme -- TODO: refactor with semantic token */\n outline: 1px solid var(--fg-focus);\n /* stylelint-enable @figma/color-no-deprecated-theme */\n outline-offset: -2px;\n }\n\n.ql-toolbar button:focus:not(:focus-visible) {\n border: 1px solid transparent;\n outline: none;\n }\n\n.ql-container {\n box-sizing: border-box;\n font-size: 11px;\n font-family: Inter, sans-serif;\n height: 100%;\n margin: 0px;\n position: relative;\n background-color: var(--color-bg, transparent);\n}\n\n[data-fpl-version='ui3'] .ql-container {\n border-radius: var(--radius-medium);\n }\n\n[data-fpl-version='ui3'] .ql-container:not(.ql-disabled) {\n /* only add secondary background for non read-only editors in ui3 */\n background-color: var(--color-bg-secondary);\n }\n\n.ql-clipboard {\n left: -100000px;\n height: 1px;\n overflow-y: hidden;\n position: absolute;\n top: 50%;\n}\n\n.ql-hidden {\n display: none;\n}\n\n/**\n * Editor styling\n */\n\n.ql-editor {\n box-sizing: border-box;\n line-height: 1.7;\n height: 100%;\n outline: none;\n overflow-y: auto;\n padding: 6px;\n tab-size: 4;\n -moz-tab-size: 4;\n text-align: left;\n white-space: pre-wrap;\n word-wrap: break-word;\n max-height: 304px;\n}\n\n[data-fpl-version='ui3'] .ql-editor {\n padding: calc(var(--spacer-1) - 1px) calc(var(--spacer-2) - 1px);\n }\n\n/*\n * Styling for rendering the placeholder text. We differ from quill's styling\n * of the placeholder text so that we can support placeholders with multiple\n * lines without overflowing the editor.\n * See https://github.com/quilljs/quill/issues/2413 for more details.\n */\n\n.ql-editor.ql-blank::after {\n color: var(--color-text-tertiary, #b3b3b3);\n content: attr(data-placeholder);\n pointer-events: none;\n display: block;\n /* Match editor line-height */\n margin-top: -1.7em;\n}\n\n:not(.quill_editor--quill-readonly--Jvz-F) > .quill_editor--ql-editor--EzYln {\n min-height: 80px;\n}\n\n.ql-editor > * {\n cursor: text;\n}\n\n.ql-editor p,\n.ql-editor ol,\n.ql-editor ul,\n.ql-editor pre,\n.ql-editor blockquote,\n.ql-editor h1,\n.ql-editor h2 {\n color: var(--color-text, #333333);\n margin: 0;\n padding: 0;\n counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;\n}\n\n.ql-editor strong {\n font-weight: bold;\n}\n\n.ql-editor h1 {\n font-size: 18px;\n font-weight: bold;\n}\n\n.ql-editor h2 {\n font-size: 14px;\n font-weight: bold;\n}\n\n.ql-editor em {\n font-style: italic;\n}\n\n.ql-editor s {\n -webkit-text-decoration: line-through;\n text-decoration: line-through;\n}\n\n.ql-editor a {\n color: var(--color-text-brand, #0d99ff);\n cursor: pointer;\n}\n\n.ql-editor a:hover {\n -webkit-text-decoration: underline;\n text-decoration: underline;\n }\n\n.ql-editor ol,\n.ql-editor ul {\n padding-left: 2em;\n list-style-type: none;\n}\n\n.ql-editor ul > li::before {\n content: '\\2022';\n}\n\n.ql-editor li::before {\n display: inline-block;\n white-space: nowrap;\n width: 1.2em;\n}\n\n.ql-editor li:not(.ql-direction-rtl)::before {\n margin-left: -1.5em;\n margin-right: 0.3em;\n text-align: right;\n}\n\n.ql-editor ol li {\n counter-increment: list-0;\n}\n\n.ql-editor ol li::before {\n content: counter(list-0, decimal) '. ';\n}\n\n.ql-editor code,\n.ql-editor pre.ql-syntax {\n background-color: var(--color-bg-secondary, #f0f0f0);\n border-radius: 3px;\n font-family: 'Roboto Mono';\n}\n\n.ql-editor pre.ql-syntax {\n padding: 2px 4px;\n white-space: break-spaces;\n}\n\n.ql-editor code {\n padding: 0px 4px;\n}\n\n/**\n * Readonly editor styling\n */\n\n.quill-readonly .ql-editor {\n padding: 0px;\n font-size: 14px;\n min-height: none !important;\n max-height: none;\n}\n\n.quill-readonly .ql-editor h1 {\n font-size: 24px;\n}\n\n.quill-readonly .ql-editor h2 {\n font-size: 18px;\n}\n\n/**\n * Toolbar styling\n */\n\n.ql-toolbar {\n padding-left: 4px;\n border-top: 1px solid var(--color-border, rgba(0, 0, 0, 0.1));\n bottom: 0;\n background: var(--color-bg, #fff);\n}\n\n[data-fpl-version='ui3'] .ql-toolbar {\n border-radius: var(--spacer-0) var(--spacer-0) var(--radius-medium) var(--radius-medium);\n }\n\n.ql-toolbar button {\n background: none;\n display: inline-block;\n height: 26px;\n width: 26px;\n margin: 4px 1px;\n box-sizing: border-box;\n border-radius: 3px;\n}\n\n.ql-toolbar button:hover {\n background: var(--color-bg-hover, #f0f0f0);\n }\n\n.ql-toolbar button.ql-active {\n background: var(--color-bg-selected, #f0f0f0);\n }\n\n.ql-toolbar svg {\n float: none;\n margin: 0 auto;\n}\n\n.ql-toolbar button path {\n fill: var(--color-icon, #000);\n}\n\n.ql-toolbar button.disabled {\n background: none;\n}\n\n.ql-toolbar button.disabled:hover {\n background: none;\n }\n\n.ql-toolbar button.disabled path {\n fill: var(--color-icon-disabled, rgba(0, 0, 0, 0.3));\n}\n\n/*\n * Tooltip styling\n */\n\n.ql-tooltip {\n position: absolute;\n transform: translateY(10px);\n z-index: 1;\n background-color: var(--color-bg-tooltip, #fff);\n border: 1px solid var(--color-border-tooltip, #d4d4d4);\n box-shadow: 0px 4px 14px var(--color-border-tooltip, rgba(0, 0, 0, 0.1));\n color: var(--color-text-tooltip, #333333);\n white-space: nowrap;\n border-radius: 3px;\n}\n\n.ql-tooltip.ql-editing input[type='text'] {\n background-color: var(--color-bg-tooltip, transparent);\n display: inline-block;\n font-size: 12px;\n color: var(--color-text-tooltip, #333333);\n height: 28px;\n margin: 0px;\n width: 170px;\n padding: 0px 12px;\n border-radius: 3px;\n}\n\n.ql-tooltip a.ql-preview {\n display: inline-block;\n overflow-x: hidden;\n text-overflow: ellipsis;\n vertical-align: top;\n padding-left: 12px;\n width: 170px;\n padding: 7px 12px;\n color: var(--color-text-tooltip, #333333);\n}\n\n.ql-tooltip a.ql-action {\n padding: 7px 0px;\n width: 54px;\n border-left: 1px solid var(--color-border-tooltip, #d4d4d4);\n display: inline-block;\n text-align: center;\n -webkit-text-decoration: none;\n text-decoration: none;\n}\n\n.ql-tooltip a.ql-action::after {\n content: 'Edit';\n font-size: 12px;\n}\n\n.ql-tooltip.ql-editing a.ql-action::after {\n border-right: 0px;\n content: 'Save';\n padding-right: 0px;\n}\n\n/* Input should only be shown when we are in edit mode (ie. has .ql-editing) */\n\n.ql-tooltip input[type=text],\n\n.ql-tooltip.ql-editing a.ql-preview,\n.ql-tooltip.ql-editing a.ql-preview,\n\n.ql-tooltip.ql-editing a.ql-remove {\n display: none;\n}\n\n.quill-hide-toolbar {\n display: none;\n}\n"
}
,
427371: (e,t,n)=>{
"use strict";
n.d(t, {
GE: ()=>s,
KQ: ()=>o,
QH: ()=>a,
Sw: ()=>i,
_J: ()=>r,
ky: ()=>l,
lx: ()=>d,
qh: ()=>c
});
let r = "loading_content--shimmerAnimation--qZjRw"
, i = "loading_content--shimmerOnMenuAnimation--U9c8t loading_content--shimmerAnimation--qZjRw"
, a = "loading_content--lightShimmerAnimation--Iz23-"
, o = "loading_content--loadingText--MFUIw"
, l = "loading_content--loadingTextOnMenu--WrELp loading_content--loadingText--MFUIw"
, s = "loading_content--loadingImage--eB8Kt"
, d = "loading_content--loadingPrimary--HsesM"
, c = "loading_content--fileLoadUiPlaceholder--kL-tu"
}
,
31486: (e,t,n)=>{
"use strict";
n.d(t, {
C: ()=>r,
j: ()=>i
});
let r = "show_more_button--showMore--ZV0ki text--fontPos11--2LvXf text--_fontBase--QdLsd"
, i = "show_more_button--overflow--0MYbW"
}
,
803258: (e,t,n)=>{
"use strict";
n.d(t, {
A4: ()=>M,
CK: ()=>b,
Cu: ()=>U,
Dv: ()=>w,
FR: ()=>i,
GC: ()=>u,
GV: ()=>m,
PP: ()=>p,
RK: ()=>k,
SA: ()=>P,
SC: ()=>S,
Sl: ()=>c,
Tr: ()=>L,
VA: ()=>T,
Vj: ()=>O,
W0: ()=>A,
WM: ()=>D,
XK: ()=>a,
ZL: ()=>v,
_O: ()=>f,
_h: ()=>l,
ag: ()=>N,
dp: ()=>s,
gO: ()=>C,
h5: ()=>y,
h7: ()=>h,
kL: ()=>r,
m2: ()=>o,
m4: ()=>I,
mi: ()=>E,
ol: ()=>x,
q6: ()=>g,
su: ()=>F,
vS: ()=>R,
yl: ()=>d,
z6: ()=>_
});
let r = "generic_tile_DEPRECATED--container--XotGi"
, i = "generic_tile_DEPRECATED--selectedContainer--ybkd4 generic_tile_DEPRECATED--container--XotGi"
, a = "generic_tile_DEPRECATED--tileBorder---DBQk"
, o = "generic_tile_DEPRECATED--subtitleWrapperInner--ncwf-"
, l = "generic_tile_DEPRECATED--ghostTileBorder--US6Km generic_tile_DEPRECATED--tileBorder---DBQk"
, s = "generic_tile_DEPRECATED--pinned--F0lfA"
, d = "generic_tile_DEPRECATED--genericTile--6ezs8"
, c = "generic_tile_DEPRECATED--image--ikVLI"
, u = "generic_tile_DEPRECATED--pinnedRedesign--i6MZ0"
, p = "generic_tile_DEPRECATED--pinnedThumbnail--GKIev"
, m = "generic_tile_DEPRECATED--pinnedSelected--n456I"
, _ = "generic_tile_DEPRECATED--pinnedTitle--f8Npi text--fontPos13--xW8hS text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, h = "generic_tile_DEPRECATED--pinnedSubtitle--OhsW- ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd generic_tile_DEPRECATED--flexHorizontally--kRrGY ellipsis--ellipsis--Tjyfa"
, g = "generic_tile_DEPRECATED--bottomControls--Ro4JX"
, f = "generic_tile_DEPRECATED--listView--5yggJ text--fontPos13--xW8hS text--_fontBase--QdLsd"
, E = "generic_tile_DEPRECATED--listContainerWithStar--jGD5K"
, y = "generic_tile_DEPRECATED--listViewSlightlyLarger--QwvP6 generic_tile_DEPRECATED--listView--5yggJ text--fontPos13--xW8hS text--_fontBase--QdLsd"
, b = "generic_tile_DEPRECATED--gridView--ICika"
, v = "generic_tile_DEPRECATED--tileBorderWithHover--JX2to"
, I = "generic_tile_DEPRECATED--standaloneFileTile--lmMfZ generic_tile_DEPRECATED--container--XotGi"
, T = "generic_tile_DEPRECATED--subtitle--SkL2a ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd generic_tile_DEPRECATED--flexHorizontally--kRrGY"
, S = "generic_tile_DEPRECATED--subtitleContainer--y18L5"
, w = "generic_tile_DEPRECATED--disabledSubtitle--yTOPL generic_tile_DEPRECATED--subtitle--SkL2a ellipsis--ellipsis--Tjyfa text--fontPos11--2LvXf text--_fontBase--QdLsd generic_tile_DEPRECATED--flexHorizontally--kRrGY"
, A = "generic_tile_DEPRECATED--settings--cInfj"
, C = "generic_tile_DEPRECATED--ellipsis--jqPWA ellipsis--ellipsis--Tjyfa"
, N = "generic_tile_DEPRECATED--subtitleMetadata--94sE7 text--fontPos11--2LvXf text--_fontBase--QdLsd ellipsis--ellipsis--Tjyfa"
, O = "generic_tile_DEPRECATED--modifiedMetadata--AphD2"
, L = "generic_tile_DEPRECATED--genericTileRedesign--ySqO2"
, R = "generic_tile_DEPRECATED--topLeftControls--hrfPC"
, P = "generic_tile_DEPRECATED--topRightControls--bIPIz"
, k = "generic_tile_DEPRECATED--visible--dakmY"
, D = "generic_tile_DEPRECATED--facepile--MZY4B"
, M = "generic_tile_DEPRECATED--control--xjbn-"
, F = "generic_tile_DEPRECATED--branchIndicator--xy-8Y"
, x = "generic_tile_DEPRECATED--viewOnlyLabel--4apxb"
, U = "generic_tile_DEPRECATED--itemsViewTitle--Uxr-A"
}
,
163771: (e,t,n)=>{
"use strict";
n.d(t, {
Nz: ()=>o,
Pf: ()=>a,
bb: ()=>i,
zr: ()=>r
});
let r = "truncated_text--root--kx5Ta ellipsis--ellipsis--Tjyfa"
, i = "truncated_text--rootTruncateStart--aClXJ"
, a = "truncated_text--directionFix--T1NOI"
, o = "/** @postcss-export-raw */\n\n.truncated_text--root--kx5Ta.truncated_text--rootTruncateStart--aClXJ {\n /* Note that this should be flipped when we support RTL languages */\n direction: rtl;\n text-align: left;\n }\n\n.truncated_text--directionFix--T1NOI {\n /* Note that this should be flipped when we support RTL languages */\n direction: ltr;\n unicode-bidi: bidi-override;\n}\n"
}
,
108545: (e,t,n)=>{
"use strict";
n.d(t, {
Id: ()=>d,
MW: ()=>c,
MZ: ()=>f,
R2: ()=>y,
RO: ()=>_,
Rn: ()=>m,
Vt: ()=>l,
X8: ()=>o,
Yp: ()=>u,
gC: ()=>p,
kL: ()=>r,
o1: ()=>a,
o2: ()=>E,
rf: ()=>i,
ub: ()=>h,
ut: ()=>s,
wI: ()=>g
});
let r = "base_cookie_banner--container--nUKFl"
, i = "base_cookie_banner--body--lPBYi"
, a = "base_cookie_banner--actions--1LAhr"
, o = "base_cookie_banner--dismiss--gdSyk"
, l = "base_cookie_banner--container__community--oc-bP"
, s = "base_cookie_banner--container__fileViewer--522-P"
, d = "base_cookie_banner--container__prototype--A1a4y"
, c = "base_cookie_banner--dismissIcon--0O2Nl"
, u = "base_cookie_banner--container__auth--okjXC"
, p = "base_cookie_banner--container__authOrCommunity--cqdOl"
, m = "base_cookie_banner--brandButton__small--a85Tk"
, _ = "base_cookie_banner--fileViewer__persistentMessage--2cPck"
, h = "base_cookie_banner--fileViewer__persistentMessage_dark--p4-Bd"
, g = "base_cookie_banner--fileViewer__persistentMessage_light---AVp5"
, f = "base_cookie_banner--community__persistentMessage--TM90N"
, E = "base_cookie_banner--community__persistentMessage__link--WTjS9"
, y = "base_cookie_banner--community__persistentMessage__tooltip--g-KBY"
}
,
781779: (e,t,n)=>{
"use strict";
n.d(t, {
$C9: ()=>k,
$bS: ()=>eq,
$rq: ()=>L,
A4R: ()=>eA,
A8q: ()=>c,
ANi: ()=>eg,
AfN: ()=>eC,
Ah3: ()=>ec,
B95: ()=>et,
BYv: ()=>_,
Bj4: ()=>C,
DE6: ()=>ey,
DN5: ()=>ej,
Deq: ()=>A,
Dmn: ()=>s,
DrJ: ()=>T,
FQK: ()=>e$,
FXh: ()=>l,
G0Y: ()=>x,
H2Y: ()=>h,
JIG: ()=>eo,
JIO: ()=>ei,
JTC: ()=>R,
K4N: ()=>eX,
KsR: ()=>d,
L2H: ()=>a,
LLI: ()=>eL,
Men: ()=>P,
N06: ()=>V,
PN4: ()=>b,
PNM: ()=>es,
PQh: ()=>e3,
Pom: ()=>H,
Pp8: ()=>en,
PyT: ()=>J,
Q1z: ()=>e2,
Q2j: ()=>eG,
QQQ: ()=>I,
Qwb: ()=>z,
R3c: ()=>S,
RO$: ()=>j,
RZc: ()=>u,
RvK: ()=>e4,
SWq: ()=>ee,
Sb0: ()=>K,
T2K: ()=>eZ,
Tdi: ()=>ep,
UGg: ()=>p,
Uwv: ()=>el,
VmQ: ()=>v,
WGG: ()=>g,
Wnq: ()=>D,
Wsi: ()=>eS,
X8K: ()=>eF,
Z6Z: ()=>U,
ZzJ: ()=>e1,
_ML: ()=>ew,
_PR: ()=>eN,
_xV: ()=>ea,
aT2: ()=>eJ,
azl: ()=>eB,
bug: ()=>Y,
c6S: ()=>eD,
c7Y: ()=>w,
dVU: ()=>O,
eNb: ()=>eU,
eg4: ()=>r,
evO: ()=>eb,
fUI: ()=>eP,
fVX: ()=>e_,
fhv: ()=>eV,
gnN: ()=>eI,
h3h: ()=>eK,
i4b: ()=>eY,
iUm: ()=>eW,
iow: ()=>ek,
isV: ()=>W,
jRe: ()=>M,
jcP: ()=>eM,
k0u: ()=>$,
k7k: ()=>er,
mOe: ()=>ex,
n7z: ()=>eO,
nG7: ()=>eh,
nLX: ()=>eQ,
o$v: ()=>e0,
oK_: ()=>Q,
oWd: ()=>Z,
p57: ()=>eR,
pZ4: ()=>eH,
qHh: ()=>em,
qmD: ()=>G,
qtk: ()=>ef,
t1f: ()=>X,
tr1: ()=>E,
ttE: ()=>f,
uAC: ()=>m,
vDw: ()=>ed,
vYY: ()=>ev,
vhn: ()=>F,
w3r: ()=>N,
wO8: ()=>eu,
wRm: ()=>i,
wlp: ()=>eT,
xif: ()=>y,
xri: ()=>B,
xuz: ()=>eE,
yGx: ()=>ez,
z8Z: ()=>e5,
zo1: ()=>o,
ztz: ()=>q
});
let r = "#e5e5e5"
, i = "#0d99ff"
, a = "#9747ff"
, o = "#1bc47d"
, l = "#f531b3"
, s = "#00b5ce"
, d = "#ffc700"
, c = "#7b61ff"
, u = "#0d99ff"
, p = "#1bc47d"
, m = "#f24e1e"
, _ = "#ffc700"
, h = "#0fa958"
, g = "#5551ff"
, f = "#a259ff"
, E = "#000"
, y = "rgba(0, 0, 0, 0.06)"
, b = "rgba(0, 0, 0, 0.8)"
, v = "#fff"
, I = "#333333"
, T = "#fff"
, S = "#000"
, w = "rgba(0, 0, 0, 0.1)"
, A = "#e6e6e6"
, C = "rgba(0, 0, 0, 0.03)"
, N = "#667799"
, O = "#007be5"
, L = "#9747ff"
, R = "#ff24bd"
, P = "#f24822"
, k = "#ffcd29"
, D = "#14ae5c"
, M = "rgba(30, 30, 30, 1)"
, F = "rgba(117, 117, 117, 1)"
, x = "rgba(77, 77, 77, 1)"
, U = "rgba(179, 179, 179, 1)"
, B = "rgba(230, 230, 230, 1)"
, V = "rgba(242, 72, 34, 1)"
, H = "rgba(255, 199, 194, 1)"
, G = "rgba(255, 166, 41, 1)"
, W = "rgba(252, 209, 156, 1)"
, K = "rgba(255, 205, 41, 1)"
, z = "rgba(255, 232, 163, 1)"
, j = "rgba(20, 174, 92, 1)"
, Y = "rgba(175, 244, 198, 1)"
, $ = "rgba(13, 153, 255, 1)"
, Z = "rgba(189, 227, 255, 1)"
, q = "rgba(151, 71, 255, 1)"
, J = "rgba(228, 204, 255, 1)"
, X = "rgba(255, 255, 255, 1)"
, Q = "rgba(175, 188, 207, 1)"
, ee = "rgba(255, 175, 163, 1)"
, et = "rgba(255, 196, 112, 1)"
, en = "rgba(255, 217, 102, 1)"
, er = "rgba(133, 224, 163, 1)"
, ei = "rgba(128, 202, 255, 1)"
, ea = "rgba(217, 184, 255, 1)"
, eo = "rgba(255, 189, 242, 1)"
, el = "rgba(230, 230, 230, 1)"
, es = "rgba(151, 151, 151, 1)"
, ed = "rgba(255, 153, 248, 1)"
, ec = "rgba(255, 174, 79, 1)"
, eu = "rgba(255, 238, 0, 1)"
, ep = "rgba(134, 250, 22, 1)"
, em = "rgba(111, 255, 246, 1)"
, e_ = "rgba(179, 143, 255, 1)"
, eh = "rgba(255, 255, 255, 1)"
, eg = "rgba(175, 175, 175, 1)"
, ef = "rgba(255, 160, 249, 1)"
, eE = "rgba(255, 184, 104, 1)"
, ey = "rgba(255, 242, 52, 1)"
, eb = "rgba(174, 255, 97, 1)"
, ev = "rgba(126, 255, 247, 1)"
, eI = "rgba(188, 155, 255, 1)"
, eT = "rgba(255, 255, 255, 1)"
, eS = "rgba(17, 17, 17, 1)"
, ew = "rgba(117, 117, 117, 1)"
, eA = "rgba(217, 217, 217, 1)"
, eC = "rgba(224, 62, 26, 1)"
, eN = "rgba(251, 188, 182, 1)"
, eO = "rgba(247, 151, 34, 1)"
, eL = "rgba(255, 196, 112, 1)"
, eR = "rgba(243, 193, 27, 1)"
, eP = "rgba(249, 223, 144, 1)"
, ek = "rgba(25, 143, 81, 1)"
, eD = "rgba(161, 232, 185, 1)"
, eM = "rgba(12, 140, 233, 1)"
, eF = "rgba(168, 215, 250, 1)"
, ex = "rgba(138, 56, 245, 1)"
, eU = "rgba(214, 182, 251, 1)"
, eB = "rgba(255, 255, 255, 1)"
, eV = "rgba(102, 119, 153, 1)"
, eH = "rgba(242, 72, 34, 1)"
, eG = "rgba(255, 166, 41, 1)"
, eW = "rgba(255, 205, 41, 1)"
, eK = "rgba(20, 174, 92, 1)"
, ez = "rgba(13, 153, 255, 1)"
, ej = "rgba(151, 71, 255, 1)"
, eY = "rgba(255, 36, 189, 1)"
, e$ = "rgba(230, 230, 230, 1)"
, eZ = "rgba(175, 188, 207, 1)"
, eq = "rgba(252, 163, 151, 1)"
, eJ = "rgba(255, 196, 112, 1)"
, eX = "rgba(247, 209, 95, 1)"
, eQ = "rgba(121, 210, 151, 1)"
, e0 = "rgba(124, 196, 248, 1)"
, e1 = "rgba(209, 168, 255, 1)"
, e2 = "rgba(253, 156, 224, 1)"
, e3 = "rgba(230, 230, 230, 1)"
, e5 = "#efefef"
, e4 = "#f8f8f8"
}
,
860168: (e,t,n)=>{
"use strict";
n.d(t, {
$tX: ()=>e_,
B6G: ()=>tm,
BuT: ()=>eL,
CE4: ()=>te,
CsP: ()=>eZ,
Dts: ()=>td,
DxS: ()=>ep,
E1c: ()=>tU,
EJM: ()=>tW,
EaT: ()=>tO,
Eg1: ()=>eO,
Ep1: ()=>e6,
Ero: ()=>C,
Evg: ()=>Q,
Flg: ()=>eE,
Gu0: ()=>eu,
HJx: ()=>tG,
HU0: ()=>e2,
Hsg: ()=>eH,
Hvv: ()=>p,
IKB: ()=>eT,
ISO: ()=>tV,
IuL: ()=>tv,
J4v: ()=>z,
KAq: ()=>ei,
Ko3: ()=>G,
Kyn: ()=>eg,
LDP: ()=>en,
LQy: ()=>tI,
Lbn: ()=>e0,
LdP: ()=>l,
M$q: ()=>H,
M0y: ()=>ey,
MGP: ()=>W,
MJh: ()=>g,
MNc: ()=>eA,
MPx: ()=>tA,
N21: ()=>tN,
N6y: ()=>eK,
NJv: ()=>ti,
Nqv: ()=>eo,
Ocz: ()=>B,
P4e: ()=>y,
PXB: ()=>eW,
PXO: ()=>tc,
QBm: ()=>ed,
QP5: ()=>tr,
Qhc: ()=>J,
QtA: ()=>P,
RAo: ()=>m,
Rl: ()=>e3,
RtY: ()=>ee,
Rv9: ()=>et,
SKA: ()=>eR,
TdR: ()=>S,
U1R: ()=>b,
UEm: ()=>x,
URh: ()=>tf,
V51: ()=>eY,
VJh: ()=>w,
W8e: ()=>eI,
WPY: ()=>Z,
Ww7: ()=>ef,
XMZ: ()=>c,
Xhb: ()=>eq,
Xz5: ()=>tl,
YEj: ()=>tg,
YI7: ()=>X,
YPH: ()=>tD,
YQL: ()=>tp,
Y_2: ()=>eV,
Yoj: ()=>tt,
Yr1: ()=>eN,
Ytf: ()=>t_,
Yub: ()=>tn,
ZAq: ()=>tx,
ZB$: ()=>E,
ZI8: ()=>k,
_C6: ()=>O,
aHA: ()=>ew,
aIx: ()=>_,
aqw: ()=>a,
avG: ()=>d,
bH0: ()=>ej,
bb$: ()=>e1,
bnr: ()=>V,
d8i: ()=>D,
dGl: ()=>r,
dOH: ()=>A,
dxy: ()=>M,
eZi: ()=>N,
ea4: ()=>tT,
ejp: ()=>eB,
f8Z: ()=>ez,
fAD: ()=>th,
fWT: ()=>tb,
fXD: ()=>tu,
fh1: ()=>tw,
g8m: ()=>tj,
gNA: ()=>K,
glm: ()=>R,
h4P: ()=>o,
h63: ()=>T,
hVg: ()=>tH,
hhC: ()=>e7,
iRR: ()=>tB,
i_6: ()=>ex,
iah: ()=>eD,
if6: ()=>tS,
ikM: ()=>tz,
j4N: ()=>h,
jNX: ()=>Y,
jUW: ()=>f,
jkd: ()=>eJ,
jl4: ()=>ty,
jmC: ()=>eb,
k$X: ()=>tK,
k22: ()=>tF,
kLz: ()=>tk,
kaq: ()=>e5,
lRB: ()=>tE,
lli: ()=>tR,
ltq: ()=>L,
m52: ()=>U,
m8f: ()=>eS,
md8: ()=>eQ,
ms_: ()=>tM,
ngI: ()=>v,
nnJ: ()=>eU,
oBL: ()=>e4,
oVP: ()=>eh,
p3_: ()=>tC,
pXQ: ()=>i,
paq: ()=>eM,
q9j: ()=>es,
qoo: ()=>to,
qvA: ()=>I,
qzr: ()=>e$,
r4G: ()=>eG,
rDe: ()=>eP,
rJv: ()=>em,
rY4: ()=>ts,
rZj: ()=>ek,
tUy: ()=>er,
tgj: ()=>u,
tj9: ()=>e8,
tui: ()=>s,
u24: ()=>ta,
uRR: ()=>ev,
uj0: ()=>el,
v5y: ()=>$,
vPu: ()=>tP,
vdd: ()=>j,
wOr: ()=>F,
wQn: ()=>e9,
wgS: ()=>q,
wkK: ()=>eF,
xM9: ()=>ea,
y9S: ()=>ec,
yNw: ()=>tL,
yUQ: ()=>eC,
zK5: ()=>eX
});
let r = "8px"
, i = "32px"
, a = "16px"
, o = "64px"
, l = "48px"
, s = "48px"
, d = "56px"
, c = "48px"
, u = "645px"
, p = "264px"
, m = "8px"
, _ = "380px"
, h = "12px"
, g = "60px"
, f = "24px"
, E = "54px"
, y = "48px"
, b = "1256px"
, v = "84px"
, I = "1056px"
, T = "290px"
, S = "365px"
, w = "560px"
, A = "906px"
, C = "800px"
, N = "400px"
, O = "760px"
, L = "600px"
, R = "450px"
, P = "48px"
, k = "1440px"
, D = "1230px"
, M = "1024px"
, F = "600px"
, x = "180px"
, U = "24px"
, B = "32px"
, V = "30px"
, H = "12px"
, G = "40px"
, W = "40px"
, K = "32px"
, z = "8px"
, j = "32px"
, Y = 28
, $ = "8px"
, Z = "140px"
, q = "34px"
, J = "320px"
, X = "40px"
, Q = "640px"
, ee = 1.778
, et = "32px"
, en = "80px"
, er = "40px"
, ei = "32px"
, ea = "32px"
, eo = "32px"
, el = "240px"
, es = "320px"
, ed = "1px"
, ec = "20px"
, eu = "24px"
, ep = "224px"
, em = "224px"
, e_ = "32px"
, eh = "378px"
, eg = "536px"
, ef = "620px"
, eE = "40px"
, ey = "264px"
, eb = "888px"
, ev = "720px"
, eI = "16px"
, eT = "12px"
, eS = "8px"
, ew = "320px"
, eA = "56px"
, eC = "112px"
, eN = "64px"
, eO = "51px"
, eL = "44px"
, eR = "680px"
, eP = "320px"
, ek = "40px"
, eD = "16px"
, eM = "64px"
, eF = "320px"
, ex = "16px"
, eU = "1250px"
, eB = "1680px"
, eV = "1320px"
, eH = "1500px"
, eG = "5px"
, eW = "16px"
, eK = "216px"
, ez = "84px"
, ej = "52px"
, eY = "318px"
, e$ = "184px"
, eZ = "286px"
, eq = "34px"
, eJ = "36px"
, eX = "318px"
, eQ = "180px"
, e0 = "300px"
, e1 = "397px"
, e2 = "8px"
, e3 = "216px"
, e5 = "240px"
, e4 = "40px"
, e6 = "28px"
, e8 = "240px"
, e7 = "240px"
, e9 = "304px"
, te = "6px"
, tt = "8px"
, tn = "6px"
, tr = "320px"
, ti = "360px"
, ta = "36px"
, to = "42px"
, tl = "256px"
, ts = "240px"
, td = "2px"
, tc = "460px"
, tu = "596px"
, tp = "864px"
, tm = "48px"
, t_ = "1280px"
, th = "905px"
, tg = "1164px"
, tf = "1285px"
, tE = "1423px"
, ty = "54px"
, tb = "80px"
, tv = "96px"
, tI = "92px"
, tT = "52px"
, tS = "12px"
, tw = "32px"
, tA = "160px"
, tC = "90px"
, tN = "24px"
, tO = "16px"
, tL = "240px"
, tR = "750px"
, tP = "184px"
, tk = "120px"
, tD = "32px"
, tM = "12px"
, tF = "260px"
, tx = "64px"
, tU = "344px"
, tB = "4px"
, tV = "100px"
, tH = "18px"
, tG = "768px"
, tW = "768px"
, tK = "32px"
, tz = "645px"
, tj = "1024px"
}
,
194792: (e,t,n)=>{
"use strict";
n.d(t, {
R1: ()=>o,
Wb: ()=>r,
Zo: ()=>l,
_S: ()=>i,
zS: ()=>a
});
let r = 6
, i = 8
, a = 7
, o = 7
, l = 9
}
,
146935: (e,t,n)=>{
"use strict";
n.r(t),
n.d(t, {
adminBulkActionsBarZ: ()=>s7,
adminNavBarZ: ()=>dn,
approvedLibrariesTooltipMaxWidth: ()=>rJ,
audioSettingsModalDropdownWidthUI3: ()=>ac,
audioSettingsModalWidthUI3: ()=>ad,
autosaveBanner: ()=>sh,
bannerZ: ()=>so,
baseFontSize__DEPRECATED: ()=>oK,
bigBtnBorderRadius: ()=>oY,
black_1000_dark: ()=>dX,
black_1000_light: ()=>dJ,
black_100_dark: ()=>dq,
black_100_light: ()=>dZ,
black_200_dark: ()=>d0,
black_200_light: ()=>dQ,
black_300_dark: ()=>d2,
black_300_light: ()=>d1,
black_400_dark: ()=>d5,
black_400_light: ()=>d3,
black_500_dark: ()=>d6,
black_500_light: ()=>d4,
black_600_dark: ()=>d7,
black_600_light: ()=>d8,
black_700_dark: ()=>ce,
black_700_light: ()=>d9,
black_800_dark: ()=>cn,
black_800_light: ()=>ct,
black_900_dark: ()=>ci,
black_900_light: ()=>cr,
blue_1000_dark: ()=>cl,
blue_1000_light: ()=>cs,
blue_100_dark: ()=>ca,
blue_100_light: ()=>co,
blue_200_dark: ()=>cd,
blue_200_light: ()=>cc,
blue_300_dark: ()=>cu,
blue_300_light: ()=>cp,
blue_400_dark: ()=>cm,
blue_400_light: ()=>c_,
blue_500_dark: ()=>ch,
blue_500_light: ()=>cg,
blue_600_dark: ()=>cf,
blue_600_light: ()=>cE,
blue_700_dark: ()=>cy,
blue_700_light: ()=>cb,
blue_800_dark: ()=>cv,
blue_800_light: ()=>cI,
blue_900_dark: ()=>cT,
blue_900_light: ()=>cS,
branchingModalHeight: ()=>lx,
branchingSidebarWidth: ()=>lF,
btnBorderRadius: ()=>oj,
canvasMentionsTypeaheadZ: ()=>sZ,
canvasPointerZ: ()=>dc,
checkerboardBackgroundLighterSvg: ()=>dj,
checkerboardBackgroundSvg: ()=>dz,
commentThreadBuffer: ()=>oP,
commentThreadCanvasMargin: ()=>ok,
commentThreadHeaderHeight: ()=>oF,
commentThreadInnerMargin: ()=>oM,
commentThreadMargins: ()=>oR,
commentThreadOuterMargin: ()=>oD,
commentTypeaheadOneLineSuggestionsWidth: ()=>oH,
commentTypeaheadWidth: ()=>oB,
commentsEmojiPickerZ: ()=>sr,
commentsModalPadding: ()=>aG,
commentsNextCursor: ()=>d$,
communityCTABtnHeight: ()=>rA,
communityCardHoverZ: ()=>sy,
communityFeedPageFeedControlsCreatorDropdownBreakpoint: ()=>rx,
communityFeedPageFeedControlsEditorDropdownBreakpoint: ()=>rU,
communityGlobalNavDropdownBreakpoint: ()=>r_,
communityGlobalNavNavigationChenvronWidth: ()=>rh,
communityGlobalNavSearchCollapseBreakpoint: ()=>rg,
communityGlobalNavSearchDropdownWidth: ()=>rf,
communityHubFileFullscreenMargin: ()=>rV,
communityHubProfilePageMobileBreakpoint: ()=>rR,
communityHubPublishModalWidth: ()=>rO,
communityHubRedesignedHomepageSearchDropdownWidth: ()=>rD,
communityHubRedesignedHomepageSearchWidth: ()=>rM,
communityHubResourcePageCommentMobileBreakpoint: ()=>rk,
communityHubResourcePageDesktopBreakpoint: ()=>rL,
communityHubResourcePageMobileBreakpoint: ()=>rP,
communityHubResourcePreviewCorners: ()=>rH,
communityMaxContainerWidth: ()=>rE,
communityMobileStickyFooterButtonWidth: ()=>rB,
communityProfileLargeDesktopMinBreakpoint: ()=>rG,
communityProfileMobileMaxBreakpoint: ()=>rj,
communityProfileMobileMetricStatsMaxBreakpoint: ()=>rz,
communityProfileSmallDesktopMinBreakpoint: ()=>rW,
communityProfileSmallTabletMaxBreakpoint: ()=>rK,
communityResourceDetailViewHeaderHeight: ()=>rC,
communityResourceDetailViewHeaderHeightShrunk: ()=>rN,
communityViewerMaxHeight: ()=>r$,
communityViewerMaxWidth: ()=>rY,
compareChangesImagesHeight: ()=>lN,
compareChangesLayersListWidth: ()=>lM,
compareChangesModalChangeDetailsHeight: ()=>lk,
compareChangesModalContainerHeight: ()=>lP,
compareChangesModalHeaderHeight: ()=>lL,
compareChangesModalHeight: ()=>lD,
compareChangesModalWidth: ()=>lO,
compareChangesSubheaderHeight: ()=>lR,
compareImagesHeight: ()=>lC,
componentPropIconPurple: ()=>nm,
componentPropPillPurple: ()=>np,
componentSidebarUpsellHeight: ()=>lA,
computedPropertiesThumbnailPreviewHeight: ()=>l4,
computedPropertiesThumbnailPreviewPadding: ()=>l6,
computedPropertiesThumbnailPreviewWidth: ()=>l5,
confidentialityBannerZ: ()=>dI,
contextMenuZ: ()=>d_,
cookieBannerZ: ()=>dy,
cookieBannerZ__community: ()=>db,
curatorTertiaryModalZ: ()=>sJ,
cursorChatZ: ()=>ds,
defaultCornerRadius: ()=>oz,
defaultDropdownWidth: ()=>iX,
delightfulToolbarBannerHeight: ()=>lr,
delightfulToolbarHeight: ()=>li,
delightfulToolbarHeightAndMargin: ()=>ls,
delightfulToolbarMargin: ()=>la,
delightfulToolbarOffsetForMakeSomethingV2: ()=>lc,
delightfulToolbarTooltipHeight: ()=>ll,
delightfulToolbarZ: ()=>sY,
designToolbarHeight: ()=>nx,
devHandoffAssetPreviewMaxHeight: ()=>iv,
devHandoffAssetPreviewMaxWidth: ()=>ib,
devHandoffBottomMargin: ()=>ru,
devHandoffBottomUIHeightAndMargin: ()=>rp,
devHandoffCodePanelHeaderHeight: ()=>iG,
devHandoffComponentPreviewMaxHeight: ()=>iE,
devHandoffDefaultLeftPanelWidth: ()=>iO,
devHandoffExtensionPanelMaxHeight: ()=>iw,
devHandoffExtensionPanelMinHeight: ()=>iA,
devHandoffLayerHeight: ()=>ik,
devHandoffNodeRowHeight: ()=>iR,
devHandoffNodesPanelHeaderHeight: ()=>iP,
devHandoffPanelHeaderBorderWidth: ()=>iW,
devHandoffPanelHeaderHeight: ()=>iH,
devHandoffPanelUpsellMargin: ()=>iT,
devHandoffPanelUpsellPadding: ()=>iI,
devHandoffRightPanelGridNumCols: ()=>iu,
devHandoffRightPanelWidth: ()=>iV,
devHandoffSectionHeaderHeight: ()=>iL,
devHandoffToolbarHeight: ()=>iS,
devHandoffTypographyPreviewHeight: ()=>iy,
devModeOverviewThumbnailAspectRatio: ()=>iN,
devModeOverviewWidth: ()=>iC,
diffDetailHeight: ()=>lK,
diffDetailPadding: ()=>lz,
diffDetailWidth: ()=>lW,
diffThumbnailHeight: ()=>lB,
diffThumbnailImageHeight: ()=>lG,
diffThumbnailImageWidth: ()=>lH,
diffThumbnailPadding: ()=>lV,
diffThumbnailWidth: ()=>lU,
dotGridPng: ()=>dY,
dotGridSize: ()=>aQ,
draftsAndRecentsViewTwoColumnBreakpoint: ()=>aJ,
draftsToMoveTableRowHeight: ()=>l2,
dragObjectZ: ()=>dt,
draggableModalBorderRadius: ()=>i8,
draggableModalHeaderHeight: ()=>i4,
draggableModalUI3Z: ()=>sV,
draggableModalZ: ()=>sB,
drilldownPickerSearchHeight: ()=>av,
dropTargetZ: ()=>sC,
dropdownItemHeight: ()=>iq,
dropdownSearchInputMaxWidth: ()=>rb,
dropdownZ: ()=>dm,
dsaFontFeatures: ()=>dW,
editorEmojiTypeaheadZ: ()=>s$,
embedDocumentationFooter: ()=>rd,
exportPickerMaxHeight: ()=>oc,
exportPickerWidth: ()=>od,
eyedropperHeight: ()=>lX,
eyedropperMargin: ()=>lq,
eyedropperWidth: ()=>lJ,
facebookBlue: ()=>nu,
facetedSearchContainerWidth: ()=>rt,
facetedSearchInputMargin: ()=>re,
facetedSearchPreviewRowHeight: ()=>rn,
feedPageMobileWidth: ()=>rF,
figJamBrowseResourceModalZ: ()=>sU,
figJamCommentsViewportShrinkWidth: ()=>aD,
figJamCommentsViewportShrinkWidthDockedLibaries: ()=>aM,
figJamEmojiWheelBorder: ()=>aV,
figJamEmojiWheelSize: ()=>aB,
figJamEmojiWheelSizeInt: ()=>aH,
figJamGifsModalHeight: ()=>ax,
figJamGifsModalWidth: ()=>aF,
figJamLibrariesModalHeight: ()=>aN,
figJamLibrariesModalPadding: ()=>aL,
figJamLibrariesModalScrollContainerHeight: ()=>aO,
figJamLibrariesViewportWidthWhenFullyExpanded: ()=>aR,
figJamLibrariesViewportWidthWhenShrunk: ()=>aP,
figJamUniversalInsertViewportWidthWhenFullyExpanded: ()=>ak,
figjamBorderRadius: ()=>aU,
figjamBrowseResourceModalWidth: ()=>aC,
figjamFGGray: ()=>e5,
figjamHighlighterLime: ()=>K,
figjamOutlineView: ()=>sT,
figjamPurple: ()=>e2,
figjamPurple1: ()=>e3,
figjamSearchBarModalWidth: ()=>an,
figjamSidebarWidth: ()=>oG,
figjamSurveyZ: ()=>s1,
figjamToolbarHeight: ()=>nU,
figjamUniversalInsertCollageItemSize: ()=>au,
figjamUniversalInsertModalCategoryViewHeaderHeight: ()=>ah,
figjamUniversalInsertModalDetailViewFooterHeight: ()=>a_,
figjamUniversalInsertModalDetailViewHeaderHeight: ()=>am,
figjamUniversalInsertModalHeaderHeight: ()=>ap,
figmaBGBlack: ()=>eL,
figmaBGGrey: ()=>eO,
figmaBGGreyOpaque: ()=>eN,
figmaBGHUD: ()=>eR,
figmaBGPreviewGrey: ()=>eK,
figmaBGRed03: ()=>eM,
figmaBGRed08: ()=>eD,
figmaBGSilver: ()=>eC,
figmaBGToolbar: ()=>eP,
figmaBGWhite: ()=>eA,
figmaBlack__DEPRECATED: ()=>n_,
figmaBlue: ()=>U,
figmaBrandBlue: ()=>q,
figmaBrandBlueButton: ()=>ek,
figmaBrandBlueTint: ()=>Z,
figmaBrandCoral: ()=>j,
figmaBrandDarkGrey: ()=>ee,
figmaBrandGoldenYellow: ()=>Y,
figmaBrandGreen: ()=>$,
figmaBrandLightGrey: ()=>Q,
figmaBrandSecondaryLightBlue: ()=>et,
figmaBrandViolet: ()=>X,
figmaBrandVioletTint: ()=>J,
figmaBrandWarmRed: ()=>z,
figmaBrowseIABlack: ()=>eY,
figmaBrowseIABlack2: ()=>e$,
figmaComponentFlyoutModalMaxHeight: ()=>aS,
figmaComponentFlyoutModalPadding: ()=>aT,
figmaComponentFlyoutModalThumbnailHeight: ()=>aA,
figmaComponentFlyoutModalWidth: ()=>aI,
figmaComponentFlyoutTextMaxCollapsedHeight: ()=>aw,
figmaDarkBlue__DEPRECATED: ()=>nw,
figmaDarkGray__DEPRECATED: ()=>nh,
figmaDarkestBlue__DEPRECATED: ()=>nA,
figmaFGBlack: ()=>en,
figmaFGBlack03: ()=>er,
figmaFGBlack06: ()=>ei,
figmaFGBlack08: ()=>ea,
figmaFGBlack1: ()=>el,
figmaFGBlack15: ()=>eo,
figmaFGBlack2: ()=>es,
figmaFGBlack2Opaque: ()=>ew,
figmaFGBlack3: ()=>ed,
figmaFGBlack3Opaque: ()=>eS,
figmaFGBlack4: ()=>ec,
figmaFGBlack5: ()=>eu,
figmaFGBlack54: ()=>ep,
figmaFGBlack5Opaque: ()=>eT,
figmaFGBlack6: ()=>em,
figmaFGBlack8: ()=>e_,
figmaFGBlack8Opaque: ()=>eI,
figmaFGWhite: ()=>eh,
figmaFGWhite1: ()=>eg,
figmaFGWhite2: ()=>ef,
figmaFGWhite4: ()=>eE,
figmaFGWhite5: ()=>ey,
figmaFGWhite6: ()=>eb,
figmaFGWhite8: ()=>ev,
figmaGray__DEPRECATED: ()=>nE,
figmaGreen: ()=>H,
figmaInsertModalHeaderHeight: ()=>aE,
figmaInsertModalHeight: ()=>ag,
figmaInsertModalPadding: ()=>ay,
figmaInsertModalWidth: ()=>af,
figmaInsertSearchBarContainerHeight: ()=>ab,
figmaLightBlue__DEPRECATED: ()=>nT,
figmaLightGray__DEPRECATED: ()=>ny,
figmaLightLightBlue__DEPRECATED: ()=>nS,
figmaLightLightGray__DEPRECATED: ()=>nb,
figmaLightestGray__DEPRECATED: ()=>nv,
figmaMediumGray__DEPRECATED: ()=>ng,
figmaMediumLightGray__DEPRECATED: ()=>nf,
figmaMediumPurple__DEPRECATED: ()=>nC,
figmaModalBoxShadow: ()=>ej,
figmaMonoFontFamily: ()=>dO,
figmaOrange__DEPRECATED: ()=>nN,
figmaPink: ()=>V,
figmaProfileHeaderDropShadow: ()=>ez,
figmaPurple: ()=>B,
figmaRed: ()=>G,
figmaSansFontFamily: ()=>dN,
figmaSpecialBlue3: ()=>eF,
figmaSpecialBlue3SelectionA: ()=>ex,
figmaSpecialOutline: ()=>eH,
figmaSpecialOutlineOpaque: ()=>eG,
figmaSpecialPurple4SelectionA: ()=>eU,
figmaSpecialScrollbar: ()=>eW,
figmaSpecialSelectionA: ()=>eB,
figmaSpecialSelectionB: ()=>eV,
figmaWhite__DEPRECATED: ()=>nI,
figmaYellow: ()=>W,
figmascopeStandardRowHeight: ()=>l3,
fileBrowserFilterRightPadding: ()=>n7,
fileBrowserFooterHeight: ()=>n8,
fileBrowserHeaderHeight: ()=>nZ,
fileBrowserHeaderZ: ()=>sf,
fileBrowserInPageFileCreationButtonHeight: ()=>nj,
fileBrowserLeftNavWidth: ()=>az,
fileBrowserLeftPaddingWidth: ()=>n0,
fileBrowserLeftPaddingWidthMobile: ()=>n1,
fileBrowserLockZ: ()=>dd,
fileBrowserMobileWidth: ()=>n2,
fileBrowserPageHeaderHeight: ()=>nY,
fileBrowserSearchBarMaxWidth: ()=>nJ,
fileBrowserSearchPreviewMinWidth: ()=>nX,
fileBrowserSearchPreviewWidth: ()=>nQ,
fileBrowserSearchScopeHeight: ()=>nq,
fileBrowserSidebarGap: ()=>n6,
fileBrowserSidebarPadding: ()=>n4,
fileBrowserSidebarWidth: ()=>n5,
fileBrowserTabletWidth: ()=>n3,
fileBrowserToolBarHeight: ()=>nG,
fileBrowserToolBarHeightWithBorder: ()=>nW,
fileBrowserViewBarHeight: ()=>nz,
fileBrowserViewBarTop: ()=>nK,
fileBrowserWelcomeModalBottomPadding: ()=>l$,
fileFooterZ: ()=>sa,
filePermissionsModalPadding: ()=>lt,
filePermissionsModalSpacing: ()=>ln,
filePermissionsModalTabsHeight: ()=>le,
filebarHeight: ()=>nF,
firstDraftColorPickerZ: ()=>sQ,
firstDraftColorUnderlayZ: ()=>sX,
fixedHeaderDropTargetZ: ()=>sO,
fixedHeaderZ: ()=>sN,
flashZ: ()=>di,
flyoutZ: ()=>sx,
fontPickerFontSetRowHeight: ()=>oE,
fontPickerItemRowHeight: ()=>oy,
fontPickerScrollContainerHeight: ()=>om,
fontPickerWidth: ()=>of,
footerPillHeight: ()=>rc,
footerPillRadius: ()=>lS,
frontendShaOverrideIndicator: ()=>dv,
genericTileMargin: ()=>aW,
genericTileOuterMargin: ()=>aK,
green_1000_dark: ()=>cC,
green_1000_light: ()=>cN,
green_100_dark: ()=>cw,
green_100_light: ()=>cA,
green_200_dark: ()=>cO,
green_200_light: ()=>cL,
green_300_dark: ()=>cR,
green_300_light: ()=>cP,
green_400_dark: ()=>ck,
green_400_light: ()=>cD,
green_500_dark: ()=>cM,
green_500_light: ()=>cF,
green_600_dark: ()=>cx,
green_600_light: ()=>cU,
green_700_dark: ()=>cB,
green_700_light: ()=>cV,
green_800_dark: ()=>cH,
green_800_light: ()=>cG,
green_900_dark: ()=>cW,
green_900_light: ()=>cK,
grey_1000_dark: ()=>c$,
grey_1000_light: ()=>cY,
grey_100_dark: ()=>cj,
grey_100_light: ()=>cz,
grey_200_dark: ()=>cq,
grey_200_light: ()=>cZ,
grey_300_dark: ()=>cX,
grey_300_light: ()=>cJ,
grey_400_dark: ()=>c0,
grey_400_light: ()=>cQ,
grey_500_dark: ()=>c2,
grey_500_light: ()=>c1,
grey_600_dark: ()=>c5,
grey_600_light: ()=>c3,
grey_700_dark: ()=>c6,
grey_700_light: ()=>c4,
grey_800_dark: ()=>c7,
grey_800_light: ()=>c8,
grey_900_dark: ()=>ue,
grey_900_light: ()=>c9,
gridBasis: ()=>nL,
gridTileMinWidth: ()=>ol,
headerRowZ: ()=>sW,
helpWidgetGap: ()=>nM,
helpWidgetMargin: ()=>nk,
helpWidgetSize: ()=>nP,
helpWidgetSizePlusMargin: ()=>nD,
helpWidgetZ: ()=>s5,
hoverOutlineZ: ()=>sA,
hubFileEmbedFullscreenZ: ()=>s6,
iconButtonSize: ()=>i0,
iconButtonSizeUI3: ()=>i1,
importDropTargetZ: ()=>s_,
inlineMenuControlHeight: ()=>lj,
inlinePreviewDeviceFrameHeaderMargin: ()=>as,
inlinePreviewModalZ: ()=>sK,
insertComponentPickerWidth: ()=>on,
insertComponentScrollContainerExtraHeightOnSearch: ()=>oo,
insertComponentWideGridTileWidth: ()=>oi,
inspectToolbar: ()=>dr,
inspectToolbarExtension: ()=>sz,
instanceSwapNormalGridTileSize: ()=>oe,
instanceSwapPickerWidth: ()=>a9,
instanceSwapSmallGridTileSize: ()=>oa,
instanceSwapWideGridTileHeight: ()=>ot,
instanceSwapWideGridTileWidth: ()=>or,
interFontSource: ()=>dS,
interactiveSlideElementZ: ()=>sF,
intercomZ: ()=>s3,
keyboardShortcutFontFeatures: ()=>dH,
keyboardShortcutsPaneHeight: ()=>lw,
keyboardShortcutsPanelZ: ()=>s8,
landingPageViewBarHeight: ()=>rS,
landingSearchBarWidth: ()=>rw,
layerAboveZ: ()=>sS,
layerNameFontFeatures: ()=>dG,
leftNavHeight: ()=>r9,
leftNavLeftMarginUI3: ()=>il,
leftNavMobileWidth: ()=>r7,
leftPanelIslandContentHeight: ()=>r3,
libraryPreferencesModalHeight: ()=>oq,
libraryPreferencesModalMaxHeight: ()=>oJ,
libraryPreferencesModalWidth: ()=>o$,
libraryViewPlaygroundCanvasHeight: ()=>ij,
libraryViewPlaygroundCanvasWidth: ()=>iz,
listHeaderZ: ()=>sl,
listViewHeight: ()=>a2,
listViewThumbHeight: ()=>a3,
mainMenuZ: ()=>dh,
makeSomethingV2Z: ()=>du,
maximizedEmbedIFrameOverlayZ: ()=>sM,
memoryWarningBannerHeight: ()=>n$,
memoryWarningZ: ()=>si,
metaContainerContentWidth: ()=>aq,
metaContainerWidth: ()=>aZ,
missingFontsModalWidth: ()=>i3,
missingFontsModalWidthUI2: ()=>i5,
mobileBreakpoint: ()=>l8,
mobileFileViewerHeaderZ: ()=>sD,
mobileFlyoutZ__community: ()=>dT,
mobileNavZ: ()=>su,
modalXRightSpacing: ()=>i7,
modalZ: ()=>de,
monospaceFontFeatures: ()=>dK,
multiSelectCheckboxWidth: ()=>o5,
multiSelectRowHeight: ()=>o3,
multiplayerBlue: ()=>eq,
multiplayerDropdownToolsPadding: ()=>iQ,
multiplayerGray: ()=>eZ,
multiplayerGreen: ()=>e1,
multiplayerPink: ()=>eX,
multiplayerPurple: ()=>eJ,
multiplayerRed: ()=>eQ,
multiplayerYellow: ()=>e0,
navIconPadding: ()=>io,
navIconSize: ()=>ia,
navRightPadding: ()=>it,
navRowHeight: ()=>ie,
newCommentContainerOneLineSuggestionsWidth: ()=>oV,
newFileCreationButtonZ: ()=>ss,
newFileCreationTileHeight: ()=>ra,
newFileCreationTileHeight__OLD: ()=>ri,
nudgeAmountPickerWidth: ()=>ou,
objectRowHeight: ()=>iF,
onboardingCalloutZ: ()=>dE,
onboardingOverlayZ: ()=>sj,
openDesktopModal: ()=>i2,
orange_1000_dark: ()=>ur,
orange_1000_light: ()=>ui,
orange_100_dark: ()=>ut,
orange_100_light: ()=>un,
orange_200_dark: ()=>ua,
orange_200_light: ()=>uo,
orange_300_dark: ()=>ul,
orange_300_light: ()=>us,
orange_400_dark: ()=>ud,
orange_400_light: ()=>uc,
orange_500_dark: ()=>uu,
orange_500_light: ()=>up,
orange_600_dark: ()=>um,
orange_600_light: ()=>u_,
orange_700_dark: ()=>uh,
orange_700_light: ()=>ug,
orange_800_dark: ()=>uf,
orange_800_light: ()=>uE,
orange_900_dark: ()=>uy,
orange_900_light: ()=>ub,
orgAdminDesktopSmallBreakpoint: ()=>o4,
orgAdminExtraLargeMinContentWidth: ()=>o7,
orgAdminLargeMinContentWidth: ()=>o8,
orgAdminMinContentWidth: ()=>o6,
orgAdminXXLMinContentWidth: ()=>o9,
orgDashboardModalContentHeight: ()=>o1,
orgDashboardTabsHeight: ()=>o2,
orgModal: ()=>o0,
orgSwitcherNameMobileWidth: ()=>aY,
orgSwitcherNameWidth: ()=>aj,
pageCoverZ: ()=>df,
pageDividerRowHeight: ()=>ix,
pageRowHeight: ()=>iD,
pale_blue_1000_dark: ()=>uS,
pale_blue_1000_light: ()=>uT,
pale_blue_100_dark: ()=>uI,
pale_blue_100_light: ()=>uv,
pale_blue_200_dark: ()=>uA,
pale_blue_200_light: ()=>uw,
pale_blue_300_dark: ()=>uN,
pale_blue_300_light: ()=>uC,
pale_blue_400_dark: ()=>uL,
pale_blue_400_light: ()=>uO,
pale_blue_500_dark: ()=>uP,
pale_blue_500_light: ()=>uR,
pale_blue_600_dark: ()=>uD,
pale_blue_600_light: ()=>uk,
pale_blue_700_dark: ()=>uF,
pale_blue_700_light: ()=>uM,
pale_blue_800_dark: ()=>uU,
pale_blue_800_light: ()=>ux,
pale_blue_900_dark: ()=>uV,
pale_blue_900_light: ()=>uB,
pale_green_1000_dark: ()=>uK,
pale_green_1000_light: ()=>uW,
pale_green_100_dark: ()=>uG,
pale_green_100_light: ()=>uH,
pale_green_200_dark: ()=>uj,
pale_green_200_light: ()=>uz,
pale_green_300_dark: ()=>u$,
pale_green_300_light: ()=>uY,
pale_green_400_dark: ()=>uq,
pale_green_400_light: ()=>uZ,
pale_green_500_dark: ()=>uX,
pale_green_500_light: ()=>uJ,
pale_green_600_dark: ()=>u0,
pale_green_600_light: ()=>uQ,
pale_green_700_dark: ()=>u2,
pale_green_700_light: ()=>u1,
pale_green_800_dark: ()=>u5,
pale_green_800_light: ()=>u3,
pale_green_900_dark: ()=>u6,
pale_green_900_light: ()=>u4,
pale_pink_1000_dark: ()=>pe,
pale_pink_1000_light: ()=>u9,
pale_pink_100_dark: ()=>u7,
pale_pink_100_light: ()=>u8,
pale_pink_200_dark: ()=>pn,
pale_pink_200_light: ()=>pt,
pale_pink_300_dark: ()=>pi,
pale_pink_300_light: ()=>pr,
pale_pink_400_dark: ()=>po,
pale_pink_400_light: ()=>pa,
pale_pink_500_dark: ()=>ps,
pale_pink_500_light: ()=>pl,
pale_pink_600_dark: ()=>pc,
pale_pink_600_light: ()=>pd,
pale_pink_700_dark: ()=>pp,
pale_pink_700_light: ()=>pu,
pale_pink_800_dark: ()=>p_,
pale_pink_800_light: ()=>pm,
pale_pink_900_dark: ()=>pg,
pale_pink_900_light: ()=>ph,
pale_purple_1000_dark: ()=>pb,
pale_purple_1000_light: ()=>py,
pale_purple_100_dark: ()=>pE,
pale_purple_100_light: ()=>pf,
pale_purple_200_dark: ()=>pI,
pale_purple_200_light: ()=>pv,
pale_purple_300_dark: ()=>pS,
pale_purple_300_light: ()=>pT,
pale_purple_400_dark: ()=>pA,
pale_purple_400_light: ()=>pw,
pale_purple_500_dark: ()=>pN,
pale_purple_500_light: ()=>pC,
pale_purple_600_dark: ()=>pL,
pale_purple_600_light: ()=>pO,
pale_purple_700_dark: ()=>pP,
pale_purple_700_light: ()=>pR,
pale_purple_800_dark: ()=>pD,
pale_purple_800_light: ()=>pk,
pale_purple_900_dark: ()=>pF,
pale_purple_900_light: ()=>pM,
pale_red_1000_dark: ()=>pV,
pale_red_1000_light: ()=>pB,
pale_red_100_dark: ()=>pU,
pale_red_100_light: ()=>px,
pale_red_200_dark: ()=>pG,
pale_red_200_light: ()=>pH,
pale_red_300_dark: ()=>pK,
pale_red_300_light: ()=>pW,
pale_red_400_dark: ()=>pj,
pale_red_400_light: ()=>pz,
pale_red_500_dark: ()=>p$,
pale_red_500_light: ()=>pY,
pale_red_600_dark: ()=>pq,
pale_red_600_light: ()=>pZ,
pale_red_700_dark: ()=>pX,
pale_red_700_light: ()=>pJ,
pale_red_800_dark: ()=>p0,
pale_red_800_light: ()=>pQ,
pale_red_900_dark: ()=>p2,
pale_red_900_light: ()=>p1,
pale_yellow_1000_dark: ()=>p6,
pale_yellow_1000_light: ()=>p4,
pale_yellow_100_dark: ()=>p5,
pale_yellow_100_light: ()=>p3,
pale_yellow_200_dark: ()=>p7,
pale_yellow_200_light: ()=>p8,
pale_yellow_300_dark: ()=>me,
pale_yellow_300_light: ()=>p9,
pale_yellow_400_dark: ()=>mn,
pale_yellow_400_light: ()=>mt,
pale_yellow_500_dark: ()=>mi,
pale_yellow_500_light: ()=>mr,
pale_yellow_600_dark: ()=>mo,
pale_yellow_600_light: ()=>ma,
pale_yellow_700_dark: ()=>ms,
pale_yellow_700_light: ()=>ml,
pale_yellow_800_dark: ()=>mc,
pale_yellow_800_light: ()=>md,
pale_yellow_900_dark: ()=>mp,
pale_yellow_900_light: ()=>mu,
panelLoadingCover: ()=>sw,
perfHUDZ: ()=>l9,
pink_1000_dark: ()=>mh,
pink_1000_light: ()=>mg,
pink_100_dark: ()=>mm,
pink_100_light: ()=>m_,
pink_200_dark: ()=>mf,
pink_200_light: ()=>mE,
pink_300_dark: ()=>my,
pink_300_light: ()=>mb,
pink_400_dark: ()=>mv,
pink_400_light: ()=>mI,
pink_500_dark: ()=>mT,
pink_500_light: ()=>mS,
pink_600_dark: ()=>mw,
pink_600_light: ()=>mA,
pink_700_dark: ()=>mC,
pink_700_light: ()=>mN,
pink_800_dark: ()=>mO,
pink_800_light: ()=>mL,
pink_900_dark: ()=>mR,
pink_900_light: ()=>mP,
pointerModalPadding: ()=>at,
positionedDesignToolbeltZ: ()=>s0,
profileHeaderHeight: ()=>rr,
projectsViewTwoColumnBreakpoint: ()=>aX,
propertiesPanelLeftPaddingUI3: ()=>i_,
propertiesPanelRightMarginUI3: ()=>im,
prototypeFooterUIHeight: ()=>rm,
prototypeHeader: ()=>st,
prototypeInteractionModalExpandedWidth: ()=>aa,
prototypeInteractionModalHoverWidth: ()=>al,
prototypeInteractionModalMarginLeft: ()=>ao,
prototypeInteractionModalWidth: ()=>ai,
prototypeLoadingOverlay: ()=>se,
prototypeSplashScreenZ: ()=>sn,
prototypeStartingPointModal: ()=>i6,
prototypingDropdownWidth: ()=>iJ,
purple_1000_dark: ()=>mM,
purple_1000_light: ()=>mF,
purple_100_dark: ()=>mk,
purple_100_light: ()=>mD,
purple_200_dark: ()=>mx,
purple_200_light: ()=>mU,
purple_300_dark: ()=>mB,
purple_300_light: ()=>mV,
purple_400_dark: ()=>mH,
purple_400_light: ()=>mG,
purple_500_dark: ()=>mW,
purple_500_light: ()=>mK,
purple_600_dark: ()=>mz,
purple_600_light: ()=>mj,
purple_700_dark: ()=>mY,
purple_700_light: ()=>m$,
purple_800_dark: ()=>mZ,
purple_800_light: ()=>mq,
purple_900_dark: ()=>mJ,
purple_900_light: ()=>mX,
quickActionsComponentSearchGridGap: ()=>l0,
quickActionsComponentSearchResultsHeight: ()=>l1,
quickActionsSearchBarWidth: ()=>lQ,
quickActionsV2Z: ()=>sq,
rcsDistanceFromCanvasBorder: ()=>ar,
recentFilesSidebarWidth: ()=>a$,
red_1000_dark: ()=>m1,
red_1000_light: ()=>m2,
red_100_dark: ()=>mQ,
red_100_light: ()=>m0,
red_200_dark: ()=>m3,
red_200_light: ()=>m5,
red_300_dark: ()=>m4,
red_300_light: ()=>m6,
red_400_dark: ()=>m8,
red_400_light: ()=>m7,
red_500_dark: ()=>m9,
red_500_light: ()=>_e,
red_600_dark: ()=>_t,
red_600_light: ()=>_n,
red_700_dark: ()=>_r,
red_700_light: ()=>_i,
red_800_dark: ()=>_a,
red_800_light: ()=>_o,
red_900_dark: ()=>_l,
red_900_light: ()=>_s,
replaceLibrariesDropdownWidth: ()=>oQ,
replaceLibrariesModalWidth: ()=>oX,
resizableModalResizeTargetSize: ()=>iY,
resizeTargetZ: ()=>sG,
resourceDetailPageMaxWidth: ()=>ry,
rightNavBorderWidth: ()=>i$,
rightNavGridNumCols: ()=>id,
rightNavGridNumColsWide: ()=>ic,
rightNavGridRowHeight: ()=>is,
rightNavHorizontalPadding: ()=>ip,
rightNavWidth: ()=>iB,
rulerThickness: ()=>oN,
scrollContainerZ: ()=>sH,
searchDropdownSmallWidth: ()=>rv,
searchFilterBarZ: ()=>sd,
searchInputHeight: ()=>ir,
searchInputHeightBrowseIA: ()=>ii,
secondaryModalZ: ()=>s9,
sharedFontsModalWidth: ()=>oZ,
sideBarZ: ()=>sm,
sidePanelFloatingIslandZ: ()=>sI,
sidePanelZ: ()=>sv,
signedInlandingPageHeaderHeight: ()=>rI,
signedOutTopbarDesktopHeight: ()=>nB,
signedOutTopbarMobileHeight: ()=>nH,
signedOutTopbarMobileHeight__OLD: ()=>nV,
signedOutlandingPageHeaderHeight: ()=>rT,
slideTemplatesZ: ()=>s4,
slidesPresenterViewThumbnailHeight: ()=>lf,
slidesPresenterViewThumbnailWidth: ()=>lg,
slidesRightPanelMargin: ()=>l_,
slidesRightPanelWidth: ()=>lm,
slidesRightPanelWidthAndMargin: ()=>lh,
slidesRightPanelZ: ()=>dg,
slidesTemplateModalWidth: ()=>ae,
stampPaletteZ: ()=>s2,
stickyNotificationZ: ()=>dp,
strokeSettingsModalWidth: ()=>ov,
styleModalWidth: ()=>oI,
styleModalWidthWide: ()=>oT,
stylePickerMaxHeight: ()=>op,
stylePickerVerticalPadding: ()=>o_,
stylesPickerGridNumCols: ()=>oh,
stylesPickerWidth: ()=>og,
swatchSize: ()=>lY,
tabBarHeight: ()=>nR,
tabletBreakpoint: ()=>l7,
tba_dark: ()=>_d,
tba_light: ()=>_c,
teal_1000_dark: ()=>_m,
teal_1000_light: ()=>__,
teal_100_dark: ()=>_u,
teal_100_light: ()=>_p,
teal_200_dark: ()=>_h,
teal_200_light: ()=>_g,
teal_300_dark: ()=>_f,
teal_300_light: ()=>_E,
teal_400_dark: ()=>_y,
teal_400_light: ()=>_b,
teal_500_dark: ()=>_v,
teal_500_light: ()=>_I,
teal_600_dark: ()=>_T,
teal_600_light: ()=>_S,
teal_700_dark: ()=>_w,
teal_700_light: ()=>_A,
teal_800_dark: ()=>_C,
teal_800_light: ()=>_N,
teal_900_dark: ()=>_O,
teal_900_light: ()=>_L,
templateModalTeamName: ()=>sb,
templatesModalWidth: ()=>i9,
thumbnailActionsContainer: ()=>sE,
thumbnailHeight: ()=>a1,
tileBorderOpacity: ()=>a8,
tileBorderRadius: ()=>a6,
tileLabelHeight: ()=>a5,
tileLabelMargin: ()=>a4,
tileMaxWidth: ()=>a7,
tilePadding: ()=>a0,
titleChevronWidth: ()=>n9,
titleFontSize__DEPRECATED: ()=>oW,
toolbarViewActionButtonsZ: ()=>sL,
toolbarViewDropdownChevronZ: ()=>sk,
toolbarViewFilenameZ: ()=>sR,
toolbarViewTeamPaidStatusBadgeZ: ()=>sP,
toolbeltBottomMargin: ()=>rl,
toolbeltHeight: ()=>ro,
toolbeltHeightAndMargin: ()=>rs,
tooltipArrowHeight: ()=>oC,
tooltipContentHorizontalPadding: ()=>ow,
tooltipContentVerticalPadding: ()=>oA,
tooltipDist: ()=>oS,
tooltipZ: ()=>dl,
topBarZ: ()=>sc,
topNavBarZ: ()=>sp,
topNavHeight: ()=>r8,
twitterBlue: ()=>nc,
typeSettingsModalWidth: ()=>ob,
ui2CommentThreadWidth: ()=>oO,
ui2NewCommentContainerWidth: ()=>ox,
ui3BottomRightToolsHeight: ()=>lp,
ui3CommentThreadWidth: ()=>oL,
ui3FullHeightSidebarHeaderHeight: ()=>r4,
ui3FullHeightSidebarMargin: ()=>r5,
ui3InputHeight: ()=>iU,
ui3NewCommentContainerWidth: ()=>oU,
ui3PageRowHeight: ()=>iM,
ui3PanelGap: ()=>lu,
ui3PropertiesPanelBottomPadding: ()=>ig,
ui3PropertiesPanelHeaderHeight: ()=>ih,
ui3RulerMargin: ()=>iZ,
ui3UserWidthWithVoice: ()=>r2,
ui3ViewOptionsRowHeight: ()=>r6,
ui3delightfulToolbarHeightAndMargin: ()=>ld,
ui3delightfulToolbarMargin: ()=>lo,
uiFontFamily: ()=>dw,
uiHUDFont__DEPRECATED: ()=>dU,
uiLabelFont__DEPRECATED: ()=>dL,
uiLabelLetterSpacing__DEPRECATED: ()=>dP,
uiLabelParagraphFont__DEPRECATED: ()=>dR,
uiLargeBodyFont__DEPRECATED: ()=>dk,
uiLargeBodyLetterSpacing__DEPRECATED: ()=>dD,
uiLargeTitleFont__DEPRECATED: ()=>dx,
uiMonospaceFont: ()=>dV,
uiMonospaceFontFamily: ()=>dB,
uiSmallTitleFont__DEPRECATED: ()=>dF,
uiTitleFont__DEPRECATED: ()=>dM,
ui_color_background_black: ()=>r,
ui_color_background_greyF0: ()=>s,
ui_color_background_hud: ()=>i,
ui_color_background_silver: ()=>a,
ui_color_background_toolbar: ()=>o,
ui_color_background_white: ()=>l,
ui_color_black: ()=>d,
ui_color_black3: ()=>c,
ui_color_black8: ()=>u,
ui_color_blue: ()=>p,
ui_color_figjam_primary: ()=>m,
ui_color_green: ()=>_,
ui_color_hotPink: ()=>h,
ui_color_multiplayer_b: ()=>g,
ui_color_multiplayer_g: ()=>f,
ui_color_multiplayer_p: ()=>E,
ui_color_multiplayer_r: ()=>y,
ui_color_multiplayer_s: ()=>b,
ui_color_multiplayer_t: ()=>v,
ui_color_multiplayer_y: ()=>I,
ui_color_purple: ()=>T,
ui_color_red: ()=>S,
ui_color_special_black1: ()=>L,
ui_color_special_blue3: ()=>R,
ui_color_special_blue3SelectionA: ()=>w,
ui_color_special_hoverFill: ()=>A,
ui_color_special_purple4: ()=>C,
ui_color_special_purple4SelectionA: ()=>N,
ui_color_special_selectionA: ()=>P,
ui_color_special_selectionB: ()=>k,
ui_color_special_white2: ()=>O,
ui_color_white: ()=>D,
ui_color_white4: ()=>M,
ui_color_white8: ()=>F,
ui_color_yellow: ()=>x,
userDetailsModalWidth: ()=>os,
userIconSize: ()=>rX,
userWidth: ()=>rQ,
userWidthHorizontal: ()=>r0,
userWidthWithVoice: ()=>r1,
viewBarZ: ()=>sg,
visualBellCornerRadius: ()=>lI,
visualBellHiddenYOffset: ()=>lv,
visualBellHorizontalPadding: ()=>lT,
visualBellMargin: ()=>ly,
visualBellMarginBottom: ()=>lE,
visualBellMarginBottomUi3: ()=>lb,
visualBellZ: ()=>da,
voicePendingFlashNotification: ()=>nd,
welcomeSequenceModalBorderRadius: ()=>lZ,
white_1000_dark: ()=>_D,
white_1000_light: ()=>_k,
white_100_dark: ()=>_P,
white_100_light: ()=>_R,
white_200_dark: ()=>_F,
white_200_light: ()=>_M,
white_300_dark: ()=>_U,
white_300_light: ()=>_x,
white_400_dark: ()=>_V,
white_400_light: ()=>_B,
white_500_dark: ()=>_G,
white_500_light: ()=>_H,
white_600_dark: ()=>_K,
white_600_light: ()=>_W,
white_700_dark: ()=>_j,
white_700_light: ()=>_z,
white_800_dark: ()=>_$,
white_800_light: ()=>_Y,
white_900_dark: ()=>_q,
white_900_light: ()=>_Z,
white__DEPRECATED: ()=>nO,
whiteboardBlack: ()=>e4,
whiteboardBlackSwatchOnDark: ()=>tU,
whiteboardBlue: ()=>ts,
whiteboardBlueLight: ()=>td,
whiteboardBlueLightSwatchOnDark: ()=>tJ,
whiteboardBlueSwatchOnDark: ()=>tq,
whiteboardGray: ()=>e7,
whiteboardGrayDark: ()=>e6,
whiteboardGrayDarkSwatchOnDark: ()=>tB,
whiteboardGrayDarkUI3: ()=>e8,
whiteboardGrayLight: ()=>e9,
whiteboardGrayLightSwatchOnDark: ()=>tH,
whiteboardGraySwatchOnDark: ()=>tV,
whiteboardGreen: ()=>to,
whiteboardGreenLight: ()=>tl,
whiteboardGreenLightSwatchOnDark: ()=>tZ,
whiteboardGreenSwatchOnDark: ()=>t$,
whiteboardHighlightBlue: ()=>tC,
whiteboardHighlightColorPickerBlue: ()=>tM,
whiteboardHighlightColorPickerGray: ()=>tL,
whiteboardHighlightColorPickerGreen: ()=>tD,
whiteboardHighlightColorPickerOrange: ()=>tP,
whiteboardHighlightColorPickerRed: ()=>tR,
whiteboardHighlightColorPickerViolet: ()=>tF,
whiteboardHighlightColorPickerWhite: ()=>tx,
whiteboardHighlightColorPickerYellow: ()=>tk,
whiteboardHighlightGray: ()=>tI,
whiteboardHighlightGreen: ()=>tA,
whiteboardHighlightOrange: ()=>tS,
whiteboardHighlightRed: ()=>tT,
whiteboardHighlightViolet: ()=>tN,
whiteboardHighlightWhite: ()=>tO,
whiteboardHighlightYellow: ()=>tw,
whiteboardOrange: ()=>tn,
whiteboardOrangeLight: ()=>tr,
whiteboardOrangeLightSwatchOnDark: ()=>tz,
whiteboardOrangeSwatchOnDark: ()=>tK,
whiteboardRed: ()=>te,
whiteboardRedLight: ()=>tt,
whiteboardRedLightSwatchOnDark: ()=>tW,
whiteboardRedSwatchOnDark: ()=>tG,
whiteboardStickyBlue: ()=>tE,
whiteboardStickyBlueSwatchOnDark: ()=>na,
whiteboardStickyBlueSwatchOnLight: ()=>t6,
whiteboardStickyGray: ()=>tm,
whiteboardStickyGrayLight: ()=>tv,
whiteboardStickyGrayLightSwatchOnDark: ()=>ns,
whiteboardStickyGrayLightSwatchOnLight: ()=>t9,
whiteboardStickyGraySwatchOnDark: ()=>ne,
whiteboardStickyGraySwatchOnLight: ()=>t1,
whiteboardStickyGreen: ()=>tf,
whiteboardStickyGreenSwatchOnDark: ()=>ni,
whiteboardStickyGreenSwatchOnLight: ()=>t4,
whiteboardStickyOrange: ()=>th,
whiteboardStickyOrangeSwatchOnDark: ()=>nn,
whiteboardStickyOrangeSwatchOnLight: ()=>t3,
whiteboardStickyPink: ()=>tb,
whiteboardStickyPinkSwatchOnDark: ()=>nl,
whiteboardStickyPinkSwatchOnLight: ()=>t7,
whiteboardStickyRed: ()=>t_,
whiteboardStickyRedSwatchOnDark: ()=>nt,
whiteboardStickyRedSwatchOnLight: ()=>t2,
whiteboardStickyViolet: ()=>ty,
whiteboardStickyVioletSwatchOnDark: ()=>no,
whiteboardStickyVioletSwatchOnLight: ()=>t8,
whiteboardStickyYellow: ()=>tg,
whiteboardStickyYellowSwatchOnDark: ()=>nr,
whiteboardStickyYellowSwatchOnLight: ()=>t5,
whiteboardViolet: ()=>tc,
whiteboardVioletLight: ()=>tu,
whiteboardVioletLightSwatchOnDark: ()=>tQ,
whiteboardVioletSwatchOnDark: ()=>tX,
whiteboardWhite: ()=>tp,
whiteboardWhiteSwatchOnDark: ()=>t0,
whiteboardYellow: ()=>ti,
whiteboardYellowLight: ()=>ta,
whiteboardYellowLightSwatchOnDark: ()=>tY,
whiteboardYellowSwatchOnDark: ()=>tj,
whyteFontFamily: ()=>dA,
whyteInktrapFontFamily: ()=>dC,
workspaceSwitcherRowHeight: ()=>rq,
workspaceSwitcherWidth: ()=>rZ,
yellow_1000_dark: ()=>_Q,
yellow_1000_light: ()=>_0,
yellow_100_dark: ()=>_J,
yellow_100_light: ()=>_X,
yellow_200_dark: ()=>_1,
yellow_200_light: ()=>_2,
yellow_300_dark: ()=>_3,
yellow_300_light: ()=>_5,
yellow_400_dark: ()=>_4,
yellow_400_light: ()=>_6,
yellow_500_dark: ()=>_8,
yellow_500_light: ()=>_7,
yellow_600_dark: ()=>_9,
yellow_600_light: ()=>he,
yellow_700_dark: ()=>ht,
yellow_700_light: ()=>hn,
yellow_800_dark: ()=>hr,
yellow_800_light: ()=>hi,
yellow_900_dark: ()=>ha,
yellow_900_light: ()=>ho,
zoomMenuWidth: ()=>iK
});
let r = "#000"
, i = "#222"
, a = "#e5e5e5"
, o = "#2c2c2c"
, l = "#fff"
, s = "#f0f0f0"
, d = "#000"
, c = "rgba(0, 0, 0, 0.3)"
, u = "rgba(0, 0, 0, 0.8)"
, p = "#0d99ff"
, m = "#9747ff"
, _ = "#1bc47d"
, h = "#f531b3"
, g = "#18a0fb"
, f = "#1bc47d"
, E = "#907cff"
, y = "#ef5533"
, b = "#ee46d3"
, v = "#00b5ce"
, I = "#ffc700"
, T = "#7b61ff"
, S = "#f24822"
, w = "#a0d0f8"
, A = "rgba(0, 0, 0, 0.06)"
, C = "rgba(123, 97, 255, 0.4)"
, N = "#b4b4fa"
, O = "rgba(255, 255, 255, 0.2)"
, L = "rgba(0, 0, 0, 0.1)"
, R = "rgba(24, 145, 251, 0.3)"
, P = "#daebf7"
, k = "#edf5fa"
, D = "#fff"
, M = "rgba(255, 255, 255, 0.4)"
, F = "rgba(255, 255, 255, 0.8)"
, x = "#ffeb00"
, U = "#0d99ff"
, B = "#7b61ff"
, V = "#f531b3"
, H = "#1bc47d"
, G = "#f24822"
, W = "#ffeb00"
, K = "#e4ff97"
, z = "#f24e1e"
, j = "#ff8577"
, Y = "#ffc700"
, $ = "#0fa958"
, Z = "#699bf7"
, q = "#5551ff"
, J = "#c7b9ff"
, X = "#a259ff"
, Q = "#6a6a6a"
, ee = "#282828"
, et = "#cfe2ff"
, en = "#000"
, er = "rgba(0, 0, 0, 0.03)"
, ei = "rgba(0, 0, 0, 0.06)"
, ea = "rgba(0, 0, 0, 0.08)"
, eo = "rgba(0, 0, 0, 0.15)"
, el = "rgba(0, 0, 0, 0.1)"
, es = "rgba(0, 0, 0, 0.2)"
, ed = "rgba(0, 0, 0, 0.3)"
, ec = "rgba(0, 0, 0, 0.4)"
, eu = "rgba(0, 0, 0, 0.5)"
, ep = "rgba(0, 0, 0, 0.54)"
, em = "rgba(0, 0, 0, 0.6)"
, e_ = "rgba(0, 0, 0, 0.8)"
, eh = "#fff"
, eg = "rgba(255, 255, 255, 0.1)"
, ef = "rgba(255, 255, 255, 0.2)"
, eE = "rgba(255, 255, 255, 0.4)"
, ey = "rgba(255, 255, 255, 0.5)"
, eb = "rgba(255, 255, 255, 0.6)"
, ev = "rgba(255, 255, 255, 0.8)"
, eI = "#333333"
, eT = "#808080"
, eS = "#b3b3b3"
, ew = "#cccccc"
, eA = "#fff"
, eC = "#e5e5e5"
, eN = "#f0f0f0"
, eO = "rgba(0, 0, 0, 0.06)"
, eL = "#000"
, eR = "#222"
, eP = "#2c2c2c"
, ek = "rgba(85, 81, 255, 0.1)"
, eD = "rgba(242, 72, 34, 0.08)"
, eM = "rgba(242, 72, 34, 0.03)"
, eF = "rgba(24, 145, 251, 0.3)"
, ex = "#a0d0f8"
, eU = "#b4b4fa"
, eB = "#daebf7"
, eV = "#edf5fa"
, eH = "rgba(0, 0, 0, 0.1)"
, eG = "#e6e6e6"
, eW = "rgba(0, 0, 0, 0.15)"
, eK = "rgba(0, 0, 0, 0.03)"
, ez = "rgba(0, 0, 0, 0.15)"
, ej = "0px 2px 14px rgba(0, 0, 0, 0.15),\n 0px 0px 0px 0.5px rgba(0, 0, 0, 0.2)"
, eY = "#2c2c2c"
, e$ = "#474747"
, eZ = "#667799"
, eq = "#007be5"
, eJ = "#9747ff"
, eX = "#ff24bd"
, eQ = "#f24822"
, e0 = "#ffcd29"
, e1 = "#14ae5c"
, e2 = "rgba(151, 71, 255, 1)"
, e3 = "rgba(151, 71, 255, 0.1)"
, e5 = "rgba(0, 0, 0, 0.5)"
, e4 = "rgba(30, 30, 30, 1)"
, e6 = "rgba(117, 117, 117, 1)"
, e8 = "rgba(77, 77, 77, 1)"
, e7 = "rgba(179, 179, 179, 1)"
, e9 = "rgba(230, 230, 230, 1)"
, te = "rgba(242, 72, 34, 1)"
, tt = "rgba(255, 199, 194, 1)"
, tn = "rgba(255, 166, 41, 1)"
, tr = "rgba(252, 209, 156, 1)"
, ti = "rgba(255, 205, 41, 1)"
, ta = "rgba(255, 232, 163, 1)"
, to = "rgba(20, 174, 92, 1)"
, tl = "rgba(175, 244, 198, 1)"
, ts = "rgba(13, 153, 255, 1)"
, td = "rgba(189, 227, 255, 1)"
, tc = "rgba(151, 71, 255, 1)"
, tu = "rgba(228, 204, 255, 1)"
, tp = "rgba(255, 255, 255, 1)"
, tm = "rgba(175, 188, 207, 1)"
, t_ = "rgba(255, 175, 163, 1)"
, th = "rgba(255, 196, 112, 1)"
, tg = "rgba(255, 217, 102, 1)"
, tf = "rgba(133, 224, 163, 1)"
, tE = "rgba(128, 202, 255, 1)"
, ty = "rgba(217, 184, 255, 1)"
, tb = "rgba(255, 189, 242, 1)"
, tv = "rgba(230, 230, 230, 1)"
, tI = "rgba(151, 151, 151, 1)"
, tT = "rgba(255, 153, 248, 1)"
, tS = "rgba(255, 174, 79, 1)"
, tw = "rgba(255, 238, 0, 1)"
, tA = "rgba(134, 250, 22, 1)"
, tC = "rgba(111, 255, 246, 1)"
, tN = "rgba(179, 143, 255, 1)"
, tO = "rgba(255, 255, 255, 1)"
, tL = "rgba(175, 175, 175, 1)"
, tR = "rgba(255, 160, 249, 1)"
, tP = "rgba(255, 184, 104, 1)"
, tk = "rgba(255, 242, 52, 1)"
, tD = "rgba(174, 255, 97, 1)"
, tM = "rgba(126, 255, 247, 1)"
, tF = "rgba(188, 155, 255, 1)"
, tx = "rgba(255, 255, 255, 1)"
, tU = "rgba(17, 17, 17, 1)"
, tB = "rgba(56, 56, 56, 1)"
, tV = "rgba(117, 117, 117, 1)"
, tH = "rgba(217, 217, 217, 1)"
, tG = "rgba(224, 62, 26, 1)"
, tW = "rgba(251, 188, 182, 1)"
, tK = "rgba(247, 151, 34, 1)"
, tz = "rgba(255, 196, 112, 1)"
, tj = "rgba(243, 193, 27, 1)"
, tY = "rgba(249, 223, 144, 1)"
, t$ = "rgba(25, 143, 81, 1)"
, tZ = "rgba(161, 232, 185, 1)"
, tq = "rgba(12, 140, 233, 1)"
, tJ = "rgba(168, 215, 250, 1)"
, tX = "rgba(138, 56, 245, 1)"
, tQ = "rgba(214, 182, 251, 1)"
, t0 = "rgba(255, 255, 255, 1)"
, t1 = "rgba(102, 119, 153, 1)"
, t2 = "rgba(242, 72, 34, 1)"
, t3 = "rgba(255, 166, 41, 1)"
, t5 = "rgba(255, 205, 41, 1)"
, t4 = "rgba(20, 174, 92, 1)"
, t6 = "rgba(13, 153, 255, 1)"
, t8 = "rgba(151, 71, 255, 1)"
, t7 = "rgba(255, 36, 189, 1)"
, t9 = "rgba(230, 230, 230, 1)"
, ne = "rgba(175, 188, 207, 1)"
, nt = "rgba(252, 163, 151, 1)"
, nn = "rgba(255, 196, 112, 1)"
, nr = "rgba(247, 209, 95, 1)"
, ni = "rgba(121, 210, 151, 1)"
, na = "rgba(124, 196, 248, 1)"
, no = "rgba(209, 168, 255, 1)"
, nl = "rgba(253, 156, 224, 1)"
, ns = "rgba(230, 230, 230, 1)"
, nd = "#808080"
, nc = "#4aa1eb"
, nu = "#3578ea"
, np = "rgba(203, 192, 255, 0.5)"
, nm = "#a094e6"
, n_ = "#050505"
, nh = "#2c2c2c"
, ng = "#444"
, nf = "#888"
, nE = "#aaa"
, ny = "#d4d4d4"
, nb = "#efefef"
, nv = "#f8f8f8"
, nI = "#fcfcfc"
, nT = "#c5e4f9"
, nS = "#f1f9ff"
, nw = "#2288b3"
, nA = "#0d475f"
, nC = "#bbb0f5"
, nN = "#ff6d30"
, nO = "#ffffff"
, nL = "8px"
, nR = "38px"
, nP = "32px"
, nk = "16px"
, nD = "64px"
, nM = "12px"
, nF = "42px"
, nx = "48px"
, nU = "48px"
, nB = "56px"
, nV = "40px"
, nH = "48px"
, nG = "48px"
, nW = "48.8px"
, nK = "49px"
, nz = "64px"
, nj = "104px"
, nY = "84px"
, n$ = "70px"
, nZ = "84px"
, nq = "32px"
, nJ = "386px"
, nX = "320px"
, nQ = "360px"
, n0 = "32px"
, n1 = "16px"
, n2 = "645px"
, n3 = "1024px"
, n5 = "264px"
, n4 = "16px"
, n6 = "12px"
, n8 = "60px"
, n7 = "17px"
, n9 = "18px"
, re = "8px"
, rt = "380px"
, rn = "48px"
, rr = "240px"
, ri = "64px"
, ra = "72px"
, ro = "48px"
, rl = "12px"
, rs = "60px"
, rd = "48px"
, rc = "30px"
, ru = "24px"
, rp = "54px"
, rm = "48px"
, r_ = "1256px"
, rh = "84px"
, rg = "1056px"
, rf = "290px"
, rE = "1680px"
, ry = "1216px"
, rb = "450px"
, rv = "365px"
, rI = "120px"
, rT = "360px"
, rS = "48px"
, rw = "390px"
, rA = "40px"
, rC = "138px"
, rN = "100px"
, rO = "560px"
, rL = "906px"
, rR = "800px"
, rP = "760px"
, rk = "500px"
, rD = "400px"
, rM = "320px"
, rF = "760px"
, rx = "600px"
, rU = "450px"
, rB = "230px"
, rV = "48px"
, rH = "6px"
, rG = "1440px"
, rW = "1230px"
, rK = "1024px"
, rz = "715px"
, rj = "600px"
, rY = "1440px"
, r$ = "544px"
, rZ = "224px"
, rq = "32px"
, rJ = "180px"
, rX = "24px"
, rQ = "40px"
, r0 = "48px"
, r1 = "32px"
, r2 = "30px"
, r3 = "32px"
, r5 = "12px"
, r4 = "40px"
, r6 = "40px"
, r8 = "48px"
, r7 = "80px"
, r9 = "40px"
, ie = "36px"
, it = "12px"
, ir = "32px"
, ii = "40px"
, ia = "24px"
, io = "12px"
, il = "8px"
, is = "32px"
, id = 28
, ic = 36
, iu = 38
, ip = "8px"
, im = "8px"
, i_ = "16px"
, ih = "40px"
, ig = "12px"
, iE = "108px"
, iy = "140px"
, ib = "44px"
, iv = "44px"
, iI = "12px"
, iT = "14px"
, iS = "34px"
, iw = "320px"
, iA = "40px"
, iC = "640px"
, iN = 1.778
, iO = "240px"
, iL = "32px"
, iR = "80px"
, iP = "40px"
, ik = "32px"
, iD = "32px"
, iM = "24px"
, iF = "32px"
, ix = "16px"
, iU = "24px"
, iB = "240px"
, iV = "320px"
, iH = "40px"
, iG = "32px"
, iW = "1px"
, iK = "60px"
, iz = "40vw"
, ij = "256px"
, iY = "8px"
, i$ = "1px"
, iZ = "20px"
, iq = "24px"
, iJ = "224px"
, iX = "224px"
, iQ = "8px"
, i0 = "32px"
, i1 = "24px"
, i2 = "378px"
, i3 = "536px"
, i5 = "620px"
, i4 = "40px"
, i6 = "264px"
, i8 = "6px"
, i7 = "15px"
, i9 = "888px"
, ae = "720px"
, at = "16px"
, an = "300px"
, ar = "12px"
, ai = "240px"
, aa = "272px"
, ao = "24px"
, al = "200px"
, as = "8px"
, ad = "320px"
, ac = "192px"
, au = "56px"
, ap = "112px"
, am = "64px"
, a_ = "51px"
, ah = "44px"
, ag = "680px"
, af = "320px"
, aE = "40px"
, ay = "16px"
, ab = "64px"
, av = "40px"
, aI = "320px"
, aT = "16px"
, aS = "calc(100vh - 104px)"
, aw = "96px"
, aA = "240px"
, aC = "320px"
, aN = "512px"
, aO = "408px"
, aL = "16px"
, aR = "1500px"
, aP = "1250px"
, ak = "1680px"
, aD = "1320px"
, aM = "1500px"
, aF = "320px"
, ax = "512px"
, aU = "5px"
, aB = "228px"
, aV = "2px"
, aH = 232
, aG = "16px"
, aW = "24px"
, aK = "2px"
, az = "200px"
, aj = "142px"
, aY = "94px"
, a$ = "304px"
, aZ = "304px"
, aq = "272px"
, aJ = "1121px"
, aX = "1441px"
, aQ = "8px"
, a0 = "12px"
, a1 = "162px"
, a2 = "40px"
, a3 = "24px"
, a5 = "52px"
, a4 = "16px"
, a6 = "8px"
, a8 = .13
, a7 = "280px"
, a9 = "216px"
, oe = "84px"
, ot = "52px"
, on = "318px"
, or = "184px"
, oi = "286px"
, oa = "34px"
, oo = "36px"
, ol = "272px"
, os = "420px"
, od = "318px"
, oc = "460px"
, ou = "180px"
, op = "300px"
, om = "397px"
, o_ = "8px"
, oh = 25
, og = "216px"
, of = "240px"
, oE = "40px"
, oy = "28px"
, ob = "240px"
, ov = "240px"
, oI = "240px"
, oT = "304px"
, oS = "6px"
, ow = "8px"
, oA = "6px"
, oC = "6px"
, oN = "20px"
, oO = "320px"
, oL = "360px"
, oR = "48px"
, oP = "32px"
, ok = "36px"
, oD = "16px"
, oM = "8px"
, oF = "42px"
, ox = "256px"
, oU = "296px"
, oB = "256px"
, oV = "286px"
, oH = "286px"
, oG = "240px"
, oW = "14px"
, oK = "11px"
, oz = "2px"
, oj = "6px"
, oY = "8px"
, o$ = "460px"
, oZ = "596px"
, oq = "574px"
, oJ = "70vh"
, oX = "580px"
, oQ = "216px"
, o0 = "864px"
, o1 = "80vh"
, o2 = "24px"
, o3 = "48px"
, o5 = "32px"
, o4 = "1280px"
, o6 = "905px"
, o8 = "1164px"
, o7 = "1285px"
, o9 = "1423px"
, le = "40px"
, lt = "16px"
, ln = "8px"
, lr = "54px"
, li = "80px"
, la = "16px"
, lo = "12px"
, ll = "32px"
, ls = "96px"
, ld = "92px"
, lc = "52px"
, lu = "12px"
, lp = "32px"
, lm = "296px"
, l_ = "16px"
, lh = "328px"
, lg = "160px"
, lf = "90px"
, lE = "24px"
, ly = "16px"
, lb = "12px"
, lv = "3px"
, lI = "5px"
, lT = "16px"
, lS = "73px"
, lw = "240px"
, lA = "142px"
, lC = "450px"
, lN = "420px"
, lO = "3000px"
, lL = "41px"
, lR = "41px"
, lP = "709px"
, lk = "248px"
, lD = "750px"
, lM = "320px"
, lF = "256px"
, lx = "750px"
, lU = "224px"
, lB = "160px"
, lV = "20px"
, lH = "184px"
, lG = "120px"
, lW = "350px"
, lK = "350px"
, lz = "50px"
, lj = "40px"
, lY = "32px"
, l$ = "24px"
, lZ = "8px"
, lq = "12px"
, lJ = "260px"
, lX = "64px"
, lQ = "344px"
, l0 = "4px"
, l1 = "340px"
, l2 = "100px"
, l3 = "18px"
, l5 = "768px"
, l4 = "768px"
, l6 = "32px"
, l8 = "645px"
, l7 = "1024px"
, l9 = 1
, se = 1
, st = 10
, sn = 11
, sr = 11
, si = 1
, sa = 4
, so = 4
, sl = 1
, ss = 2
, sd = 2
, sc = 3
, su = 3
, sp = 4
, sm = 4
, s_ = 4
, sh = 5
, sg = 2
, sf = 3
, sE = 1
, sy = 1
, sb = 2
, sv = 6
, sI = 8
, sT = 2
, sS = 2
, sw = 3
, sA = 3
, sC = 4
, sN = 5
, sO = 6
, sL = 3
, sR = 2
, sP = 2
, sk = 1
, sD = 1
, sM = 11
, sF = 1
, sx = 8
, sU = 7
, sB = 7
, sV = 9
, sH = 7
, sG = 8
, sW = 7
, sK = 6
, sz = 6
, sj = 6
, sY = 6
, s$ = 7
, sZ = 7
, sq = 7
, sJ = 7
, sX = 6
, sQ = 8
, s0 = 8
, s1 = 8
, s2 = 8
, s3 = 8
, s5 = 8
, s4 = 9
, s6 = 9
, s8 = 9
, s7 = 9
, s9 = 9
, de = 10
, dt = 10
, dn = 10
, dr = 10
, di = 11
, da = 11
, dl = 14
, ds = 13
, dd = 3
, dc = 4
, du = 5
, dp = 13
, dm = 14
, d_ = 14
, dh = 14
, dg = 14
, df = 15
, dE = 20
, dy = 30
, db = 3
, dv = 25
, dI = 8
, dT = 10
, dS = "url('https://static.figma.com/uploads/2cca21a49f7dad1daa612d73d50357644671964a')\n format('woff2')"
, dw = "Inter, sans-serif"
, dA = "Whyte, sans-serif"
, dC = "WhyteInktrap, sans-serif"
, dN = "'Figma Sans', sans-serif"
, dO = "'Figma Mono', monospace"
, dL = "normal 400 11px/16px Inter, sans-serif"
, dR = "normal 400 11px/16px Inter, sans-serif"
, dP = "0.005em"
, dk = "normal 400 14px/24px Inter, sans-serif"
, dD = "-0.006em"
, dM = "normal 400 14px/24px Inter, sans-serif"
, dF = "normal 400 12px/16px Inter, sans-serif"
, dx = "normal 500 22px/32px Inter, sans-serif"
, dU = "normal 400 14px/24px Inter, sans-serif"
, dB = "Roboto Mono,\n monospace"
, dV = "normal 400 11px/16px Roboto Mono,\n monospace"
, dH = "'case' on,\n 'ss02' on,\n 'tnum' on,\n 'liga' on,\n 'calt' on"
, dG = "'ss02' on,\n 'liga' on,\n 'calt' on"
, dW = "'tnum' on,\n 'liga' on,\n 'calt' on"
, dK = "'tnum' on,\n 'lnum' on"
, dz = "url('data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A')"
, dj = "url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHJlY3QgZmlsbD0iI0ZGRkZGRiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+PHBhdGggZmlsbD0iI0YxRjFGMSIgZD0iTSAwIDggSCAxNiBWIDAgSCA4IFYgMTYgSCAwIi8+PC9zdmc+')"
, dY = "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAbElEQVR4Ae3WMQ4AIQhE0RGpbYz3v5+xsjVhdzXZC1BIM/8CvEBDer4QmCA4AggggAACCFA4m3Oi946cM2qtKKXAk3sDYwyYGdZaB+LNDdjD//YWrgNaa1BViMg5gbfEjwjBEUAAAQQQEA54AQVnHTNePItWAAAAAElFTkSuQmCC')"
, d$ = "url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJeSURBVHgBnVTNitpQFL6JiYkz419ARMcWC0LBxczCB3DdRcGNDzFC0UfwiaQixaWLQrty026kRbHFIiKC2voXY9LvXG+GzKCoc+Dk5t57znfPP2PHSSJ2HIdW2d2zEyR7N1B2gXy5XE7B6k8mk4F4PB7AP7GGc9V9QMgft6harcrZbNaP/+vxePxgmuZn27anUHR2u92M9qPR6IHu6bHnBnkt426l02m92WzeQflbq9VyCoWCE41GHUmS+Ep7Osf9r3q9fgcdnbw5CEbuNBqNe8uyflcqFQ5yjOme5Gq12n0mk9FI3+u+LOISOQfMC4oQfA+Hw1HoqsyTMF8sFrvpdrtlcuccMJdJvtfrfRAx9bmgaigUMhaLxVeK0SWAJL9cLr8A44mVFIM43J27CTiXSZ6yT/oiQRJLpVIB0C2VxiVgLjv7bKQSicQV5UMeDAbS0Xo6QZFIhMHCv2TZcDjk7vKKX61W7CWUz+cZYt+Bh481wy3Tdf1kjx6icrnMOp3OR1mWLTTFTrjPU/760hhSHa7X6z/QfQs2mJtlND4BvroEkMBQLkOs76B7K4x6zMMVYnAS0NvL8/n8R6lUeo9QvWH7GvQzUYOKALX5x7aPxgt1+m82m/1st9uf0Ag1HE2DweAcblNGLfB+9tGEmUwm1+hLY7PZBBVF0aAsYyUBGgL8LVVVd7AUYuYKHi1RGQucr8Fbmm644w8rALT6/T5dTMErAKkEIoAcuEXBZ9vtlsw3UXsbTdO2ADSxp8zaLhgnMb4oQ7oI7o1hGCFawUFiGh4UayGjFotFPggOTez/7HeXD+m6slMAAAAASUVORK5CYII=)\n 2 17,\n auto"
, dZ = "rgba(0, 0, 0, 0.05)"
, dq = "rgba(0, 0, 0, 0.05)"
, dJ = "rgba(0, 0, 0, 1)"
, dX = "rgba(0, 0, 0, 1)"
, dQ = "rgba(0, 0, 0, 0.1)"
, d0 = "rgba(0, 0, 0, 0.1)"
, d1 = "rgba(0, 0, 0, 0.2)"
, d2 = "rgba(0, 0, 0, 0.2)"
, d3 = "rgba(0, 0, 0, 0.3)"
, d5 = "rgba(0, 0, 0, 0.3)"
, d4 = "rgba(0, 0, 0, 0.5)"
, d6 = "rgba(0, 0, 0, 0.5)"
, d8 = "rgba(0, 0, 0, 0.8)"
, d7 = "rgba(0, 0, 0, 0.8)"
, d9 = "rgba(0, 0, 0, 0.85)"
, ce = "rgba(0, 0, 0, 0.85)"
, ct = "rgba(0, 0, 0, 0.9)"
, cn = "rgba(0, 0, 0, 0.9)"
, cr = "rgba(0, 0, 0, 0.95)"
, ci = "rgba(0, 0, 0, 0.95)"
, ca = "#e2f1fd"
, co = "#f2f9ff"
, cl = "#161e36"
, cs = "#0d193f"
, cd = "#cfe9fc"
, cc = "#e5f4ff"
, cu = "#a8d7fa"
, cp = "#bde3ff"
, cm = "#7cc4f8"
, c_ = "#80caff"
, ch = "#0c8ce9"
, cg = "#0d99ff"
, cf = "#0a6dc2"
, cE = "#007be5"
, cy = "#105cad"
, cb = "#0768cf"
, cv = "#184591"
, cI = "#034ac1"
, cT = "#1b335f"
, cS = "#093077"
, cw = "#ddfde2"
, cA = "#ebffee"
, cC = "#0b1e15"
, cN = "#083a23"
, cO = "#beefc2"
, cL = "#cff7d3"
, cR = "#a1e8b9"
, cP = "#aff4c6"
, ck = "#79d297"
, cD = "#85e0a3"
, cM = "#198f51"
, cF = "#14ae5c"
, cx = "#078348"
, cU = "#009951"
, cB = "#0a5c35"
, cV = "#008043"
, cH = "#0a4c2d"
, cG = "#036838"
, cW = "#082618"
, cK = "#024626"
, cz = "#f5f5f5"
, cj = "#f5f5f5"
, cY = "#111111"
, c$ = "#111111"
, cZ = "#e6e6e6"
, cq = "#e6e6e6"
, cJ = "#d9d9d9"
, cX = "#d9d9d9"
, cQ = "#b3b3b3"
, c0 = "#b3b3b3"
, c1 = "#757575"
, c2 = "#757575"
, c3 = "#444444"
, c5 = "#444444"
, c4 = "#383838"
, c6 = "#383838"
, c8 = "#2c2c2c"
, c7 = "#2c2c2c"
, c9 = "#1e1e1e"
, ue = "#1e1e1e"
, ut = "#ffedd7"
, un = "#fff4e5"
, ur = "#371d06"
, ui = "#8a480f"
, ua = "#fdd9b4"
, uo = "#ffe0c2"
, ul = "#fcc67f"
, us = "#fcd19c"
, ud = "#fcb34a"
, uc = "#ffc470"
, uu = "#de7d02"
, up = "#ffa629"
, um = "#c86f04"
, u_ = "#fc9e24"
, uh = "#ad5f05"
, ug = "#f79722"
, uf = "#985306"
, uE = "#dd7c0e"
, uy = "#673806"
, ub = "#ce7012"
, uv = "#f1f5f8"
, uI = "#f1f5f8"
, uT = "#121721"
, uS = "#121721"
, uw = "#e3ecf2"
, uA = "#e3ecf2"
, uC = "#d2dae4"
, uN = "#d2dae4"
, uO = "#afbccf"
, uL = "#afbccf"
, uR = "#667799"
, uP = "#667799"
, uk = "#536383"
, uD = "#536383"
, uM = "#4a5878"
, uF = "#4a5878"
, ux = "#394360"
, uU = "#394360"
, uB = "#252d41"
, uV = "#252d41"
, uH = "#f1f8f2"
, uG = "#f1f8f2"
, uW = "#172b22"
, uK = "#172b22"
, uz = "#daecdf"
, uj = "#daecdf"
, uY = "#c3e0cc"
, u$ = "#c3e0cc"
, uZ = "#9fc1aa"
, uq = "#9fc1aa"
, uJ = "#678e79"
, uX = "#678e79"
, uQ = "#5c806d"
, u0 = "#5c806d"
, u1 = "#517361"
, u2 = "#517361"
, u3 = "#476656"
, u5 = "#476656"
, u4 = "#2f483c"
, u6 = "#2f483c"
, u8 = "#f6eef4"
, u7 = "#f6eef4"
, u9 = "#1b1318"
, pe = "#1b1318"
, pt = "#f2e3ee"
, pn = "#f2e3ee"
, pr = "#e8cee1"
, pi = "#e8cee1"
, pa = "#daaace"
, po = "#daaace"
, pl = "#ab5998"
, ps = "#ab5998"
, pd = "#86507a"
, pc = "#86507a"
, pu = "#724667"
, pp = "#724667"
, pm = "#51344a"
, p_ = "#51344a"
, ph = "#33252f"
, pg = "#33252f"
, pf = "#f4f1f8"
, pE = "#f4f1f8"
, py = "#1a141f"
, pb = "#1a141f"
, pv = "#ede7f3"
, pI = "#ede7f3"
, pT = "#e0d4ed"
, pS = "#e0d4ed"
, pw = "#c5b2dc"
, pA = "#c5b2dc"
, pC = "#7f699b"
, pN = "#7f699b"
, pO = "#6b5884"
, pL = "#6b5884"
, pR = "#604d75"
, pP = "#604d75"
, pk = "#473956"
, pD = "#473956"
, pM = "#33293d"
, pF = "#33293d"
, px = "#faedeb"
, pU = "#faedeb"
, pB = "#1f1514"
, pV = "#1f1514"
, pH = "#f8e5e2"
, pG = "#f8e5e2"
, pW = "#f3cfc9"
, pK = "#f3cfc9"
, pz = "#eba99d"
, pj = "#eba99d"
, pY = "#d4583b"
, p$ = "#d4583b"
, pZ = "#a55440"
, pq = "#a55440"
, pJ = "#864537"
, pX = "#864537"
, pQ = "#60332a"
, p0 = "#60332a"
, p1 = "#412621"
, p2 = "#412621"
, p3 = "#fff5eb"
, p5 = "#fff5eb"
, p4 = "#211a12"
, p6 = "#211a12"
, p8 = "#fdeece"
, p7 = "#fdeece"
, p9 = "#f5dfa8"
, me = "#f5dfa8"
, mt = "#e8cd7d"
, mn = "#e8cd7d"
, mr = "#ad7f00"
, mi = "#ad7f00"
, ma = "#906800"
, mo = "#906800"
, ml = "#7a5800"
, ms = "#7a5800"
, md = "#5c4100"
, mc = "#5c4100"
, mu = "#3a2a10"
, mp = "#3a2a10"
, mm = "#fde2fb"
, m_ = "#fff0fe"
, mh = "#231a21"
, mg = "#451138"
, mf = "#fccaf8"
, mE = "#ffe0fc"
, my = "#fbb1ed"
, mb = "#ffbdf2"
, mv = "#fc9ce0"
, mI = "#ff99e0"
, mT = "#f316b0"
, mS = "#ff24bd"
, mw = "#d01b9c"
, mA = "#ea10ac"
, mC = "#96207a"
, mN = "#cb0b96"
, mO = "#68275e"
, mL = "#971172"
, mR = "#46253e"
, mP = "#5f114c"
, mk = "#f1e7fe"
, mD = "#f9f5ff"
, mM = "#1f1924"
, mF = "#2d0f46"
, mx = "#e3cffc"
, mU = "#f1e5ff"
, mB = "#d6b6fb"
, mV = "#e4ccff"
, mH = "#d1a8ff"
, mG = "#d9b8ff"
, mW = "#8a38f5"
, mK = "#9747ff"
, mz = "#7a2ed6"
, mj = "#8638e5"
, mY = "#652ca8"
, m$ = "#7c2bda"
, mZ = "#50297a"
, mq = "#681abb"
, mJ = "#3e2654"
, mX = "#4b0d87"
, mQ = "#fee7e7"
, m0 = "#fff5f5"
, m1 = "#311817"
, m2 = "#660e0b"
, m3 = "#fccdca"
, m5 = "#ffe2e0"
, m4 = "#fbbcb6"
, m6 = "#ffc7c2"
, m8 = "#fca397"
, m7 = "#ffafa3"
, m9 = "#e03e1a"
, _e = "#f24822"
, _t = "#c4381c"
, _n = "#dc3412"
, _r = "#963323"
, _i = "#bd2915"
, _a = "#7c2622"
, _o = "#9f1f18"
, _l = "#54211c"
, _s = "#771208"
, _d = "initial "
, _c = "initial "
, _u = "#ddf7fd"
, _p = "#ebfbff"
, _m = "#0e1f2a"
, __ = "#0e2f43"
, _h = "#bce6f1"
, _g = "#cef0f8"
, _f = "#a4e2ef"
, _E = "#b6ecf7"
, _y = "#67cbe4"
, _b = "#75d7f0"
, _v = "#0887a0"
, _I = "#00a2c2"
, _T = "#087691"
, _S = "#0087a8"
, _w = "#0a5b76"
, _A = "#047195"
, _C = "#0c455a"
, _N = "#085a78"
, _O = "#0c2937"
, _L = "#093c53"
, _R = "rgba(255, 255, 255, 0.05)"
, _P = "rgba(255, 255, 255, 0.05)"
, _k = "rgba(255, 255, 255, 1)"
, _D = "rgba(255, 255, 255, 1)"
, _M = "rgba(255, 255, 255, 0.1)"
, _F = "rgba(255, 255, 255, 0.1)"
, _x = "rgba(255, 255, 255, 0.2)"
, _U = "rgba(255, 255, 255, 0.2)"
, _B = "rgba(255, 255, 255, 0.4)"
, _V = "rgba(255, 255, 255, 0.4)"
, _H = "rgba(255, 255, 255, 0.7)"
, _G = "rgba(255, 255, 255, 0.7)"
, _W = "rgba(255, 255, 255, 0.8)"
, _K = "rgba(255, 255, 255, 0.8)"
, _z = "rgba(255, 255, 255, 0.85)"
, _j = "rgba(255, 255, 255, 0.85)"
, _Y = "rgba(255, 255, 255, 0.9)"
, _$ = "rgba(255, 255, 255, 0.9)"
, _Z = "rgba(255, 255, 255, 0.95)"
, _q = "rgba(255, 255, 255, 0.95)"
, _J = "#fdf7dd"
, _X = "#fffbeb"
, _Q = "#71440f"
, _0 = "#b86200"
, _1 = "#fbe8ad"
, _2 = "#fff1c2"
, _3 = "#f9df90"
, _5 = "#ffe8a3"
, _4 = "#f7d15f"
, _6 = "#ffd966"
, _8 = "#f3c11b"
, _7 = "#ffcd29"
, _9 = "#f2b50d"
, he = "#ffc21a"
, ht = "#e4a711"
, hn = "#fab815"
, hr = "#c58011"
, hi = "#eba611"
, ha = "#925711"
, ho = "#dd940e"
}
,
230997: (e,t,n)=>{
"use strict";
n.d(t, {
BS: ()=>d,
FX: ()=>o,
Nz: ()=>u,
QU: ()=>i,
T: ()=>c,
Us: ()=>r,
ZI: ()=>s,
ZV: ()=>l,
cP: ()=>m,
rz: ()=>a,
uY: ()=>p
});
let r = "40px"
, i = "12px"
, a = "16px"
, o = "16px"
, l = "40px"
, s = "48px"
, d = "36px"
, c = "30px"
, u = "20px"
, p = "12px"
, m = "20px"
}
,
310435: (e,t,n)=>{
"use strict";
n.d(t, {
EB: ()=>s,
Fu: ()=>a,
Kk: ()=>o,
NR: ()=>l,
az: ()=>r,
i0: ()=>i
});
let r = "toolbar_action--hideOnMobile--nG2oh"
, i = "toolbar_action--hideOnDesktop--caccx"
, a = "toolbar_action--getDesktop--K00Fi"
, o = "toolbar_action--icon--pgH4B"
, l = "toolbar_action--disabledButtonSolidWithTooltip--ooG66"
, s = "toolbar_action--disabledButtonOutlineWithTooltip--EqJHb"
}
,
468434: (e,t,n)=>{
"use strict";
n.d(t, {
Oe: ()=>i,
RJ: ()=>o,
g0: ()=>a,
mu: ()=>l,
yE: ()=>r
});
let r = "feed_post_zoom_pan--zoomPanContainer--zUqcL"
, i = "feed_post_zoom_pan--zoomPanInteractionLayer--8w-cl"
, a = "feed_post_zoom_pan--guidelineLayer--p6ik- feed_post_zoom_pan--zoomPanInteractionLayer--8w-cl"
, o = "feed_post_zoom_pan--transformedImage--hjQSb"
, l = "feed_post_zoom_pan--zoomControls--8PqPP feed_post_detail_modal--contentOverlayPill--1jsoj"
}
,
66476: (e,t,n)=>{
"use strict";
n.d(t, {
IN: ()=>o,
NY: ()=>i,
Ou: ()=>a,
hM: ()=>s,
k2: ()=>r,
kJ: ()=>d,
vu: ()=>c,
yo: ()=>l
});
let r = "toolbelt_button--topLevelButton--IxD8f"
, i = "toolbelt_button--disabledButton--0ohMF"
, a = "toolbelt_button--selectedButton--AAVAi"
, o = "toolbelt_button--iconButtonInner--1q8L7"
, l = "toolbelt_button--hovered--ugy3A"
, s = "toolbelt_button--toolbeltActionIconButton--ATFbb"
, d = "toolbelt_button--iconCircle--MtXrF"
, c = "toolbelt_button--active--GOgiG"
}
,
30158: (e,t,n)=>{
"use strict";
n.d(t, {
D9: ()=>o,
FY: ()=>u,
Hp: ()=>p,
QR: ()=>c,
ZS: ()=>s,
ai: ()=>a,
hF: ()=>i,
jZ: ()=>d,
kL: ()=>r,
oO: ()=>l,
z4: ()=>m
});
let r = "whiteboard_text_style_control--container--MNXDM"
, i = "whiteboard_text_style_control--input--w-EA9 text--fontNeg12--2PWcg text--_fontBase--QdLsd text--_negText--j9g-L"
, a = "whiteboard_text_style_control--chevron--Bj8sj"
, o = "whiteboard_text_style_control--offscreenMeasurementContainer--BKhB1"
, l = "whiteboard_text_style_control--selectInputForMeasurement--slyc8"
, s = "whiteboard_text_style_control--optionForMeasurement--Am6OD"
, d = "whiteboard_text_style_control--numberOption--j4Dvk"
, c = "whiteboard_text_style_control--numberInput--PWl99"
, u = "whiteboard_text_style_control--numberInputForMeasurement--TkDrB whiteboard_text_style_control--numberInput--PWl99"
, p = "whiteboard_text_style_control--dotOption--zHKZY"
, m = "whiteboard_text_style_control--textStyleSelect--gN34Q"
}
,
158200: (e,t,n)=>{
"use strict";
n.d(t, {
$: ()=>z,
$d: ()=>eR,
$y: ()=>C,
AT: ()=>s,
B4: ()=>tn,
BE: ()=>eQ,
BN: ()=>e7,
Bm: ()=>M,
Bx: ()=>es,
C0: ()=>ep,
Du: ()=>e0,
E$: ()=>i,
ES: ()=>$,
EY: ()=>eo,
F0: ()=>Q,
FK: ()=>ee,
FP: ()=>U,
HG: ()=>r,
ID: ()=>ta,
JQ: ()=>ey,
Kb: ()=>eO,
LI: ()=>eq,
Lt: ()=>u,
M: ()=>eA,
Mg: ()=>eF,
OA: ()=>w,
Q$: ()=>o,
Qq: ()=>y,
Qs: ()=>d,
RH: ()=>e1,
Rv: ()=>ed,
SN: ()=>e9,
Sk: ()=>eJ,
Sq: ()=>eK,
Sr: ()=>ea,
T5: ()=>e_,
T6: ()=>eE,
UJ: ()=>eT,
Uq: ()=>a,
WX: ()=>eb,
Wq: ()=>ti,
ZJ: ()=>ez,
ZS: ()=>J,
ZY: ()=>ej,
Zh: ()=>D,
Zu: ()=>eU,
_V: ()=>W,
ac: ()=>ek,
bQ: ()=>eg,
bj: ()=>eI,
bz: ()=>ec,
cP: ()=>te,
cb: ()=>e2,
cd: ()=>eM,
cf: ()=>ex,
cj: ()=>eX,
cq: ()=>eL,
cz: ()=>R,
dB: ()=>e6,
dP: ()=>tt,
dR: ()=>c,
dj: ()=>ew,
dk: ()=>X,
eB: ()=>eY,
fT: ()=>L,
fg: ()=>eu,
fp: ()=>eS,
gz: ()=>eZ,
hA: ()=>j,
he: ()=>G,
i0: ()=>_,
i9: ()=>em,
iD: ()=>e4,
iE: ()=>I,
iI: ()=>eB,
iU: ()=>Z,
jU: ()=>eN,
kV: ()=>eG,
ke: ()=>el,
kl: ()=>S,
ll: ()=>et,
lv: ()=>eC,
mK: ()=>e5,
mL: ()=>eP,
nI: ()=>k,
nS: ()=>e$,
o9: ()=>Y,
oE: ()=>K,
pN: ()=>T,
ph: ()=>O,
qF: ()=>e3,
qf: ()=>f,
qs: ()=>E,
r6: ()=>ei,
rf: ()=>H,
rh: ()=>tr,
s$: ()=>P,
sD: ()=>m,
tN: ()=>q,
tS: ()=>V,
tp: ()=>v,
tq: ()=>B,
uA: ()=>F,
uW: ()=>b,
uh: ()=>e8,
uj: ()=>eD,
v5: ()=>eV,
vu: ()=>p,
wF: ()=>l,
wj: ()=>x,
wz: ()=>h,
xt: ()=>g,
yD: ()=>eh,
yF: ()=>en,
yG: ()=>N,
yR: ()=>ef,
yk: ()=>eH,
z: ()=>A,
z6: ()=>eW,
zO: ()=>ev,
zb: ()=>er
});
let r = "delightful_toolbar--delightfulToolbarContainer--SHMR-"
, i = "delightful_toolbar--delightfulToolbarLowered--sZhzF"
, a = "delightful_toolbar--delightfulToolbarDisabledClickDetector--JQUz3"
, o = "delightful_toolbar--delightfulToolbarDisabled--jqtpA"
, l = "delightful_toolbar--delightfulToolberInnerDisabled--9M-N9"
, s = "delightful_toolbar--delightfulToolbarBannerContainer--FkA0g"
, d = "delightful_toolbar--delightfulToolbarContainerBannerOffset--D5pU0"
, c = "delightful_toolbar--focusVisibleHover--Ag5DV"
, u = "delightful_toolbar--select--Qs3At"
, p = "delightful_toolbar--active--Xm9-4"
, m = "delightful_toolbar--hand--UoaPp"
, _ = "delightful_toolbar--animate--gXF-Y"
, h = "delightful_toolbar--pencil--86AiY"
, g = "delightful_toolbar--shapeCollage---YIrd"
, f = "delightful_toolbar--sticky--6MjSN"
, E = "delightful_toolbar--universalInsertCollage--0-jTN"
, y = "delightful_toolbar--text--3Hmso"
, b = "delightful_toolbar--section---GUh9"
, v = "delightful_toolbar--table--toekL"
, I = "delightful_toolbar--stamp--diHIZ"
, T = "delightful_toolbar--universalInsert--FC5m4"
, S = "delightful_toolbar--delightfulToolbar--0Koqy"
, w = "delightful_toolbar--delightfulToolbarPostAnimation--J3t8f"
, A = "delightful_toolbar--tuckDltForMakeSomethingV2--FzVXX"
, C = "delightful_toolbar--fakeButtonContainer--ivi7f"
, N = "delightful_toolbar--toolbarFakeButtonTarget--SdMI0"
, O = "delightful_toolbar--delightfulToolbarTabletExtras--H-fON"
, L = "delightful_toolbar--tabletExtrasItem--ApfSS"
, R = "delightful_toolbar--tabletExtrasItemShowHide---fNRw"
, P = "delightful_toolbar--delightfulToolbarTabletExtrasItem--92q-x delightful_toolbar--delightfulToolbar--0Koqy"
, k = "delightful_toolbar--verticalButtonDisabled--m308g"
, D = "delightful_toolbar--passthruLayout--gz5r2"
, M = "delightful_toolbar--stampButton--3kdlW"
, F = "delightful_toolbar--peekingVotingWheel--w0rd4"
, x = "delightful_toolbar--peekingVotingWheelHidden--97uHk"
, U = "delightful_toolbar--peekingVotingWheelDoneVoting--tAyvc"
, B = "delightful_toolbar--peekingVotingWheelShowHide--1jIMo"
, V = "delightful_toolbar--remainingVotesIndicator--1pWLF text--fontPos12--YsUAh text--_fontBase--QdLsd"
, H = "delightful_toolbar--remainingVotesIndicatorInProgress--x9DdJ"
, G = "delightful_toolbar--remainingVotesIndicatorDone--OyZtG"
, W = "delightful_toolbar--remainingVotesIndicatorTextSpan--ola4B ellipsis--ellipsis--Tjyfa"
, K = "delightful_toolbar--checkIcon--JmhHu"
, z = "delightful_toolbar--peekingVotingWheelContainer--EBQCY"
, j = "delightful_toolbar--peekingVotingWheelInactive--bdvqB"
, Y = "delightful_toolbar--delightfulToolbarMask--WyKoY"
, $ = "delightful_toolbar--delightfulToolbarMaskClip--YptNQ"
, Z = "delightful_toolbar--delightfulToolbarInner--gHZZG delightful_toolbar--passthruLayout--gz5r2"
, q = "delightful_toolbar--undo--GoECN"
, J = "delightful_toolbar--redo--zNSIB"
, X = "delightful_toolbar--straightLine--WYaYi"
, Q = "delightful_toolbar--horizontalButton--GEYZm"
, ee = "delightful_toolbar--horizontalButtonDisabled--J--Nk"
, et = "delightful_toolbar--pointerEventsDisabled--0umVY"
, en = "delightful_toolbar--divider--apd-R"
, er = "delightful_toolbar--againstButtons--jjCEu"
, ei = "delightful_toolbar--toolbarSection--UFHyw delightful_toolbar--passthruLayout--gz5r2"
, ea = "delightful_toolbar--tool--g8UFJ"
, eo = "delightful_toolbar--pencilTool--z-K-X delightful_toolbar--tool--g8UFJ"
, el = "delightful_toolbar--toolIcon--hHlA3"
, es = "delightful_toolbar--toolIconIsDragging--NbbVm"
, ed = "delightful_toolbar--fade--z0hkc"
, ec = "delightful_toolbar--bodyCursorDrag--U0w4y"
, eu = "delightful_toolbar--customAnimatedStickyContainer--NwoG4"
, ep = "delightful_toolbar--customAnimatedSticky--Am-sV"
, em = "delightful_toolbar--enableDogEarAnimation--mKWg-"
, e_ = "delightful_toolbar--bottomSticky--EL0yA delightful_toolbar--stickyAnimationProperties--sQIyc"
, eh = "delightful_toolbar--middleSticky--euFjB delightful_toolbar--stickyAnimationProperties--sQIyc"
, eg = "delightful_toolbar--topSticky--rCKI- delightful_toolbar--stickyAnimationProperties--sQIyc"
, ef = "delightful_toolbar--customAnimatedStickyDogEar--W4GVZ"
, eE = "delightful_toolbar--overValidDropTarget--oTIIh"
, ey = "delightful_toolbar--shapeAndStickyShadow--19Urt"
, eb = "delightful_toolbar--hasDropShadow--Jr9fo"
, ev = "delightful_toolbar--toolIconIsSelected--zMbAE"
, eI = "delightful_toolbar--toolIconIsHovered--06bxV"
, eT = "delightful_toolbar--hasBoxShadow--GZIGk"
, eS = "delightful_toolbar--verticalButtonHolder--iacgh"
, ew = "delightful_toolbar--verticalButton--NunDU"
, eA = "delightful_toolbar--verticalButtonHovered--XWjJn"
, eC = "delightful_toolbar--verticalButtonSelected--gJEVN"
, eN = "delightful_toolbar--markerShadow--2r0xq"
, eO = "delightful_toolbar--markerShadowSmall--7PUZI"
, eL = "delightful_toolbar--easeInDltItemFill--rGBLG"
, eR = "delightful_toolbar--shapeSpawnAnimation--bHVVH"
, eP = "delightful_toolbar--middleStickyContainer--86OO8 delightful_toolbar--backgroundSticky--14jwo"
, ek = "delightful_toolbar--bottomStickyContainer--OO2fl delightful_toolbar--backgroundSticky--14jwo"
, eD = "delightful_toolbar--spriteSheet--t-eNg"
, eM = "delightful_toolbar--drawingToolPlaceholder--jjpMh"
, eF = "delightful_toolbar--drawingToolPlaceholderVisible--Agv4F"
, ex = "delightful_toolbar--washiTapePlaceholderSvg--848Ll"
, eU = "delightful_toolbar--washiTapeBig--2gCvj"
, eB = "delightful_toolbar--washiTapeShine--wVzk9"
, eV = "delightful_toolbar--washiTapeBigTape--5ZRa5"
, eH = "delightful_toolbar--washiTapeSmall--VIFNn"
, eG = "delightful_toolbar--washiTapeSmallTape--tEVin"
, eW = "delightful_toolbar--customAnimatedStickyContainerV2--v-iK4"
, eK = "delightful_toolbar--customAnimatedStickyV2--OVYQS"
, ez = "delightful_toolbar--customAnimatedStickyV3--qLTBA"
, ej = "delightful_toolbar--bottomStickyV2--p7HoD delightful_toolbar--stickyAnimationProperties--sQIyc"
, eY = "delightful_toolbar--bottomStickyV3---oRIg delightful_toolbar--stickyAnimationPropertiesV3--tf0ke"
, e$ = "delightful_toolbar--middleStickyV2--bfVaY delightful_toolbar--stickyAnimationProperties--sQIyc"
, eZ = "delightful_toolbar--middleStickyV3--BiM-v delightful_toolbar--stickyAnimationPropertiesV3--tf0ke"
, eq = "delightful_toolbar--topStickyV2---0qKu"
, eJ = "delightful_toolbar--topStickyV3--5ndgM delightful_toolbar--stickyAnimationPropertiesV3--tf0ke"
, eX = "delightful_toolbar--dogEarSticky---UqUA"
, eQ = "delightful_toolbar--reverse---CQhv"
, e0 = "delightful_toolbar--stickyDogEarContainer--FJHcW"
, e1 = "delightful_toolbar--forwards--nPpnP"
, e2 = "delightful_toolbar--noAnimation--XnCqV"
, e3 = "delightful_toolbar--middleStickyContainerV2--Dy8Na delightful_toolbar--backgroundStickyV2--GQPLn"
, e5 = "delightful_toolbar--bottomStickyContainerV2--XUsyj delightful_toolbar--backgroundStickyV2--GQPLn"
, e4 = "delightful_toolbar--fakeStickyContainer--OmfTq delightful_toolbar--backgroundStickyV2--GQPLn"
, e6 = "delightful_toolbar--fakeSticky--cTZnZ delightful_toolbar--stickyAnimationProperties--sQIyc"
, e8 = "delightful_toolbar--stickyOuterV3--ROW-i"
, e7 = "delightful_toolbar--stickyCurlV3--6kp8i"
, e9 = "delightful_toolbar--stickyMaskContainerV3--XBMQM"
, te = "delightful_toolbar--stickyMaskDynamicV3--hTZdB"
, tt = "delightful_toolbar--stickyMaskStaticV3---Ycp2"
, tn = "delightful_toolbar--showCurlV3--qx7tK"
, tr = "delightful_toolbar--noTransition--aPSPH"
, ti = "delightful_toolbar--stickyBaseV3--sQACX"
, ta = "delightful_toolbar--fakeStickyV3--Jq79A delightful_toolbar--stickyAnimationPropertiesV3--tf0ke"
}
,
525763: (e,t,n)=>{
"use strict";
n.d(t, {
A: ()=>u,
D: ()=>c
});
var r = n(772841)
, i = n(697867)
, a = n(866206)
, o = n(798867)
, l = n(356388)
, s = n(344301)
, d = n(444390)
, c = (e=>(e[e.CONNECTED = 0] = "CONNECTED",
e[e.DISCONNECTED = 1] = "DISCONNECTED",
e[e.RECONNECTING = 2] = "RECONNECTING",
e))(c || {});
class u {
constructor(e, t, n, r, a, o={}, s=new Set) {
var c, u, p;
this.args = e,
this.viewRegistry = n,
this.preloadViewKeys = s,
this.session = new i.A(e,t,n,this.emitter,(e,t)=>{
this.requestPaginationChange(e, t)
}
,o.enableCrossViewIncompleteInstanceCheck,o.shouldBubbleUpNonNullableResultErrors),
this.connection = new l.A(r,a,e,this.emitter,o),
this.connection.addObserver(this),
this.addEventListener(this.healthListener.bind(this));
for (let e = 0; e < ((null == (c = null == o ? void 0 : o.preloadedViews) ? void 0 : c.length) ?? 0); e++) {
let t = null == (u = null == o ? void 0 : o.preloadedViews) ? void 0 : u[e]
, n = (null == (p = null == o ? void 0 : o.preloadedViewArgs) ? void 0 : p[e]) ?? {};
this.session.subscribe(t, n, ()=>{}
),
this.preloadViewKeys.add((0,
d.J)(t._name, n))
}
}
transactionId = 1;
syncDelayForDebugging = 0;
syncQueryIds = new Map;
syncCallbacks = new Map;
pendingGlobalOptimisticUpdates = new Set;
globalOptimisticUpdateResolutionCallbacks = [];
session;
connection;
emitter = new o.b;
healthListeners = new Set;
pendingOptimisticMutationList = [];
pendingMutationList = [];
cleanup() {
this.connection.cleanup()
}
async connect() {
await this.connection.connect()
}
async close() {
await this.connection.closeWithoutReconnecting()
}
addEventListener(e) {
return this.emitter.addListener(e)
}
setOptionalMissingForView(e, t) {
this.session.setOptionalMissingForView(e, t)
}
unsetOptionalMissingForView(e) {
this.session.unsetOptionalMissingForView(e)
}
removeEventListener(e) {
return this.emitter.removeListener(e)
}
healthListener(e) {
if ("CONNECTION_STATE" === e.type) {
let t = this.getHealthStatusForConnectionState(e.state);
for (let e of this.healthListeners)
e(t)
}
}
getHealthStatus() {
return this.getHealthStatusForConnectionState(this.connection.getState())
}
getHealthStatusForConnectionState(e) {
return "connected" === e.type ? 0 : "connecting" === e.type ? 2 : 1
}
addHealthListener(e) {
return this.healthListeners.add(e),
()=>this.removeHealthListener(e)
}
removeHealthListener(e) {
this.healthListeners.delete(e)
}
sendExistingSubscriptions() {
for (let {viewRef: e, args: t, traceId: n} of (this.session.startReconnectionStateForPaginationQueries(),
this.session.uniqueSubscriptions()))
this.preloadViewKeys.has((0,
d.J)(e._name, t)) || this.requestSubscription(e, t, this.connection.isInitial() ? "initial_load" : "refresh", n)
}
handleMessage(e) {
switch (e.messageType) {
case "authSuccess":
if (this.args.sessionId = e.sessionId,
this.args.anonymousUserId = e.anonymousUserId,
!this.connection.isAuthenticated()) {
(0,
a.QI)(!1, "Expected connection to be in authenticated state");
break
}
for (let e of this.syncCallbacks.keys())
this.requestSync(e, this.syncQueryIds.get(e));
break;
case "pendingMutations":
this.hasUnresolvedGlobalOptimisticUpdates() ? (this.globalOptimisticUpdateResolutionCallbacks.push(()=>{
this.session.applyMutations(e.mutations)
}
),
this.pendingMutationList.push(e.mutations),
this.session.resolvePendingServerIdList(e.mutations)) : this.session.applyMutations(e.mutations);
break;
case "synced":
let t = this.syncCallbacks.get(e.transactionId);
t && t();
break;
case "viewSubscriptionFailed":
this.emitter.emit({
type: "ERROR",
error: new r.rT(e.errorCode)
}),
this.session.cleanupFailedSubscribeView(e.liveViewKey)
}
}
onConnectionOpen() {
this.sendExistingSubscriptions()
}
requestSubscription(e, t, n, r) {
let i = {
messageType: "subscribe",
viewName: e._name,
viewHash: e._hash,
loadType: n,
args: t,
traceId: r
};
this.connection.isConnected() && (this.connection.send(i),
this.emitter.emit({
type: "SUBSCRIBE_VIEW_SERVER",
view: e,
args: t,
traceId: r
}))
}
requestPaginationChange(e, t) {
let n = {
messageType: "paginationChangeMessage",
operationType: "LoadNext",
queryId: e,
count: t.count,
paginationArgs: t
};
this.connection.isConnected() && this.connection.send(n)
}
subscribeBase(e, t, n, r) {
let i = this.session.hasActiveSubscriptions(e._name, t)
, a = this.session.subscribe(e, t, n, r);
return i || (this.emitter.emit({
type: "SUBSCRIBE_VIEW_CLIENT",
view: e,
args: t,
traceId: r
}),
this.requestSubscription(e, t, "initial_load", r)),
a
}
getUnsubscribeFunction(e) {
return ()=>{
e.clientUnsubscribed = !0,
(0,
a.VG)(()=>{
e.unsubscribe(),
!this.session.hasActiveSubscriptions(e.view._name, e.args) && this.connection.isConnected() && (this.connection.send({
messageType: "unsubscribe",
viewName: e.view._name,
args: e.args
}),
this.emitter.emit({
type: "UNSUBSCRIBE_VIEW_SERVER",
view: e.view,
args: e.args
}))
}
, 2e3)
}
}
subscribe(e, t, n, r) {
var i;
let a = t;
(null == (i = this.viewRegistry.get(e._name)) ? void 0 : i.hasStaticQueries()) && (a = {
...t,
__requestId: (0,
s.A)()
});
let o = this.subscribeBase(e, a, n, r);
return this.getUnsubscribeFunction(o)
}
hasUnresolvedGlobalOptimisticUpdates() {
return this.pendingGlobalOptimisticUpdates.size > 0
}
handleBeforeOptimisticUpdateApplied(e) {
this.pendingGlobalOptimisticUpdates.add(e)
}
handleAfterOptimisticUpdateResolved(e) {
if (this.pendingGlobalOptimisticUpdates.delete(e),
!this.hasUnresolvedGlobalOptimisticUpdates()) {
let e = this.globalOptimisticUpdateResolutionCallbacks;
this.globalOptimisticUpdateResolutionCallbacks = [],
this.emitter.emit({
type: "MUTATIONS_BLOCKED_ON_OPTIMISTIC_UPDATE",
count: e.length
}),
this.session.batchMutations(()=>{
for (let t of e)
t()
}
),
this.checkMissingMutations()
}
}
checkUUIDExistenceInPendingMutation(e, t) {
for (let n of t)
for (let t in n)
for (let r in n[t].instances)
if (e === n[t].instances[r].uuid)
return !0;
return !1
}
checkMissingMutations() {
for (let e of this.pendingOptimisticMutationList)
for (let t in e)
for (let n in e[t]) {
let r = e[t][n];
(null == r ? void 0 : r.uuid) && (this.checkUUIDExistenceInPendingMutation(r.uuid, this.pendingMutationList) ? this.emitter.emit({
type: "PENDING_MUTATION_EXISTENCE",
exist: !0,
objectName: t,
optimisticInstance: r
}) : this.emitter.emit({
type: "PENDING_MUTATION_EXISTENCE",
exist: !1,
objectName: t,
optimisticInstance: r
}))
}
this.pendingOptimisticMutationList = [],
this.pendingMutationList = []
}
async applyMutations(e, t, n) {
let r;
let i = this.transactionId;
this.transactionId++;
let a = this.session.applyShadowMutations(i, e, n);
this.handleBeforeOptimisticUpdateApplied(i);
try {
r = await t
} catch (t) {
throw this.session.removeShadowMutations(i, e, !1),
this.handleAfterOptimisticUpdateResolved(i),
t
}
let o = !1;
try {
await this.sync(i, a),
o = !0
} finally {
this.pendingOptimisticMutationList.push(e),
this.globalOptimisticUpdateResolutionCallbacks.push(()=>{
this.session.removeShadowMutations(i, e, o)
}
),
this.handleAfterOptimisticUpdateResolved(i)
}
return r
}
waitForServerSideObjectsWithUUIDs(e) {
let t = [];
for (let n in e)
for (let r in e[n])
t.push(this.getIdFromUuid(n, r));
return Promise.all(t)
}
async applyMutationsWithUUID(e, t, n) {
let r;
let i = this.transactionId;
this.transactionId++;
let o = this.session.applyShadowMutationsWithUUID(i, e, n);
this.handleBeforeOptimisticUpdateApplied(i);
try {
r = await t
} catch (t) {
throw this.session.removeShadowMutationsWithUUID(i, e, !1),
this.handleAfterOptimisticUpdateResolved(i),
t
}
let l = !1;
try {
"create" === n ? (this.emitter.emit({
type: "WAIT_SERVER_OBJECTS_STARTED",
mutations: e
}),
await this.waitForServerSideObjectsWithUUIDs(e),
await (0,
a.yy)(this.syncDelayForDebugging),
this.emitter.emit({
type: "WAIT_SERVER_OBJECTS_ENDED",
mutations: e
})) : await this.sync(i, o),
l = !0
} finally {
this.pendingOptimisticMutationList.push(e),
this.globalOptimisticUpdateResolutionCallbacks.unshift(()=>{
this.session.removeShadowMutationsWithUUID(i, e, l)
}
),
this.handleAfterOptimisticUpdateResolved(i)
}
return r
}
getIdFromUuid(e, t) {
return this.session.getIdFromUuid(e, t)
}
requestSync(e, t) {
this.connection.isConnected() && (this.connection.send({
messageType: "sync",
transactionId: e,
queryIds: t
}),
this.emitter.emit({
type: "SYNC_STARTED",
transactionId: e
}))
}
async sync(e=this.transactionId++, t) {
let[n,r] = (0,
a.dS)();
this.syncCallbacks.set(e, r),
void 0 !== t && this.syncQueryIds.set(e, t),
this.requestSync(e, t),
await n,
this.syncDelayForDebugging && await (0,
a.yy)(this.syncDelayForDebugging),
this.syncCallbacks.delete(e),
this.syncQueryIds.delete(e),
this.emitter.emit({
type: "SYNC_COMPLETED",
transactionId: e
})
}
get debug() {
return {
subscriptions: this.session.getViewSubscriptionsForDebugging(),
prettyPrintLiveViewTree: e=>this.session.prettyPrintLiveViewTree(e),
setOptimisticUpdateResolutionDelay: e=>this.syncDelayForDebugging = e,
setOptionalMissingForView: (e,t)=>this.setOptionalMissingForView(e, t),
unsetOptionalMissingForView: e=>this.unsetOptionalMissingForView(e),
...this.connection.debug
}
}
}
}
,
786013: (e,t,n)=>{
"use strict";
n.d(t, {
C7b: ()=>r.C7b,
Fh: ()=>r.Fh,
Hw9: ()=>r.Hw9,
I5K: ()=>r.I5K,
LZx: ()=>r.LZx,
Vab: ()=>r.Vab,
_Dm: ()=>r._Dm,
_YF: ()=>r._YF,
bUL: ()=>r.bUL,
y4I: ()=>r.y4I
});
var r = n(948509)
}
,
948509: (e,t,n)=>{
"use strict";
n.d(t, {
C7b: ()=>i.C7,
Fh: ()=>i.Fh,
Hw9: ()=>o.Hw,
I5K: ()=>r.I5,
LZx: ()=>r.LZ,
Vab: ()=>i.V,
_Dm: ()=>i._D,
_YF: ()=>a._Y,
bUL: ()=>a.bU,
y4I: ()=>a.y4
}),
n(918393),
n(734122),
n(781505),
n(459980),
n(522479),
n(785925),
n(383496),
n(248904),
n(720592),
n(287160),
n(904422);
var r = n(772285);
n(442751),
n(578103),
n(181996);
var i = n(156140)
, a = n(862241)
, o = n(776024);
n(761390)
}
,
213376: (e,t,n)=>{
"use strict";
n.d(t, {
C7: ()=>p,
DL: ()=>s,
Db: ()=>f,
Dd: ()=>S,
H: ()=>E,
Qv: ()=>m,
_I: ()=>T,
_M: ()=>o,
bv: ()=>u,
fR: ()=>c,
g8: ()=>a,
h4: ()=>l,
jR: ()=>d,
lb: ()=>_,
po: ()=>w,
tl: ()=>v
});
var r = n(563838)
, i = n(654106);
let a = r.z.object({
endpoint: r.z.string(),
method: r.z.optional(r.z.union([r.z.literal("GET"), r.z.literal("POST"), r.z.literal("PUT")])),
data: r.z.record(r.z.any())
})
, o = r.z.any()
, l = r.z.object({
prompt_data: r.z.string(),
negative_prompt_data: r.z.string().default("blurry, bad"),
cfg_scale: r.z.number().default(10),
seed: r.z.number().default(20),
steps: r.z.number().default(50),
style_preset: r.z.string().default("photographic"),
height: r.z.number().default(512),
width: r.z.number().default(512),
additionalPrefix: r.z.string().optional().default("")
})
, s = r.z.object({
image: r.z.string(),
metadata: r.z.object({
height: r.z.number(),
width: r.z.number()
})
})
, d = r.z.object({
userPrompt: r.z.string(),
kitKey: r.z.string().nullable().optional(),
isLocal: r.z.boolean().nullable().optional()
})
, c = r.z.string();
r.z.object({
recommendedKitKey: r.z.string()
});
let u = r.z.object({
presets: r.z.array(r.z.string()).optional(),
theme: r.z.record(r.z.any()).optional(),
jsx: r.z.string().optional(),
dsKit: r.z.object({
kitKey: r.z.string(),
isLocal: r.z.boolean()
}).optional(),
trace: i.B.optional()
})
, p = r.z.object({
userPrompt: r.z.string()
})
, m = r.z.object({
content: r.z.string()
})
, _ = r.z.object({
version: r.z.literal(2),
darkMode: r.z.boolean(),
fontFamilies: r.z.object({
title: r.z.array(r.z.string()),
body: r.z.array(r.z.string()),
label: r.z.array(r.z.string())
}),
brandColor: r.z.string(),
colors: r.z.object({
text: r.z.string().array(),
background: r.z.string().array(),
border: r.z.string().array()
}),
borderRadii: r.z.array(r.z.number()),
spacing: r.z.array(r.z.number())
})
, h = r.z.object({
fontFamilies: r.z.array(r.z.string()),
colors: r.z.array(r.z.string()),
borderRadii: r.z.array(r.z.number()),
spacing: r.z.array(r.z.number())
})
, g = r.z.union([_, h])
, f = r.z.object({
prompt: r.z.string()
})
, E = r.z.object({
userPrompt: r.z.string(),
promptHistory: r.z.array(f).optional(),
storedInitialPrompt: r.z.string(),
jsx: r.z.string(),
jsxInsertReplace: r.z.string().optional(),
currentTheme: g,
kitKey: r.z.string(),
isLocal: r.z.boolean()
})
, y = r.z.object({
type: r.z.literal("text_or_image"),
affectedId: r.z.string(),
content: r.z.string()
})
, b = r.z.discriminatedUnion("type", [r.z.object({
type: r.z.literal("theme"),
content: _.extend({
iCantDoThis: r.z.boolean().optional()
}).partial()
}), y, r.z.object({
type: r.z.literal("insert"),
affectedId: r.z.string(),
insertBehavior: r.z.enum(["above", "below"]),
jsxToInsert: r.z.string()
}), r.z.object({
type: r.z.literal("replace"),
affectedId: r.z.string(),
jsxToInsert: r.z.string()
}), r.z.object({
type: r.z.literal("remove"),
affectedId: r.z.string()
}), r.z.object({
type: r.z.literal("move"),
affectedId: r.z.string(),
insertBehavior: r.z.enum(["above", "below"]),
destinationId: r.z.string()
}), r.z.object({
type: r.z.literal("replaceClasses"),
affectedId: r.z.string(),
classes: r.z.string().array()
}), r.z.object({
type: r.z.literal("iCantDoThis")
})])
, v = r.z.object({
action: b.optional(),
cortex_error: r.z.object({
type: r.z.string(),
data: r.z.any()
}).optional(),
trace: i.B.optional()
})
, I = r.z.object({
key: r.z.string(),
name: r.z.string(),
is_local: r.z.boolean(),
description: r.z.string()
});
r.z.object({
meta: r.z.object({
kits: r.z.array(I)
}),
error: r.z.boolean().optional(),
message: r.z.string().optional()
});
let T = r.z.enum(["normal", "transparent", "segment"])
, S = r.z.object({
id: r.z.string().optional(),
initialUserPrompt: r.z.string().optional(),
jsxJSON: r.z.string().optional(),
prompt: r.z.string().optional(),
desc: r.z.string().optional(),
transparent: r.z.boolean().optional(),
background: T.optional(),
height: r.z.number(),
width: r.z.number(),
description: r.z.string().optional()
})
, w = r.z.object({
image: r.z.string(),
foregroundImage: r.z.string().optional(),
description: r.z.string(),
trace: i.B.optional()
})
}
,
239074: (e,t,n)=>{
"use strict";
n.d(t, {
G: ()=>i
});
class r {
constructor(e) {
this.onParse = e
}
buffer = "";
feed(e) {
this.buffer += e;
let t = e=>{
this.buffer = this.buffer.slice(e)
}
, n = this.buffer.indexOf("\n");
for (; -1 !== n; ) {
let e = this.buffer.slice(0, n);
e.length > 0 && this.onParse({
content: e
}, !0),
t(n + 1),
n = this.buffer.indexOf("\n")
}
}
}
function i() {
let e;
let t = {
content: ""
}
, n = [];
return new TransformStream({
start(i) {
e = new r((e,r)=>{
t = e,
r && (n.push(t),
t = {
content: ""
},
i.enqueue([...n]))
}
)
},
transform(t, n) {
e.feed(t.delta)
}
})
}
}
,
10061: (e,t,n)=>{
"use strict";
n.d(t, {
fV: ()=>a,
if: ()=>r,
z6: ()=>i
});
let r = "---"
, i = `${r} BEGIN NOTES`
, a = `${r} BEGIN SUMMARY BODY`
}
,
409990: (e,t,n)=>{
"use strict";
n.d(t, {
DE: ()=>i,
aC: ()=>s,
e3: ()=>l
});
var r = n(563838)
, i = (e=>(e.NEUTRAL = "neutral",
e.CASUAL = "casual",
e.PROFESSIONAL = "professional",
e.CONCISE = "concise",
e.EXPANDED = "expanded",
e))(i || {});
let a = r.z.object({
id: r.z.string(),
text: r.z.string()
}).array()
, o = r.z.object({
tone: r.z.nativeEnum(i),
weight: r.z.number()
}).array()
, l = r.z.union([r.z.object({
text: r.z.string(),
tones: o
}), r.z.object({
texts: a,
tones: o
})])
, s = r.z.object({
id: r.z.string().optional(),
delta: r.z.string()
})
}
,
188242: (e,t,n)=>{
"use strict";
n.d(t, {
Eo: ()=>o,
l0: ()=>f,
f6: ()=>d,
BX: ()=>h,
wV: ()=>y,
wF: ()=>b,
Dp: ()=>I
}),
n(306811);
var r = n(989508);
n(776758);
var i = n(374894);
let a = "fig-kiwi"
, o = "fig-diff"
, l = "f" + function(...e) {
let t = e.shift();
return e.reverse().map(function(e, n) {
return String.fromCharCode(e - t - 39 - n)
}).join("")
}(19, 162, 163) + "t".split("").map(function(e) {
return String.fromCharCode(e.charCodeAt(0) + -71)
}).join("") + "sit" + function(...e) {
var t = e.shift();
return e.reverse().map(function(e, n) {
return String.fromCharCode(e - t - 1 - n)
}).join("")
}(18, 120)
, s = function(...e) {
var t = Array.prototype.slice.call(e)
, n = t.shift();
return t.reverse().map(function(e, t) {
return String.fromCharCode(e - n - 58 - t)
}).join("")
}(2, 165, 166, 162) + "t".split("").map(function(e) {
return String.fromCharCode(e.charCodeAt(0) + -71)
}).join("") + "d" + function(...e) {
var t = Array.prototype.slice.call(e)
, n = t.shift();
return t.reverse().map(function(e, t) {
return String.fromCharCode(e - n - 41 - t)
}).join("")
}(11, 161, 152, 153);
function d(e) {
return e.byteLength >= 2 && 80 === e[0] && 75 === e[1]
}
var c = n(235310)
, u = n(769955);
let p = [40, 181, 47, 253];
async function m(e) {
if (function(e) {
for (let t = 0; t < p.length; t++)
if (e[t] !== p[t])
return !1;
return !0
}(e)) {
let t = new u.A;
return await t.init(),
t.decode(e)
}
return c.wS(e)
}
async function _() {
return await n.e(1699).then(n.bind(n, 851699))
}
async function h(e) {
let t = await _();
if (d(e)) {
let n = new t.ZipReader(new t.Uint8ArrayReader(e));
for (let e of (await n.getEntries()))
if ("canvas.fig" === e.filename && e.getData)
return e.getData(new t.Uint8ArrayWriter)
}
return e
}
let g = [a, "fig-jam.", o, s, l];
function f(e) {
let t = String.fromCharCode(...e.subarray(0, 8));
if (!g.includes(t))
throw Error("Unsupported file type");
return t
}
async function E(e) {
let t = new DataView(e.buffer)
, n = a.length;
if (n + 4 > e.length)
throw Error("Missing version");
let o = t.getUint32(n, !0);
n += 4;
let l = t.getUint32(n, !0);
if ((n += 4) + l > e.length)
throw Error("Invalid schema length " + l);
let s = e.subarray(n, n + l);
n += l;
let d = t.getUint32(n, !0);
if ((n += 4) + d > e.length)
throw Error("Invalid message length " + d);
let c = e.subarray(n, n + d)
, u = await m(s)
, p = i.X(u)
, _ = r.F(p);
return {
version: o,
schema: p,
compiledSchema: _,
compressedSchema: s,
encodedMessage: await m(c)
}
}
async function y(e, t) {
e = await h(e);
let {version: n, schema: r, compiledSchema: i, compressedSchema: a, encodedMessage: o} = await E(e)
, l = i.decodeMessage(o)
, {nodeChanges: s, blobs: d=[], fileVersion: c} = l;
if (!s)
throw Error("File did not have node changes");
return {
nodeChanges: s,
schema: r,
blobs: d,
message: l,
compiledSchema: i,
compressedSchema: a,
migrationVersion: t ?? c ?? n
}
}
async function b(e, t) {
e = await h(e);
let {version: n, schema: r, compiledSchema: i, compressedSchema: a, encodedMessage: o} = await E(e)
, l = i.decodeDiffPayload(o)
, {nodeChanges: s, diffBasis: d} = l;
if (!s)
throw Error(".figd file buffer did not have node changes");
if (!d)
throw Error(".fig file buffer did not have diff basis");
if (!l.diffChunks)
throw Error(".fig file buffer did not have diff chunks");
let c = s.map((e,t)=>({
...d[t],
...e
}));
return {
before: {
nodeChanges: d
},
after: {
nodeChanges: c
},
compiledSchema: i,
schema: r,
diffPayload: l,
compressedSchema: a,
migrationVersion: t ?? n
}
}
async function v(e) {
let t = atob(e)
, n = await fetch(t, {
headers: {
"Cache-Control": "no-cache"
}
})
, r = await n.blob()
, a = await r.arrayBuffer();
return i.X(new Uint8Array(a))
}
async function I(e, t) {
let n;
if (null == t.encodedKiwiSchemaUrl)
throw Error("Missing encoded kiwi schema query param");
let i = await v(t.encodedKiwiSchemaUrl)
, a = {
nodeChanges: [],
blobs: []
};
return 0 !== e.length && (a = (n = r.F(i)).decodeMessage(e)),
{
resourceMetadata: {
migrationVersion: (null == t ? void 0 : t.migrationVersion) ?? a.fileVersion ?? -1,
endSequenceNumber: t.endSequenceNumber,
createdAt: t.createdAt,
encodedKiwiSchemaUrl: t.encodedKiwiSchemaUrl
},
message: a,
schema: i,
compiledSchema: n
}
}
}
,
632376: (e,t,n)=>{
"use strict";
n.d(t, {
EO: ()=>s,
wZ: ()=>c,
xv: ()=>o
});
var r = n(237870)
, i = n(121898);
let a = i.A.createLazyComponent(()=>n.e(5817).then(n.bind(n, 714932)).then(e=>e.AutosaveLogOutModal), (0,
r.Ij)("AutosaveLogOutModal"))
, o = (0,
r.Ju)(a)
, l = i.A.createLazyComponent(()=>n.e(5817).then(n.bind(n, 714932)).then(e=>e.HasAutosaveChangesModal), (0,
r.Ij)("HasAutosaveChangesModal"))
, s = (0,
r.Ju)(l)
, d = i.A.createLazyComponent(()=>n.e(5817).then(n.bind(n, 275081)).then(e=>e.AutosaveLearnMoreModal), (0,
r.Ij)("AutosaveLearnMoreModal"))
, c = (0,
r.Ju)(d)
}
,
295296: (e,t,n)=>{
"use strict";
n.d(t, {
B7: ()=>o,
dR: ()=>s,
lk: ()=>c,
In: ()=>a.I
});
var r = n(237870)
, i = n(711184)
, a = n(252011)
, o = (e=>(e.ORG_SELF_SERVE_UPGRADE_MODAL = "org_self_serve_upgrade_modal",
e.PLAN_COMPARISON = "plan_comparison_modal",
e.LIBRARY_DUPLICATE_OSS_SALES_UPSELL = "library_duplicate_oss_sales_upsell",
e))(o || {});
let l = i.A.createLazyComponent(()=>Promise.all([n.e(1497), n.e(8964)]).then(n.bind(n, 152495)).then(e=>e.UniversalUpgradeSequence), (0,
r.Ij)("UniversalUpgradeSequence"))
, s = (0,
r.Ju)(l, "UniversalUpgradeSequence")
, d = i.A.createLazyComponent(()=>Promise.all([n.e(1497), n.e(8964)]).then(n.bind(n, 505189)).then(e=>e.UpgradeContactSalesModal), (0,
r.Ij)("UpgradeContactSalesModal"))
, c = (0,
r.Ju)(d, "UpgradeContactSalesModal")
}
,
484525: (e,t,n)=>{
"use strict";
n.d(t, {
D: ()=>d,
_: ()=>s
});
var r = n(411855)
, i = n(574176)
, a = n(340433)
, o = n(256127)
, l = n(691552);
function s({is24x24: e}) {
return r.createElement(i.B, {
svg: o.A,
className: a.K,
svgClassName: e ? a.B : void 0
})
}
function d({is24x24: e}) {
return r.createElement(i.B, {
svg: l.A,
className: a.K,
svgClassName: e ? a.B : void 0
})
}
}
,
282545: (e,t,n)=>{
"use strict";
n.d(t, {
n: ()=>u,
v: ()=>p
});
var r = n(411855)
, i = n(939863)
, a = n(510211)
, o = n(882225)
, l = n(209552)
, s = n(365292)
, d = n(40848);
function c(e) {
let t = r.createElement(i.Tx, {
id: "community.badge.creator_fund"
});
return r.createElement(s.Ex, {
background: "white",
height: e.height,
border: e.border
}, e.disableIcon ? t : r.createElement(s.b3, null, r.createElement(s.OQ, null, r.createElement(a.J, null)), t))
}
function u({height: e, badges: t, border: n, disableIcon: i}) {
return t.some(e=>e === o.s.CREATOR_FUND) ? r.createElement(c, {
height: e,
border: n,
disableIcon: i
}) : null
}
function p(e) {
let t = r.createElement("a", {
href: "https://figma.com/community-creators",
target: "_blank",
className: d.RL,
onClick: e=>{
e.stopPropagation()
}
}, r.createElement(i.Tx, {
id: "community.detail_view.creator_fund_tooltip"
}), r.createElement("span", {
className: d.kz
}, r.createElement(i.Tx, {
id: "community.learn_more"
})));
return r.createElement(l.m_, {
preview: t
}, e.children)
}
}
,
175420: (e,t,n)=>{
"use strict";
n.d(t, {
C2: ()=>c,
Gx: ()=>u,
J3: ()=>d
});
var r = n(411855)
, i = n(939863)
, a = n(568493)
, o = n(882225)
, l = n(209552)
, s = n(40848);
function d(e) {
return e.some(e=>e === o.s.FIGMA_PARTNER)
}
function c({badges: e}, t, n) {
return d(e) ? r.createElement(a.c, {
showBorder: t,
is24x24: n
}) : null
}
function u(e) {
let t = r.createElement("a", {
href: "https://www.figma.com/partners/",
target: "_blank",
className: s.RL,
onClick: e=>{
e.stopPropagation()
}
}, r.createElement(i.Tx, {
id: "community.detail_view.figma_partner_this_creator_is"
}), r.createElement("span", {
className: s.kz
}, r.createElement(i.Tx, {
id: "community.learn_more"
})));
return r.createElement(l.m_, {
preview: t
}, e.children)
}
}
,
408552: (e,t,n)=>{
"use strict";
n.d(t, {
$3: ()=>y,
QP: ()=>E,
V6: ()=>m,
op: ()=>f
});
var r = n(411855)
, i = n(188507)
, a = n(939863)
, o = n(466636)
, l = n(697551)
, s = n(555328)
, d = n(483327)
, c = n(178787)
, u = n(365292);
function p(e) {
let t = (0,
o.bV)(e.resource.monetized_resource_metadata);
return r.createElement(u.Ex, {
background: "light",
height: e.height
}, t)
}
function m({resource: e, showPrice: t=!1, height: n, isPaymentAnnualSubscription: i=!1, backgroundColor: l, border: s}) {
if (e && (0,
c.Uv)(e.monetized_resource_metadata)) {
let d = i ? (0,
o.bV)(e.monetized_resource_metadata, !0) : (0,
o.bV)(e.monetized_resource_metadata);
return r.createElement(u.Ex, {
height: n,
background: l || "light",
border: s
}, t ? r.createElement(a.Tx, {
id: "community.buyer.subscribed_with_price",
priceString: d
}) : r.createElement(a.Tx, {
id: "community.buyer.subscribed"
}))
}
return r.createElement(u.Ex, {
height: n,
background: l || "light",
border: s
}, r.createElement(a.Tx, {
id: "community.buyer.purchased"
}))
}
function _({...e}) {
return r.createElement(u.Ex, null, r.createElement(a.Tx, {
id: "community.detail_view.third_party_badge.figma_partner"
}))
}
function h(e) {
return r.createElement(u.Ex, {
background: "light",
height: e.height
}, r.createElement(a.Tx, {
id: "community.detail_view.third_party_badge.off_platform"
}))
}
function g(e) {
return r.createElement(u.Ex, {
background: "light",
height: e.height
}, r.createElement(a.Tx, {
id: "community.buyer.in_app_purchases"
}))
}
var f = (e=>(e.PURCHASED = "purchased",
e.OFF_PLATFORM = "off_platform",
e.FREEMUM = "freemium",
e.PRICE = "price",
e))(f || {});
function E({resource: e, height: t, validBadges: n=Object.values(f)}) {
return y({
resource: e,
height: t,
validBadges: n,
authedActiveCommunityProfile: (0,
i.d4)(e=>e.authedActiveCommunityProfile)
})
}
function y({resource: e, height: t, validBadges: n=Object.values(f), authedActiveCommunityProfile: i}) {
return e ? !(i && (0,
l.cs)(i)) && (0,
d.t)(e) && e.community_resource_payment && (0,
o.QQ)(e.community_resource_payment) ? n.includes("purchased") ? r.createElement(m, {
resource: e,
height: t
}) : null : e.monetization_status && e.monetization_status === c.UC.FIGMA_PARTNER ? r.createElement(_, null) : (0,
s.PM)(e) ? n.includes("freemium") ? r.createElement(g, {
height: t
}) : null : (0,
s.m3)(e) ? n.includes("price") ? r.createElement(p, {
resource: e,
height: t
}) : null : (0,
s.zF)(e) && n.includes("off_platform") ? r.createElement(h, {
height: t
}) : null : null
}
}
,
17284: (e,t,n)=>{
"use strict";
n.d(t, {
I: ()=>o
});
var r = n(411855)
, i = n(282545)
, a = n(40848);
function o(e) {
let t = (0,
i.n)(e);
if (t) {
let n = e.hideTooltip ? t : r.createElement(i.v, null, t);
return r.createElement("div", {
className: a.sx
}, n)
}
return null
}
}
,
689289: (e,t,n)=>{
"use strict";
n.d(t, {
u: ()=>h
});
var r = n(411855)
, i = n(188507)
, a = n(654923)
, o = n(466636)
, l = n(697551)
, s = n(215822)
, d = n(555328)
, c = n(408552)
, u = n(939863)
, p = n(365292);
function m({orgName: e}) {
return r.createElement(p.Ex, {
background: "white",
height: "16",
border: "strong"
}, e ? r.createElement(u.Tx, {
id: "community.plugins.private_for_plugin_org_name",
orgName: e
}) : r.createElement(u.Tx, {
id: "community.plugins.private_for_your_organization"
}))
}
var _ = n(17284);
function h({resource: e}) {
var t, n;
let u = (0,
i.d4)(e=>e.authedActiveCommunityProfile)
, p = (0,
a.I)(e)
, h = (0,
o.QQ)(p)
, g = !(0,
l.cs)(u) && h ? r.createElement(c.V6, {
resource: e,
backgroundColor: "white",
height: "16",
border: "strong"
}) : null
, f = ((0,
d.I0)(e) || (0,
d.xQ)(e)) && (0,
s.Rt)(e) ? r.createElement(m, {
orgName: null == (n = null == (t = e.roles) ? void 0 : t.org) ? void 0 : n.name
}) : void 0;
return r.createElement(r.Fragment, null, g || f || r.createElement(_.I, {
badges: e.badges,
height: "16",
border: "strong",
disableIcon: !0
}))
}
}
,
16222: (e,t,n)=>{
"use strict";
n.d(t, {
b: ()=>_
});
var r = n(411855)
, i = n(744493)
, a = n(572206)
, o = n(939863);
let l = r.createElement("span", null, r.createElement("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}), r.createElement("path", {
d: "M1.8843 3.04791L2.23141 3.40779L1.8843 3.04791ZM7.12543 3.04791L7.47254 2.68802L7.12543 3.04791ZM1.8843 8.10293L2.23141 7.74304L2.23141 7.74304L1.8843 8.10293ZM2.75826 8.94585L3.10528 9.30582L3.47859 8.94594L3.10536 8.58597L2.75826 8.94585ZM2.75823 8.94588L2.41121 8.58591L2.0379 8.9458L2.41112 9.30577L2.75823 8.94588ZM7.99935 14.0009L7.65225 14.3608L7.99935 14.6956L8.34646 14.3608L7.99935 14.0009ZM14.114 8.10338L13.7669 7.74349L13.7669 7.74349L14.114 8.10338ZM14.114 3.04836L14.4611 2.68847L14.4611 2.68847L14.114 3.04836ZM8.87288 3.04836L8.52577 2.68847L8.52577 2.68847L8.87288 3.04836ZM7.99939 3.89083L7.65228 4.25072L7.99939 4.5855L8.34649 4.25072L7.99939 3.89083ZM2.23141 3.40779C3.48501 2.19871 5.52472 2.19871 6.77832 3.40779L7.47254 2.68802C5.83154 1.1053 3.17819 1.1053 1.53719 2.68802L2.23141 3.40779ZM2.23141 7.74304C0.987968 6.54376 0.987968 4.60708 2.23141 3.40779L1.5372 2.68802C-0.113961 4.28055 -0.113961 6.87029 1.5372 8.46281L2.23141 7.74304ZM3.10536 8.58597L2.23141 7.74304L1.5372 8.46281L2.41115 9.30574L3.10536 8.58597ZM3.10525 9.30585L3.10528 9.30582L2.41124 8.58588L2.41121 8.58591L3.10525 9.30585ZM8.34646 13.641L3.10533 8.586L2.41112 9.30577L7.65225 14.3608L8.34646 13.641ZM13.7669 7.74349L7.65225 13.641L8.34646 14.3608L14.4611 8.46326L13.7669 7.74349ZM13.7669 3.40824C15.0103 4.60753 15.0103 6.54421 13.7669 7.74349L14.4611 8.46326C16.1123 6.87074 16.1123 4.281 14.4611 2.68847L13.7669 3.40824ZM9.21998 3.40824C10.4736 2.19916 12.5133 2.19916 13.7669 3.40824L14.4611 2.68847C12.8201 1.10575 10.1668 1.10575 8.52577 2.68847L9.21998 3.40824ZM8.34649 4.25072L9.21998 3.40824L8.52577 2.68847L7.65228 3.53094L8.34649 4.25072ZM6.77832 3.40779L7.65228 4.25072L8.34649 3.53094L7.47254 2.68802L6.77832 3.40779Z",
fill: "var(--color-icon)"
})))
, s = r.createElement("span", null, r.createElement("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}), r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M7.12543 3.04791C5.67813 1.652 3.3316 1.652 1.8843 3.04791C0.437004 4.44381 0.437004 6.70702 1.8843 8.10293L2.75826 8.94585L2.75823 8.94588L7.99935 14.0009L14.114 8.10338C15.5613 6.70747 15.5613 4.44426 14.114 3.04836C12.6667 1.65245 10.3202 1.65245 8.87288 3.04836L7.99939 3.89083L7.12543 3.04791Z",
fill: "#F24822"
}), r.createElement("path", {
d: "M1.8843 3.04791L2.23141 3.40779L1.8843 3.04791ZM7.12543 3.04791L7.47254 2.68802L7.12543 3.04791ZM1.8843 8.10293L2.23141 7.74304L2.23141 7.74304L1.8843 8.10293ZM2.75826 8.94585L3.10528 9.30582L3.47859 8.94594L3.10536 8.58597L2.75826 8.94585ZM2.75823 8.94588L2.41121 8.58591L2.0379 8.9458L2.41112 9.30577L2.75823 8.94588ZM7.99935 14.0009L7.65225 14.3608L7.99935 14.6956L8.34646 14.3608L7.99935 14.0009ZM14.114 8.10338L13.7669 7.74349L13.7669 7.74349L14.114 8.10338ZM14.114 3.04836L14.4611 2.68847L14.4611 2.68847L14.114 3.04836ZM8.87288 3.04836L8.52577 2.68847L8.52577 2.68847L8.87288 3.04836ZM7.99939 3.89083L7.65228 4.25072L7.99939 4.5855L8.34649 4.25072L7.99939 3.89083ZM2.23141 3.40779C3.48501 2.19871 5.52472 2.19871 6.77832 3.40779L7.47254 2.68802C5.83154 1.1053 3.17819 1.1053 1.53719 2.68802L2.23141 3.40779ZM2.23141 7.74304C0.987968 6.54376 0.987968 4.60708 2.23141 3.40779L1.5372 2.68802C-0.113961 4.28055 -0.113961 6.87029 1.5372 8.46281L2.23141 7.74304ZM3.10536 8.58597L2.23141 7.74304L1.5372 8.46281L2.41115 9.30574L3.10536 8.58597ZM3.10525 9.30585L3.10528 9.30582L2.41124 8.58588L2.41121 8.58591L3.10525 9.30585ZM8.34646 13.641L3.10533 8.586L2.41112 9.30577L7.65225 14.3608L8.34646 13.641ZM13.7669 7.74349L7.65225 13.641L8.34646 14.3608L14.4611 8.46326L13.7669 7.74349ZM13.7669 3.40824C15.0103 4.60753 15.0103 6.54421 13.7669 7.74349L14.4611 8.46326C16.1123 6.87074 16.1123 4.281 14.4611 2.68847L13.7669 3.40824ZM9.21998 3.40824C10.4736 2.19916 12.5133 2.19916 13.7669 3.40824L14.4611 2.68847C12.8201 1.10575 10.1668 1.10575 8.52577 2.68847L9.21998 3.40824ZM8.34649 4.25072L9.21998 3.40824L8.52577 2.68847L7.65228 3.53094L8.34649 4.25072ZM6.77832 3.40779L7.65228 4.25072L8.34649 3.53094L7.47254 2.68802L6.77832 3.40779Z",
fill: "#F24822"
})));
var d = n(498606)
, c = n(993285);
function u({particleSystem: e, children: t}) {
let[n,i] = (0,
r.useState)([]);
return ((0,
c.N)((0,
r.useCallback)(t=>{
let n = Math.min(Math.max(t / 1e3, .001), .2)
, r = e.getEntities().length;
e.update(n),
(e.getEntities().length > 0 || r > 0) && i(e.getParticles())
}
, [e, i])),
n.length) ? r.createElement("div", {
className: "particle_system--particleContainer--XcgSY"
}, n.map((e,n)=>r.createElement("div", {
className: "particle_system--particle--zD5gS",
key: n,
style: {
transform: `translate3d(${e.position.x}px, ${e.position.y}px, 0px) rotate(${e.rotation}rad) translate(-50%, -50%) scale(${e.scale})`
}
}, t))) : null
}
class p extends i.J3 {
constructor(e, t, n) {
super(),
this.position = e,
this.kick = t,
this.rotation = n,
this.scale = 1 + Math.random(),
this.gravity = {
x: 0,
y: -100
},
this.kickDecay = .87,
this.lifetime = 3
}
}
class m extends i.vC {
constructor(e, t) {
super(),
this.position = e,
this.addParticle = t,
this.emissionProfile = e=>3 + Math.min(6, 12 * e),
this.emitParticle = ()=>{
let e = new a.Mi(Math.random() - .5,Math.random() - .5);
e.y += .2;
let t = e.unit();
t.y += .3;
let n = t.scale(500 * Math.pow(Math.random(), .6))
, r = .3 * t.x;
this.addParticle(new p({
x: this.position.x,
y: this.position.y
},n,r))
}
}
}
function _(e) {
let t = r.useRef(new i.ok).current
, n = r.useRef(null)
, c = ()=>{
var e;
let r = null == (e = n.current) ? void 0 : e.getBoundingClientRect();
if (r) {
let e = new a.Mi(r.left + r.width / 2,r.top + r.height / 2);
t.addEntity(new m(e,t.addParticle))
}
}
;
return e.disabled ? r.createElement("button", {
className: "base_like_button--buttonContainerDisabled--sOWAD base_like_button--buttonContainer--vfBIa cta_button--buttonBase--xMT0c text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L",
disabled: e.disabled
}, r.createElement("div", {
className: "base_like_button--likeIconDisabled--dfrWS base_like_button--likeIcon--70nFu text--fontPos18--rYXJb text--_fontBase--QdLsd"
}, l)) : r.createElement("button", {
className: "base_like_button--buttonContainer--vfBIa cta_button--buttonBase--xMT0c text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L",
onClick: t=>{
var r;
null == (r = e.onClick) || r.call(e, t),
e.shouldTriggerFunHearts && .3 >= Math.random() && n && c()
}
,
"data-tooltip": (0,
o.t)("community.like"),
"data-tooltip-type": d.Ib.TEXT,
"data-testid": "like-button"
}, r.createElement("div", {
className: "base_like_button--likeIcon--70nFu text--fontPos18--rYXJb text--_fontBase--QdLsd",
ref: n
}, e.isResourceLiked ? s : l), r.createElement(u, {
particleSystem: t
}, s))
}
}
,
292633: (e,t,n)=>{
"use strict";
n.d(t, {
i: ()=>l
});
var r = n(411855)
, i = n(195847)
, a = n(410004)
, o = n(16222);
function l() {
return r.createElement(o.b, {
onClick: ()=>(0,
a.FL)(i.qB.SIGN_UP, {
preventDefaultRedirect: !0
}),
isResourceLiked: !1,
shouldTriggerFunHearts: !1
})
}
}
,
829488: (e,t,n)=>{
"use strict";
n.d(t, {
fM: ()=>v,
mG: ()=>b,
w5: ()=>I
});
var r = n(411855)
, i = n(629019)
, a = n.n(i)
, o = n(776250)
, l = n(493323)
, s = n(762638)
, d = n(939863)
, c = n(837324)
, u = n(466636)
, p = n(672517)
, m = n(99506)
, _ = n(555328)
, h = n(178787)
, g = n(376485)
, f = n(498606)
, E = n(143678)
, y = n(555596);
function b(e, t, n, r) {
(0,
o.sx)("cmty_purchase_button_click", {
context: t,
resource_type: (0,
c.Dl)(e),
resource_id: e.id,
user_id: n,
profile_id: r
})
}
function v({resource: e, payment: t, context: n, tooltipText: i, disabled: o=!1, isLoading: c=!1, onClick: b=()=>{}
, onGetFreePreview: v=()=>{}
, enableWideButtonForStickyFooter: T}) {
if (!(0,
_.m3)(e))
return null;
let S = !!((0,
_.U)(e) && e.viewer_mode === m.y4.WHITEBOARD || ((0,
_.I0)(e) || (0,
_.xQ)(e)) && e.editor_type === g.HK.FIGJAM)
, w = n === _.aL.DETAIL && (0,
_.m3)(e) && (0,
_.U)(e) && "whiteboard" !== e.viewer_mode
, A = r.createElement(d.Tx, {
id: "community.buyer.get_free_preview"
})
, C = r.createElement(p.fu, {
name: E.e0.COMMUNITY_HUB_FILE_GET_FREE_PREVIEW_BUTTON
}, r.createElement(p.$z, {
onClick: v,
dataTestId: "community-get-free-preview-button",
className: a()(y.l$, s.cx.cursorPointer.$)
}, A))
, N = n === _.aL.PLUGIN_ROW || n === _.aL.REDESIGNED_PLUGIN_ROW;
return r.createElement("div", {
className: a()(y.xl, {
[y.AT]: n === _.aL.INSERTS
})
}, r.createElement("button", {
"data-tooltip-type": o && !c && i ? f.Ib.TEXT : void 0,
"data-tooltip": o && !c && i ? i : void 0,
"data-tooltip-show-immediately": !0,
className: a()({
[y.wu]: !N,
[y.sm]: n === _.aL.PLUGIN_ROW && !S,
[y.gX]: n === _.aL.PLUGIN_ROW && S,
[y.U3]: n === _.aL.REDESIGNED_PLUGIN_ROW,
[y.vp]: n !== _.aL.INSERTS && n !== _.aL.REDESIGNED_PLUGIN_ROW,
[y.Tn]: n === _.aL.INSERTS,
[y.Rc]: T,
[y.hh]: !N && S,
[y.r9]: o
}),
disabled: c || o,
onClick: b,
"data-testid": "community-purchase-button"
}, c && r.createElement(l.Z_, null), !N && r.createElement("div", {
style: {
opacity: c ? 0 : 1
},
className: y.GD
}, (0,
h.Uv)(e.monetized_resource_metadata) ? r.createElement(d.Tx, {
id: "community.buyer.subscribe"
}) : r.createElement(d.Tx, {
id: "community.buyer.buy"
})), r.createElement("div", {
style: {
opacity: c ? 0 : 1
},
className: a()({
[y.Yg]: !N,
[y.GD]: n === _.aL.PLUGIN_ROW,
[s.cx.colorText.$]: n === _.aL.REDESIGNED_PLUGIN_ROW
})
}, (0,
u.bV)(e.monetized_resource_metadata))), w && C, n === _.aL.DETAIL && (0,
u.Lt)({
resource: e,
payment: t
}) && r.createElement(I, {
metadata: e.monetized_resource_metadata
}))
}
function I({metadata: e, condensed: t}) {
return r.createElement("span", {
className: t ? y.it : y.BK
}, t ? r.createElement(d.Tx, {
id: "community.resource.free_trial_days",
days: e.trial_length_in_days
}) : r.createElement(d.Tx, {
id: "community.resource.includes_free_trial_days",
days: e.trial_length_in_days
}))
}
}
,
266608: (e,t,n)=>{
"use strict";
n.d(t, {
G: ()=>s
});
var r = n(411855)
, i = n(96328)
, a = n(939863)
, o = n(545941)
, l = n(440268);
function s(e) {
let t = (0,
o.mk)(e.resource);
if (!t)
return null;
let n = (0,
i.$M)(t);
return r.createElement("div", {
className: l.d
}, r.createElement("div", {
className: l.y
}, "|"), r.createElement(a.Tx, {
id: "community.try.people_use_this",
numPeople: t,
numPeopleStr: n
}))
}
}
,
973227: (e,t,n)=>{
"use strict";
n.d(t, {
yY: ()=>ee,
Gl: ()=>et
});
var r = n(411855)
, i = n(188507)
, a = n(629019)
, o = n.n(a)
, l = n(966712)
, s = n(762638)
, d = n(939863)
, c = n(203008)
, u = n(309225)
, p = n(499737)
, m = n(776621)
, _ = n(304783)
, h = n(743282)
, g = n(27087)
, f = n(195847)
, E = n(47506)
, y = n(392592)
, b = n(410004)
, v = n(848680)
, I = n(837324)
, T = n(727749)
, S = n(662275)
, w = n(756085)
, A = n(988022)
, C = n(697551)
, N = n(279453)
, O = n(555328)
, L = n(832807);
let R = "save-button-clicked";
function P(e, t, n, r) {
return function(i, a) {
var o, s;
let c = a();
if ((0,
A.Cu)(D({
state: c,
resource: e,
viewContext: t,
action: "save",
loggedIn: !!c.user,
forOrg: n
}), R),
!c.user) {
(0,
m.$D)(_.e.COMMUNITY, Error("[Community Saves] Attempted unsave without currentUser"));
return
}
if ((0,
O.U)(e)) {
let t = ()=>{
let t = g.Ay.post(`/api/hub_file/${e.id}/save`)
, n = `optimistic-resource-save-${(0,
h.g)()}`;
(0,
u.WB)().optimisticallyCreate({
ResourceSave: {
[n]: {
userId: c.user.id,
hubFileId: e.id,
createdAt: new Date(Date.now())
}
}
}, t),
t.then(()=>{
i(y.F.enqueue({
message: (0,
d.t)("community.saves.file_saved_for_your_profile"),
type: "resource-save"
}))
}
).catch(e=>{
(0,
m.$D)(_.e.COMMUNITY, e)
}
)
}
;
if (!(null == (o = c.authedActiveCommunityProfile) ? void 0 : o.public_at)) {
i(S.to({
type: L.G$,
data: {
userId: c.user.id,
variations: [L.FF.OPT_IN],
onFinish: t
}
}));
return
}
t()
} else
i((0,
T.d6)({
id: e.id,
resourceType: (0,
I.Vm)(e),
communityProfile: a().authedActiveCommunityProfile || void 0,
orgId: (0,
l.kc)().cmty_deprecate_browse_as_admin ? r : n && (null == (s = c.authedActiveCommunityProfile) ? void 0 : s.org_id) || void 0,
source: T.uR.COMMUNITY_HUB,
optimisticData: {
resource: e
}
}))
}
}
function k(e, t, n, r) {
return function(i, a) {
var o;
let s = a();
if (!s.user) {
(0,
m.$D)(_.e.COMMUNITY, Error("[Community Saves] Attempted save without currentUser"));
return
}
((0,
A.Cu)(D({
state: s,
resource: e,
viewContext: t,
action: "unsave",
loggedIn: !!s.user,
forOrg: n
}), R),
(0,
O.U)(e)) ? g.Ay.del(`/api/hub_file/${e.id}/save`).then(()=>{
i(y.F.enqueue({
message: (0,
d.t)("community.saves.file_removed_from_your_profile"),
type: "resource-save"
}))
}
).catch(e=>{
(0,
m.$D)(_.e.COMMUNITY, e)
}
) : i((0,
T.s1)({
id: e.id,
resourceType: (0,
I.Vm)(e),
communityProfile: a().authedActiveCommunityProfile || void 0,
orgId: (0,
l.kc)().cmty_deprecate_browse_as_admin ? r : n && (null == (o = s.authedActiveCommunityProfile) ? void 0 : o.org_id) || void 0,
source: T.uR.COMMUNITY_HUB
}))
}
}
function D({state: e, resource: t, viewContext: n, action: r, loggedIn: i, forOrg: a=!1}) {
var o;
return {
action: r,
resourceId: t.id,
resourceType: (0,
I.Vm)(t),
viewContext: n,
loggedIn: i,
forOrgId: a ? null == (o = e.authedActiveCommunityProfile) ? void 0 : o.org_id : void 0,
...(0,
v.Z)(e)
}
}
function M(e, t) {
let n = (0,
i.wA)()
, a = !!function(e, t) {
var n, r, i, a;
let o = (0,
p.Rs)(N.Ko6, {
hubFileId: t
}, {
enabled: e === O.vt.HUB_FILE
})
, l = (0,
p.Rs)(N.H$B, {
pluginId: t,
orgIds: []
}, {
enabled: e === O.vt.PLUGIN || e === O.vt.WIDGET
});
return ((null == (r = null == (n = o.data) ? void 0 : n.resourceSave) ? void 0 : r.createdAt) || (null == (a = null == (i = l.data) ? void 0 : i.pluginInstall) ? void 0 : a.createdAt)) ?? null
}((0,
I.Hh)(e), e.id)
, o = r.useCallback(r=>{
(0,
E.YQ)({
id: "cmty-detail-view-saved-button-clicked"
}),
null == r || r.stopPropagation(),
a ? n(k(e, t)) : n(P(e, t))
}
, [a, n, e, t]);
return r.useCallback(e=>{
(0,
b.FL)(f.qB.SIGN_UP, {
preventDefaultRedirect: !0
})
}
, []),
{
onUserSaveActionClick: o,
isResourceSavedForUser: a
}
}
function F(e, t) {
var n;
let a = (0,
i.wA)()
, o = (0,
i.d4)(e=>(0,
C.Tm)(e))
, l = (0,
p.Rs)(N.H$B, {
pluginId: e.id,
orgIds: Object.keys(o)
})
, s = (0,
p.Rs)(N.KC4, {
pluginId: e.id,
orgIds: Object.keys(o)
})
, d = r.useMemo(()=>{
var t, n;
if ((0,
O.U)(e))
return {};
let r = (null == (t = l.data) ? void 0 : t.orgPluginInstalls.status) !== p.tT.Loaded ? [] : (null == (n = l.data) ? void 0 : n.orgPluginInstalls.data) || []
, i = {};
return Object.values(o).forEach(t=>{
var n, a;
(!((0,
O.I0)(e) && t.plugins_whitelist_enforced || (0,
O.xQ)(e) && t.widgets_whitelist_enforced) || ((null == (n = s.data) ? void 0 : n.orgAllowlistedPlugins.status) !== p.tT.Loaded ? [] : (null == (a = s.data) ? void 0 : a.orgAllowlistedPlugins.data) || []).some(e=>e.orgId === t.id)) && (i[t.id] = r.some(e=>e.orgId === t.id))
}
),
i
}
, [o, s, e, null == (n = l.data) ? void 0 : n.orgPluginInstalls])
, c = r.useCallback((n,r)=>{
null == r || r.stopPropagation(),
d[n] ? a(k(e, t, !0, n)) : a(P(e, t, !0, n))
}
, [a, e, t, d]);
return {
savesByOrgId: d,
onOrgSaveAction: c
}
}
var x = n(694687)
, U = n(498606);
let B = "save_button--buttonContainerBrandColors--xQhK7"
, V = "save_button--buttonContainerBase--m8dS8 text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L"
, H = "save_button--buttonContainerBaseWide--EDZcF"
, G = "save_button--buttonContainer--JQjtD save_button--buttonContainerBase--m8dS8 text--fontNeg14--ARPWl text--_fontBase--QdLsd text--_negText--j9g-L"
, W = "save_button--iconContainer--Brlqe"
, K = "save_button--iconDisabled--15buP save_button--iconContainer--Brlqe";
function z(e) {
return r.createElement(j, {
...e
})
}
function j({resource: e, viewContext: t, authedActiveCommunityProfile: n}) {
let a = (0,
x.sZ)()
, {onOrgInstallActionClick: o, isResourceInstalledForOrg: l} = function(e, t) {
let n = (0,
i.wA)()
, {orgPlugins: a, orgWidgets: o} = (0,
w.Be)()
, l = (0,
O.xQ)(e) ? o[e.id] : a[e.id];
return {
onOrgInstallActionClick: r.useCallback(r=>{
r.stopPropagation(),
l ? n(k(e, t, !0)) : n(P(e, t, !0))
}
, [n, l, e, t]),
isResourceInstalledForOrg: l
}
}(e, t)
, s = (0,
O.xQ)(e) ? null == a ? void 0 : a.widgets_whitelist_enforced : null == a ? void 0 : a.plugins_whitelist_enforced
, u = (0,
w.ll)()
, p = (0,
w.U6)()
, m = (0,
O.xQ)(e) ? !!p[e.id] : !!u[e.id];
return s && !m ? r.createElement("button", {
className: G,
disabled: !0
}, r.createElement("div", {
className: K
}, r.createElement(c.LP, null))) : r.createElement("button", {
className: G,
onClick: o,
"data-tooltip-type": U.Ib.TEXT,
"data-tooltip": l ? (0,
d.t)("community.saves.remove_this_resource_for_everyone_at", {
orgName: n.name
}) : (0,
d.t)("community.saves.save_this_resource_for_everyone_at", {
orgName: n.name
})
}, r.createElement("div", {
className: W
}, l ? r.createElement(c.Ns, null) : r.createElement(c.LP, null)))
}
var Y = n(738269)
, $ = n(206074);
let Z = "community-save-button-dropdown";
function q(e) {
let {viewContext: t} = e
, n = (0,
i.d4)(e=>e.authedActiveCommunityProfile);
return (0,
l.kc)().cmty_deprecate_browse_as_admin ? r.createElement(J, {
resource: e.resource,
viewContext: t,
type: e.type,
theme: e.theme,
allowOrgSaves: e.allowOrgSaves,
enableWideButtonForStickyFooter: e.enableWideButtonForStickyFooter
}) : (null == n ? void 0 : n.team_id) || (null == n ? void 0 : n.org_id) && (0,
O.U)(e.resource) ? r.createElement("button", {
className: G,
disabled: !0
}, r.createElement("div", {
className: K
}, r.createElement(c.LP, null))) : (null == n ? void 0 : n.org_id) ? r.createElement(z, {
resource: e.resource,
viewContext: t,
authedActiveCommunityProfile: n
}) : r.createElement(Q, {
resource: e.resource,
viewContext: t,
type: e.type,
theme: e.theme,
enableWideButtonForStickyFooter: e.enableWideButtonForStickyFooter
})
}
function J({resource: e, viewContext: t, type: n, theme: a, allowOrgSaves: l, enableWideButtonForStickyFooter: u}) {
let p = (0,
i.wA)()
, {onUserSaveActionClick: m, isResourceSavedForUser: _} = M(e, t)
, {savesByOrgId: h} = F(e, t)
, g = l ? h : {}
, f = r.useRef(null)
, E = o()(V, {
[s.cx.gap6.pl16.pr16.$]: "containText" === n,
[B]: "brand" === a,
[s.cx.w40.h40.$]: "square" === n,
[H]: u
})
, y = o()(W, {
[s.cx.ml2.$]: "containText" === n
})
, b = "brand" === a ? "var(--color-icon-onbrand)" : void 0
, v = _ || Object.values(g).some(e=>e);
return r.createElement(r.Fragment, null, r.createElement("button", {
className: E,
onClick: e=>{
var t;
if (0 === Object.keys(g).length)
return m(e);
let n = null == (t = f.current) ? void 0 : t.getBoundingClientRect();
n && p(Y.j7({
type: Z,
data: {
targetRect: n
}
}))
}
,
"data-testid": "save-button",
"data-onboarding-key": "save-button",
"data-tooltip-type": U.Ib.TEXT,
ref: f,
"data-tooltip": v ? (0,
d.t)("community.saves.remove_from_saves") : (0,
d.t)("community.saves.save")
}, r.createElement("div", {
className: y
}, v ? r.createElement(c.Ns, {
fill: b
}) : r.createElement(c.LP, {
fill: b
})), "containText" === n && r.createElement("div", null, r.createElement(d.Tx, {
id: v ? "community.saves.remove_from_saves" : "community.saves.save_for_later"
}))), l && r.createElement(X, {
resource: e,
viewContext: t
}))
}
function X({resource: e, viewContext: t}) {
let n = (0,
i.wA)()
, a = (0,
i.d4)(e=>{
var t;
return (null == (t = e.dropdownShown) ? void 0 : t.type) === Z
}
)
, o = (0,
i.d4)(e=>{
var t, n;
return null == (n = null == (t = e.dropdownShown) ? void 0 : t.data) ? void 0 : n.targetRect
}
)
, {onUserSaveActionClick: l, isResourceSavedForUser: s} = M(e, t)
, {savesByOrgId: c, onOrgSaveAction: u} = F(e, t)
, p = (0,
i.d4)(e=>(0,
C.Tm)(e));
if ((0,
O.U)(e))
return null;
let m = [{
displayText: (0,
d.t)("community.saves.save_this_resource_for_yourself"),
isChecked: s,
callback: ()=>{
l()
}
}]
, _ = Object.values(p).map(e=>({
displayText: (0,
d.t)("community.saves.save_for_everyone_at", {
orgName: e.name
}),
isChecked: c[e.id],
callback: ()=>{
u(e.id)
}
}));
return m = m.concat(_),
r.createElement(r.Fragment, null, a && r.createElement($.j, {
showPoint: !0,
items: m,
onSelectItem: (e,t)=>{
e.callback && e.callback("", null, n, t)
}
,
parentRect: o,
dispatch: n
}))
}
function Q({resource: e, viewContext: t, type: n, theme: i, enableWideButtonForStickyFooter: a}) {
let {onUserSaveActionClick: l, isResourceSavedForUser: u} = M(e, t)
, p = o()(V, {
[s.cx.gap6.pl16.pr16.$]: "containText" === n,
[B]: "brand" === i,
[s.cx.w40.h40.$]: "square" === n,
[H]: a
})
, m = o()(W, {
[s.cx.ml2.$]: "containText" === n
})
, _ = "brand" === i ? "var(--color-icon-onbrand)" : void 0;
return r.createElement("button", {
className: p,
onClick: l,
"data-testid": "save-button",
"data-onboarding-key": "save-button",
"data-tooltip-type": U.Ib.TEXT,
"data-tooltip": u ? (0,
d.t)("community.saves.remove_from_saves") : (0,
d.t)("community.saves.save")
}, r.createElement("div", {
className: m
}, u ? r.createElement(c.Ns, {
fill: _
}) : r.createElement(c.LP, {
fill: _
})), "containText" === n && r.createElement("div", null, r.createElement(d.Tx, {
id: u ? "community.saves.remove_from_saves" : "community.saves.save_for_later"
})))
}
function ee(e) {
return r.createElement(q, {
resource: e.resource,
viewContext: e.viewContext,
type: "square",
theme: "default",
allowOrgSaves: !0
})
}
function et(e) {
return r.createElement(q, {
resource: e.resource,
viewContext: e.viewContext,
type: "containText",
theme: "brand",
enableWideButtonForStickyFooter: e.enableWideButtonForStickyFooter
})
}
}
,
203008: (e,t,n)=>{
"use strict";
n.d(t, {
$O: ()=>d,
Jv: ()=>s,
LP: ()=>i,
Ns: ()=>a,
TI: ()=>o,
rc: ()=>l
});
var r = n(411855);
function i(e) {
return r.createElement("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("g", {
clipPath: "url(#clip0_8184_71416)"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}), r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M8 10.5212L12 13.3883V2H4V13.3883L8 10.5212ZM3.5625 14.9322C3.33074 15.0983 3 14.9403 3 14.6634V1.67197C3 1.30085 3.3148 1 3.70312 1H12.2969C12.6852 1 13 1.30085 13 1.67197V14.6634C13 14.9403 12.6693 15.0983 12.4375 14.9322L8 11.7515L3.5625 14.9322Z",
fill: e.fill || "var(--color-icon)"
})), r.createElement("defs", null, r.createElement("clipPath", {
id: "clip0_8184_71416"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}))))
}
function a(e) {
return r.createElement("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("g", {
clipPath: "url(#clip0_8174_71409)"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}), r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M3.5625 14.9322C3.33074 15.0983 3 14.9403 3 14.6634V1.67197C3 1.30085 3.3148 1 3.70312 1H12.2969C12.6852 1 13 1.30085 13 1.67197V14.6634C13 14.9403 12.6693 15.0983 12.4375 14.9322L8 11.7515L3.5625 14.9322Z",
fill: e.fill || "var(--color-icon)"
})), r.createElement("defs", null, r.createElement("clipPath", {
id: "clip0_8174_71409"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}))))
}
function o() {
return r.createElement("svg", {
viewBox: "0 0 8 12",
height: "100%",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M4 7.75L7 10V1H1V10L4 7.75ZM0.45 11.6625C0.26459 11.8016 0 11.6693 0 11.4375V0.5625C0 0.25184 0.25184 0 0.5625 0H7.4375C7.74816 0 8 0.25184 8 0.5625V11.4375C8 11.6693 7.73541 11.8016 7.55 11.6625L4 9L0.45 11.6625Z",
fill: "var(--color-icon, black)"
}))
}
function l() {
return r.createElement("svg", {
viewBox: "0 0 8 12",
height: "100%",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
d: "M0 0.5625C0 0.25184 0.25184 0 0.5625 0H7.4375C7.74816 0 8 0.25184 8 0.5625V11.4375C8 11.6693 7.73541 11.8016 7.55 11.6625L4 9L0.45 11.6625C0.26459 11.8016 0 11.6693 0 11.4375V0.5625Z",
fill: "var(--color-icon, black)"
}))
}
function s() {
return r.createElement("svg", {
height: "100%",
viewBox: "0 0 10 15",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M5 9.98876L9 13.2775V1.02772H1V13.2775L5 9.98876ZM0.609261 14.9148C0.363725 15.1167 0 14.937 0 14.6139V0.770787C0 0.345093 0.335786 0 0.75 0H9.25C9.66421 0 10 0.345093 10 0.770787V14.6139C10 14.937 9.63628 15.1167 9.39074 14.9148L5 11.3049L0.609261 14.9148Z",
fill: "var(--color-icon, black)"
}))
}
function d() {
return r.createElement("svg", {
height: "100%",
viewBox: "0 0 10 15",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
d: "M0 0.770787C0 0.345093 0.335786 0 0.75 0H9.25C9.66421 0 10 0.345093 10 0.770787V14.6139C10 14.937 9.63628 15.1167 9.39074 14.9148L5 11.3049L0.609261 14.9148C0.363725 15.1167 0 14.937 0 14.6139V0.770787Z",
fill: "var(--color-icon, black)"
}))
}
}
,
662691: (e,t,n)=>{
"use strict";
n.d(t, {
U: ()=>r
});
let r = n(258520).U
}
,
911073: (e,t,n)=>{
"use strict";
n.d(t, {
Wc: ()=>g,
Z: ()=>E,
r5: ()=>y
});
var r = n(411855)
, i = n(188507)
, a = n(776250)
, o = n(27087)
, l = n(762638)
, s = n(939863)
, d = n(837324)
, c = n(198181)
, u = n(712121)
, p = n(296045)
, m = n(361656)
, _ = n(206144)
, h = n(761541);
function g({profileId: e, following: t, onFollowChange: n, trackingInfo: i}) {
return r.createElement("button", {
onClick: r=>{
r.preventDefault(),
r.stopPropagation(),
n(!t),
(t ? o.Ay.del : o.Ay.put)("/api/follows", {
followed_profile_id: e
}).then(()=>{
t || (0,
a.sx)("community_hub_profile_follow", {
profileId: e,
...i
})
}
).catch(e=>{
if ("You're already following this user" === e.message) {
n(!t);
return
}
n(t)
}
)
}
,
className: t ? h.xz : h.u8,
"data-follow": (0,
s.t)("community.follow.follow"),
"data-unfollow": (0,
s.t)("community.follow.unfollow"),
"data-following": (0,
s.t)("community.follow.following")
})
}
let f = {};
function E({author: e, isHoverStateRedesignEnabled: t=!1}) {
let[n,o] = r.useState(!1);
r.useEffect(()=>{
(0,
c.M)() && u.L.getFollows({
authorId: e.id
}).then(({data: t})=>{
let n = t.meta.current_user_is_following;
f[e.id] = n,
o(n)
}
).catch(e=>{
throw Error("Could not get following status.")
}
)
}
, [e]);
let E = (0,
i.d4)(e=>e.authedActiveCommunityProfile)
, y = (0,
d.Dm)(e.id, E)
, b = ()=>{
(0,
a.sx)("community_hub_profile_preview__profile_visit", {
profileId: e.id
})
}
, v = e.description ? e.description.trim().replace(/\s+/g, " ") : "";
return t ? r.createElement("div", {
className: h.f2
}, r.createElement("div", {
className: h.ft
}, r.createElement("div", null, r.createElement(p.e, {
adtlClassName: h.qg,
entity: e
}), r.createElement("div", {
className: h.Tz
}, r.createElement(m.l, {
profile: e,
showBorder: !0
})))), r.createElement("div", {
className: h.RZ
}, r.createElement("span", {
className: h.jp
}, e.name), r.createElement("span", {
className: h.Ab
}, "@", e.profile_handle)), v && r.createElement("div", {
className: h.i
}, r.createElement("span", {
className: h.t3
}, v)), r.createElement("div", {
className: h.bY
}, r.createElement(s.Tx, {
id: "community.profiles.follower_count",
followerCount: e.follower_count,
formattedFollowerCount: r.createElement("span", null, e.follower_count)
}))) : r.createElement("div", {
className: h.tt
}, r.createElement("div", {
className: h.d9
}, r.createElement(_.A6, {
to: `/@${e.profile_handle}`,
onClickTracking: b,
onClick: e=>e.stopPropagation()
}, r.createElement(p.e, {
adtlClassName: h.my,
entity: e
}), r.createElement("div", {
className: h.zP
}, r.createElement(m.l, {
profile: e,
showBorder: !0
}))), r.createElement(_.A6, {
to: `/@${e.profile_handle}`,
onClickTracking: b,
onClick: e=>e.stopPropagation()
}, r.createElement("div", {
className: h.fh
}, r.createElement("span", {
className: l.cx.ellipsis.noWrap.overflowHidden.$
}, e.name)), r.createElement("div", {
className: h.WO
}, "@", e.profile_handle))), !y && r.createElement(g, {
profileId: e.id,
following: f[e.id],
onFollowChange: t=>{
o(t),
f[e.id] = t,
(0,
a.sx)("community_hub_profile_preview__profile_follow", {
profileId: e.id
})
}
}))
}
function y({authors: e}) {
return r.createElement("div", null, e.map(e=>r.createElement(_.A6, {
className: h.u$,
to: `/@${e.profile_handle}`,
onClick: e=>e.stopPropagation(),
key: e.id
}, r.createElement(p.e, {
entity: e
}), r.createElement("div", {
className: h.nZ
}, r.createElement("span", {
className: l.cx.ellipsis.noWrap.overflowHidden.$
}, e.name), r.createElement(m.l, {
profile: e
})))))
}
}
,
209552: (e,t,n)=>{
"use strict";
n.d(t, {
ms: ()=>_,
So: ()=>h,
A5: ()=>y,
m_: ()=>b
});
var r = n(411855)
, i = n(629019)
, a = n.n(i);
let o = "dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd"
, l = "dropdown--dropdownContents--BqcL5"
, s = "dropdown--dropdownValue--9lJPW"
, d = "dropdown--dropdownPreview--3Ox9k"
, c = "dropdown--label--cIJtO"
, u = (e,t)=>{
let n = Array(e.length);
return e.forEach((e,r)=>{
if (null == t ? void 0 : t[r])
n[r] = t[r];
else if (Array.isArray(e)) {
let t = e.find(e=>e.checked);
t ? n[r] = t.key : n[r] = e[0].key
} else
n[r] = {},
Object.entries(e).find(([e,t])=>{
t.checked && (n[r][e] = !0)
}
)
}
),
n
}
, p = (()=>{
let e = [];
return ["scroll", "resize"].forEach(t=>{
window.addEventListener(t, ()=>{
e = e.filter(e=>m(e.el, !1, e.initialHPosition, e.initialVPosition))
}
)
}
),
{
set: (t,n,r)=>{
e.push({
el: t,
initialHPosition: n,
initialVPosition: r
})
}
}
}
)()
, m = (e,t=!1,n,r)=>{
var i;
if (!e || !("true" === e.parentNode.getAttribute("show-dropdown") || e.parentNode === document.activeElement || (null == (i = e.parentNode) ? void 0 : i.firstChild) === document.activeElement || e === document.activeElement) && !t)
return !1;
if (e.parentNode instanceof HTMLElement && "true" === e.parentNode.dataset.disableRepositioning)
return !0;
e.dataset.vPosition = r || "below",
e.dataset.hPosition = "";
let a = e.getBoundingClientRect();
return a.bottom > window.innerHeight - 20 ? e.dataset.vPosition = "above" : a.top < 20 && (e.dataset.vPosition = "below"),
a.right > window.innerWidth - 100 ? e.dataset.hPosition = "right" : a.left < 20 ? e.dataset.hPosition = "left" : e.dataset.hPosition !== n && (e.dataset.hPosition = n),
!0
}
;
function _({children: e, preview: t, className: n, horizontalPosition: i, disableRepositioning: a}) {
let s = r.useRef(null);
return r.createElement("div", {
className: n || o,
tabIndex: 0,
"data-disable-repositioning": a,
onFocus: ()=>{
p.set(s.current, i),
a || m(s.current, !0, i)
}
}, e, r.createElement("button", {
className: "dropdown--mobileBackground--WSE2Z",
onClick: e=>{
var t;
return null == (t = document.activeElement) ? void 0 : t.blur()
}
}), r.createElement("div", {
className: l,
"data-v-position": "below",
"data-h-position": i || "",
ref: s
}, t))
}
function h({children: e, preview: t, className: n, dropdownClassName: i, horizontalPosition: s, verticalPosition: d, disableRepositioning: c, borderRadius: u, allowHoverOnDropdownContents: _=!0}) {
var h;
let g = r.useRef(null)
, [f,E] = r.useState(!1)
, [y,b] = r.useState(0)
, v = e=>{
window.innerWidth < 500 || (b(setTimeout(()=>{
let t = g.current;
t && t.parentNode && (t.parentNode.setAttribute("show-dropdown", e + ""),
!1 === e ? setTimeout(()=>{
E(e)
}
, 150) : (p.set(t, s, d),
E(e)))
}
, 150)),
clearTimeout(y))
}
;
return r.useLayoutEffect(()=>{
f && !c && m(g.current, !0, s, d)
}
, [null == (h = g.current) ? void 0 : h.dataset.hPosition, f]),
r.createElement("div", {
className: n || o,
"show-dropdown": "false",
onMouseEnter: ()=>v(!0),
onMouseLeave: ()=>v(!1),
tabIndex: 0,
"data-disable-repositioning": c,
"data-hover-dropdown": !0
}, r.createElement("div", {
onMouseLeave: _ ? void 0 : ()=>v(!1)
}, e), r.createElement("div", {
className: a()(l, i),
style: u ? {
borderRadius: `${u}px`
} : {},
"data-v-position": d || "below",
"data-h-position": s || "",
ref: g,
"data-dropdown-contents": !0
}, f && t))
}
function g({show: e}) {
return r.createElement("svg", {
className: e ? "dropdown--showCheckmark--td6Ke" : "",
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "var(--color-icon-menu)",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M13.2069 5.2073L7.70694 10.7073L6.99983 11.4144L6.29272 10.7073L3.29272 7.7073L4.70694 6.29309L6.99983 8.58598L11.7927 3.79309L13.2069 5.2073Z"
}))
}
function f({optionGroup: e, value: t, onSelect: n}) {
let i;
return i = Array.isArray(e) ? e.map(({key: e, label: i})=>r.createElement("div", {
key: e,
role: "button",
onKeyDown: e=>{
13 === e.keyCode && e.target.click()
}
,
onClick: ()=>{
document.activeElement.blur(),
n(e)
}
,
className: s,
"data-key": e,
tabIndex: 0
}, r.createElement(g, {
show: t === e
}), r.createElement("div", {
className: c
}, i))) : Object.entries(e).map(([e,i])=>r.createElement("div", {
key: e,
role: "button",
onKeyDown: e=>{
13 === e.keyCode && e.target.click()
}
,
onClick: ()=>{
document.activeElement.blur(),
n(e)
}
,
className: s,
"data-key": e,
tabIndex: 0
}, r.createElement(g, {
show: !0 === t[e]
}), r.createElement("div", {
className: c
}, i.label))),
r.createElement(r.Fragment, null, i)
}
function E({label: e, additionalClassName: t, onClick: n, dataOnboardingKey: i}) {
return r.createElement("div", {
role: "button",
tabIndex: 0,
className: a()(d, t),
onMouseDown: e=>{
var t;
(null == (t = document.activeElement) ? void 0 : t.matches(`.${d.replace(/\s/g, ".")}`)) && (document.activeElement.blur(),
e.preventDefault())
}
,
onClick: n,
"data-onboarding-key": i
}, r.createElement("div", {
className: c
}, e), r.createElement("svg", {
width: "10",
height: "7",
viewBox: "0 0 10 7",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
d: "M1 1L5 5L9 1",
stroke: "var(--text-primary)",
strokeWidth: "1.5"
})))
}
function y({name: e, options: t, onUpdate: n, onClick: i, initialValues: o, adtlClassName: l, dataOnboardingKey: s}) {
if (!Array.isArray(t[0]))
throw Error("First options input needs to be an array type, for preview reasons.");
let d = u(t, o);
return r.createElement(_, {
className: a()(l || "dropdown--selectDropdown--Lqj6J dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd"),
preview: r.createElement(r.Fragment, null, r.createElement("div", {
className: "dropdown--mobileDropdownHeader--mEjUR"
}, r.createElement("b", null, e)), t.map((e,i)=>r.createElement("div", {
key: i + "-group"
}, r.createElement(f, {
optionGroup: e,
value: d[i],
onSelect: t=>{
let r = [...d];
if (Array.isArray(e))
r[i] = t;
else {
let e = r[i];
r[i] = {
...e,
[t]: !e[t]
}
}
n(r)
}
}), i < t.length - 1 && r.createElement("hr", {
className: "dropdown--optionGroupDivider--tmhsB"
}))))
}, r.createElement(E, {
onClick: i,
dataOnboardingKey: s,
label: t[0].find(e=>e.key === d[0]).label
}))
}
function b({preview: e, children: t}) {
return r.createElement(h, {
className: a()({
"dropdown--tooltip--Sh4Vu dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd": !0
}),
preview: e,
horizontalPosition: "center"
}, t)
}
}
,
674694: (e,t,n)=>{
"use strict";
n.d(t, {
O7: ()=>o,
Sl: ()=>s,
Xy: ()=>l
});
var r = n(411855)
, i = n(999021)
, a = n(487386)
, o = (e=>(e.DETAIL = "detail",
e.UNIVERSAL_INSERT = "universal_insert",
e))(o || {});
function l(e) {
let t = {
onLoad: e.onLoad,
loading: "lazy"
};
return r.createElement(i.c, {
sizes: function(e) {
switch (e) {
case "universal_insert":
return;
case "detail":
t = a.a.COMMUNITY_HUB_FILE_THUMBNAIL_DETAIL;
break;
default:
t = a.a.COMMUNITY_HUB_FILE_THUMBNAIL_DEFAULT
}
var t, n = Object.entries(t).map(([e,t],n)=>`(min-width: ${e}px) ${t}vw`);
return n.push("100vw"),
n.join(", ")
}(e.thumbnailContext),
srcSet: function(e, t, n, r) {
let i;
if (!e || !t)
return "";
let o = Object.entries(n || {});
if (!n) {
let n = function(e) {
if (!e)
return;
let t = e.lastIndexOf("/")
, n = e.indexOf(".", t);
return e.substring(t + 1, n)
}(t);
o = Object.keys(a.B.COMMUNITY_HUB_FILE_THUMBNAIL).map(t=>[t, `/community/file/${e}/thumbnail/${t}?signature=${n}`])
}
return (o.push(["1600", t]),
"universal_insert" === r ? o.map(([e,t])=>{
let n = Math.round(parseInt(e) / 80 * 10) / 10;
return `${t} ${n}x`
}
) : o.map(([e,t])=>`${t} ${e}w`)).join(", ")
}(e.hubFileId, e.image, e.resizedThumbnailUrls, e.thumbnailContext),
src: e.image,
image_type: "COMMUNITY_HUB_FILE_THUMBNAIL",
alt: e.alt,
className: e.className,
imageProps: t
})
}
function s(e) {
return e.hubFileId ? r.createElement(l, {
...e
}) : r.createElement(r.Fragment, null)
}
}
,
240411: (e,t,n)=>{
"use strict";
n.d(t, {
cz: ()=>b,
i8: ()=>v,
my: ()=>I
});
var r = n(411855)
, i = n(629019)
, a = n.n(i)
, o = n(96328)
, l = n(574176)
, s = n(939863)
, d = n(874647)
, c = n(233562)
, u = n(837324)
, p = n(612776)
, m = n(545941)
, _ = n(296045)
, h = n(206144)
, g = n(911073)
, f = n(209552)
, E = n(637961)
, y = n(815234);
function b({resource: e, currentUserLiked: t, isRedesignEnabled: n, inPluginRow: i}) {
return r.createElement("div", {
className: a()(t ? E.QW : E.aK, {
[E.uh]: n && i,
[E.JE]: n && !i
})
}, r.createElement(d.O, null), (0,
o.$M)(e.like_count))
}
function v({resource: e, isRedesignEnabled: t, inPluginRow: n}) {
return r.createElement("div", {
className: a()(E.Au, {
[E.uh]: t && n,
[E.JE]: t && !n
})
}, r.createElement(l.B, {
svg: y.A
}), (0,
o.$M)((0,
m.mk)(e)))
}
function I(e) {
var t;
let {resource: n, trackingInfo: i} = e
, a = (0,
u.qD)(n)
, o = n.community_publishers.accepted
, l = o[0]
, d = (0,
p.X5)()
, y = r.createElement("span", {
className: d ? E.Jm : E.cy
}, (0,
c.Lj)(n))
, I = (0,
u.ss)(n)
, T = !!(null == (t = (0,
u.Bl)(n.id, (0,
u.Vm)(n)).data) ? void 0 : t[0]);
if (!l)
return null;
let S = o.length > 1 ? r.createElement(f.So, {
className: d ? E.Xi : void 0,
preview: r.createElement(g.r5, {
authors: o
})
}, y) : y;
return r.createElement("div", {
className: d ? E._j : E.UN
}, !d && r.createElement(h.A6, {
className: E.Xq,
to: `/@${l.profile_handle}`
}, r.createElement(f.So, {
preview: r.createElement(g.Z, {
author: l
})
}, r.createElement(_.e, {
key: l.id,
entity: l,
adtlClassName: E.em
}))), r.createElement("div", {
"data-redesigned-resource-meta": d,
className: E.rn
}, r.createElement(h.A6, {
to: (0,
u._t)({
resource: n,
trackingInfo: i
}),
onClick: e=>{
(0,
m.cB)(I, n.id, void 0, i)
}
,
className: E.DD
}, a.name), r.createElement(h.A6, {
className: d ? E.rh : E.Xq,
to: `/@${l.profile_handle}`
}, d ? r.createElement(s.Tx, {
id: "community.resource_tiles.by_author",
author: S
}) : S)), r.createElement("div", {
className: E.o1
}, r.createElement(b, {
currentUserLiked: T,
resource: n,
isRedesignEnabled: !0
}), r.createElement(v, {
resource: n,
isRedesignEnabled: !0
})))
}
}
,
590237: (e,t,n)=>{
"use strict";
n.d(t, {
Cv: ()=>el,
mb: ()=>ec,
cS: ()=>es,
Yw: ()=>em,
UG: ()=>ep,
fz: ()=>e_,
Mr: ()=>eo,
bN: ()=>eu
});
var r = n(411855)
, i = n(629019)
, a = n.n(i)
, o = n(96328)
, l = n(564577)
, s = n(428322)
, d = n(348425)
, c = n(762638)
, u = n(939863)
, p = n(408552)
, m = n(674694)
, _ = n(654923)
, h = n(233562)
, g = n(837324)
, f = n(612776)
, E = n(466636)
, y = n(545941)
, b = n(99506)
, v = n(555328)
, I = n(978527)
, T = n(943089)
, S = n(282545)
, w = n(361656)
, A = n(296045)
, C = n(335666)
, N = n(609271)
, O = n(672517)
, L = n(911073)
, R = n(209552)
, P = n(97128)
, k = n(376485)
, D = n(206144)
, M = n(991679);
function F({resource: e, context: t}) {
let n;
return n = t === v.aL.REDESIGNED_PLUGIN_ROW ? M.gz : e.editor_type === k.HK.FIGJAM || e.editor_type === k.HK.UNIVERSAL ? M.kJ : M.GJ,
r.createElement(D.A6, {
to: (0,
g.UI)({
path: P.Uo.PLUGIN,
id: e.id
}),
className: n
}, r.createElement(u.Tx, {
id: "community.view"
}))
}
var x = n(240411)
, U = n(776250)
, B = n(278733)
, V = n(848680)
, H = n(197979)
, G = n(582493);
let W = "plugin_dropdown_preview--pluginMediaContainer--QVFs6"
, K = "plugin_dropdown_preview--pluginImage--UjTg4";
function z({carouselImages: e, version: t, aspectRatio: n}) {
let[i,o] = r.useState(0);
r.useEffect(()=>{
var t = setInterval(()=>{
o((i + 1) % e.length)
}
, 1500);
return ()=>{
clearInterval(t)
}
}
);
let l = r.useMemo(()=>e.map(e=>(0,
H.P)(e)[0]), [e]);
return r.createElement("div", {
className: W,
style: B.sx.add({
aspectRatio: n
}).$
}, l.map((e,n)=>r.createElement("img", {
alt: t.name + " preview",
key: n,
className: n === i ? a()(K, "plugin_dropdown_preview--activeImage--efzMn") : a()(K, "plugin_dropdown_preview--inactiveImage--NdowZ"),
src: e
})))
}
function j({plugin: e, pluginVideo: t, aspectRatio: n}) {
let i = (0,
V.S)();
return r.createElement("div", {
className: "plugin_dropdown_preview--pluginVideo--IlluJ",
style: B.sx.add({
aspectRatio: n
}).$
}, r.createElement(G.A, {
videoId: t.video_file_uuid,
src: (0,
H.Mf)(t, e),
fallbackSrc: t.url,
useHLS: !0,
autoPlay: !0,
muted: !0,
onEnded: ()=>{
(0,
U.sx)("rdp_video_ended", {
community_resource_id: e.id,
resouce_type: "plugin",
...i
})
}
}))
}
function Y({imageUrl: e, version: t, aspectRatio: n}) {
return r.createElement("div", {
className: W,
style: B.sx.add({
aspectRatio: n
}).$
}, r.createElement("img", {
className: K,
src: e,
alt: t.name + " preview"
}))
}
function $({plugin: e, version: t, aspectRatio: n, video: i}) {
if (i)
return r.createElement(j, {
plugin: e,
pluginVideo: i,
aspectRatio: n
});
let a = (0,
g.N6)(e);
return a.length > 0 ? r.createElement(z, {
carouselImages: a,
version: t,
aspectRatio: n
}) : r.createElement(Y, {
imageUrl: e.thumbnail_url || "",
version: t,
aspectRatio: n
})
}
function Z({plugin: e, aspectRatio: t, video: n}) {
var i;
let a = (0,
g.qD)(e)
, o = (0,
y.G8)(a, void 0, !0)
, l = (null == (i = e.tags) ? void 0 : i.slice(0, 3)) ?? [];
return r.createElement("div", {
className: "plugin_dropdown_preview--hoverCard--zzMPg",
"data-testid": "plugin-dropdown"
}, r.createElement($, {
plugin: e,
version: a,
aspectRatio: t,
video: n
}), r.createElement("div", {
className: "plugin_dropdown_preview--pluginMeta--uuieP"
}, r.createElement("div", {
className: "plugin_dropdown_preview--pluginName--qx9M6 text--fontPos13--xW8hS text--_fontBase--QdLsd"
}, r.createElement("span", {
className: c.cx.ellipsis.noWrap.overflowHidden.$
}, a.name)), o && r.createElement("div", {
className: "plugin_dropdown_preview--pluginTagline--Rs0sq text--fontPos11--2LvXf text--_fontBase--QdLsd"
}, r.createElement("span", null, o))), l.length > 0 && r.createElement("div", {
className: "plugin_dropdown_preview--tagsContainer--QpeL2"
}, l.map(e=>r.createElement("div", {
key: e,
className: "plugin_dropdown_preview--tags--IlWLE text--fontPos11--2LvXf text--_fontBase--QdLsd"
}, e))))
}
var q = n(61714)
, J = n(166521)
, X = n(860168);
let Q = "plugin_row--hoverVerticalPositioning--a-FPx"
, ee = "plugin_row--avatarBoxShadowOverride--MBDpQ";
function et({pluginUrl: e, trackTileClick: t, animationIndex: n, version: i}) {
return r.createElement("div", {
"data-testid": "plugin-icon"
}, r.createElement(D.A6, {
to: e,
onClick: t,
animationIndex: n,
className: "plugin_row--pluginRowImageContainer--mYY6b"
}, r.createElement(I.V, {
className: "plugin_row--pluginRowIcon--cDHTC",
alt: `Figma plugin "${i.name}"`,
plugin: {
...i,
redirect_icon_url: i.redirect_icon_url || g.ZD
},
onLoad: e=>e.target.style.opacity = "1",
onError: e=>e.target.src = g.ZD,
loading: "lazy"
})))
}
function en({resource: e, animationIndex: t, onIntersectionChange: n, isOrgTeamBrowsing: i, index: o, trackingInfo: l}) {
let d = (0,
g.qD)(e)
, c = (0,
v.m3)(e)
, m = (0,
v.PM)(e)
, h = (0,
_.I)(e)
, b = (0,
E.QQ)(h)
, I = r.useMemo(()=>i ? r.createElement(F, {
resource: e,
context: v.aL.REDESIGNED_PLUGIN_ROW
}) : !c || b || m ? r.createElement(q.d, {
resource: e,
context: v.aL.REDESIGNED_PLUGIN_ROW
}) : r.createElement(J.I, {
resource: e,
context: v.aL.REDESIGNED_PLUGIN_ROW
}), [i, e, c, b, m])
, T = (0,
p.QP)({
resource: e,
height: "16",
validBadges: [p.op.FREEMUM, p.op.OFF_PLATFORM, p.op.PURCHASED]
})
, S = (0,
g._t)({
resource: e,
trackingInfo: l
})
, w = ()=>(0,
y.cB)("plugin", e.id, o, l)
, P = (e.community_publishers.accepted ?? [])[0]
, k = !!(null == (U = (0,
g.Bl)(e.id, v.vt.PLUGIN).data) ? void 0 : U[0])
, M = (0,
f.ZG)();
var U, B = void 0, V = "";
if (M()) {
B = function(e) {
let t = {};
if (e.carousel_videos && 0 !== Object.keys(e.carousel_videos ?? {}).length)
return Object.entries(e.carousel_videos).forEach(([e,n])=>{
t[e] = n
}
),
Object.entries(t).sort(([e],[t])=>parseInt(e) - parseInt(t))[0][1]
}(e);
var V = "";
if (B)
V = B.thumbnail_sha1;
else {
let t = (0,
g.N6)(e);
V = (null == t ? void 0 : t.length) > 0 ? (0,
H.P)(t[0])[0] : e.thumbnail_url || ""
}
}
let G = (0,
C.X)(V) ? "16/9" : "2/1";
return r.createElement("div", {
"data-testid": "plugin-row"
}, r.createElement(s.a, {
onIntersectionChange: e=>null == n ? void 0 : n(e)
}), r.createElement("div", {
className: "plugin_row--pluginRow--lySkC"
}, M() ? r.createElement(R.So, {
preview: r.createElement(Z, {
plugin: e,
aspectRatio: G,
video: B
}),
borderRadius: 13,
dropdownClassName: Q,
verticalPosition: "above",
allowHoverOnDropdownContents: !1
}, r.createElement(et, {
pluginUrl: S,
trackTileClick: w,
animationIndex: t,
version: d
})) : r.createElement(et, {
pluginUrl: S,
trackTileClick: w,
animationIndex: t,
version: d
}), r.createElement("div", {
className: "plugin_row--pluginRowMetaInfo--mqV-l"
}, r.createElement(D.A6, {
to: S,
className: "plugin_row--pluginRowTitleAndDescription--5V-o7",
onClick: w,
animationIndex: t
}, r.createElement("div", {
className: "plugin_row--pluginRowTitleAndBadge--FQjVh"
}, r.createElement("div", {
className: "plugin_row--pluginRowTitle--GOOmC text--fontPos13--xW8hS text--_fontBase--QdLsd"
}, d.name), T), r.createElement("div", {
className: "plugin_row--pluginRowDescription--7cthx text--fontPos11--2LvXf text--_fontBase--QdLsd",
style: T ? {
WebkitLineClamp: 1
} : {}
}, (0,
y.G8)(d, void 0, !0))), r.createElement("div", {
className: "plugin_row--pluginRowMetaAndCTA--A-TFN"
}, P && r.createElement(N.Ay, {
mediaQuery: `(min-width: ${X.ikM})`
}, r.createElement(R.So, {
preview: r.createElement(L.Z, {
author: P,
isHoverStateRedesignEnabled: M()
}),
className: "plugin_row--pluginRowAvatar--S3Edj dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd",
borderRadius: M() ? 13 : 2,
allowHoverOnDropdownContents: !M(),
verticalPosition: M() ? "above" : "below",
dropdownClassName: M() ? Q : ""
}, M() ? r.createElement(O.o3, {
to: `/@${P.profile_handle}`,
trackingEventName: "community_hub_profile_preview__profile_visit",
trackingProperties: {
profileId: P.id
},
className: "plugin_row--pluginRowAvatarLink--EdvUq"
}, r.createElement(A.e, {
adtlClassName: ee,
key: P.id,
entity: P,
size: 24
})) : r.createElement(A.e, {
adtlClassName: ee,
key: P.id,
entity: P,
size: 24
}))), r.createElement("div", {
className: "plugin_row--pluginRowMetrics--TZFF7 text--fontPos13--xW8hS text--_fontBase--QdLsd"
}, r.createElement(x.cz, {
currentUserLiked: k,
resource: e,
isRedesignEnabled: !0,
inPluginRow: !0
}), r.createElement(R.So, {
disableRepositioning: !0,
className: a()("plugin_row--toolTip--Uxz1M dropdown--dropdown--IX0tU text--fontPos14--OL9Hp text--_fontBase--QdLsd", "plugin_row--toolTipPositioning--OgVuh"),
preview: r.createElement(u.Tx, {
id: "community.try.used_by_n_people",
num: e.unique_run_count
})
}, r.createElement(x.i8, {
resource: e,
isRedesignEnabled: !0,
inPluginRow: !0
}))), r.createElement(N.Ay, {
mediaQuery: `(min-width: ${X.dxy})`
}, I)))))
}
var er = n(316795)
, ei = n(637961)
, ea = n(851750);
function eo({resource: e}) {
let t = (0,
p.QP)({
resource: e,
height: "24"
});
if (t)
return r.createElement("div", {
className: ei.BQ
}, t);
let n = (0,
S.n)({
badges: e.badges
});
return n ? r.createElement("div", {
className: ei.BQ
}, r.createElement(S.v, null, n)) : null
}
function el({resource: e, isMetaHidden: t, animationIndex: n, onIntersectionChange: i, onClickOverride: o, index: l, trackingInfo: c, subView: u}) {
var p;
let _ = (0,
f.X5)()
, h = (0,
g.qD)(e)
, E = e.client_meta && (null == (p = JSON.parse(e.client_meta)) ? void 0 : p.background_color)
, I = e.thumbnail_is_set;
e.viewer_mode === b.y4.WHITEBOARD && (E = {
r: 1,
g: 1,
b: 1
});
let S = r.createElement(m.Xy, {
image: e.thumbnail_url,
hubFileId: e.id,
onLoad: e=>e.target.style.opacity = "1",
alt: h.name,
resizedThumbnailUrls: e.resized_thumbnail_urls
})
, w = I ? ei.zA : e.viewer_mode === b.y4.WHITEBOARD ? ei.ZW : ei.XO;
return r.createElement("div", {
className: ei.Sl,
"data-animation-index": n,
"data-testid": "hub-file-tile"
}, r.createElement(s.a, {
onIntersectionChange: e=>null == i ? void 0 : i(e)
}), r.createElement(D.A6, {
to: (0,
g._t)({
resource: e,
trackingInfo: c
}),
onClick: t=>{
(0,
y.cB)("hub_file", e.id, l, c, u)
}
,
onClickOverride: o,
className: _ ? ei.nJ : ei.BN
}, r.createElement("div", {
className: a()(w, {
[ei.$c]: _
}),
style: {
backgroundColor: E && `rgb(${255 * E.r}, ${255 * E.g}, ${255 * E.b})`
}
}, S, e.viewer_mode === b.y4.PROTOTYPE && r.createElement(d.t, {
svg: ea.A,
className: ei.wr,
useOriginalSrcFills_DEPRECATED: !0,
fallbackSvg: ea.A
}), r.createElement("div", {
className: ei.JM
}, r.createElement(T.dn, {
editorType: (0,
g.JJ)(e.viewer_mode)
})), !t && r.createElement(eo, {
resource: e
}))), !t && r.createElement(x.my, {
resource: e,
type: v.vt.HUB_FILE,
trackingInfo: c
}))
}
function es({resource: e, isMetaHidden: t, animationIndex: n, onIntersectionChange: i, onClickOverride: o, index: l, trackingInfo: d, subView: c}) {
var u, p;
let m = (0,
f.X5)()
, _ = (0,
g.qD)(e);
return r.createElement("div", {
"data-animation-index": n,
className: ei.IQ,
"data-testid": "plugin-tile"
}, r.createElement(s.a, {
onIntersectionChange: e=>null == i ? void 0 : i(e)
}), r.createElement(D.A6, {
to: (0,
g._t)({
resource: e,
trackingInfo: d
}),
onClick: t=>{
(0,
y.cB)("plugin", e.id, l, d, c)
}
,
onClickOverride: o,
className: m ? ei.nJ : ei.BN
}, r.createElement("div", {
className: a()(ei.XO, {
[ei.$c]: m
})
}, r.createElement("div", {
className: ei.ZR
}, r.createElement(I.V, {
plugin: _,
alt: `Figma plugin "${_.name}"`,
onLoad: e=>e.target.style.opacity = "1",
loading: "lazy"
})), !t && r.createElement(r.Fragment, null, r.createElement("div", {
className: ei.A$
}, (0,
y.G8)(_)), (null == (u = _.manifest) ? void 0 : u.editorType) && r.createElement("div", {
className: ei.JM
}, r.createElement(T.dn, {
editorType: null == (p = _.manifest) ? void 0 : p.editorType
})), r.createElement(eo, {
resource: e
})))), !t && r.createElement(x.my, {
resource: e,
type: v.vt.PLUGIN,
trackingInfo: d
}))
}
function ed({uniqueRunCount: e, containerClassName: t}) {
return r.createElement(R.So, {
className: ei.Si,
disableRepositioning: !0,
preview: r.createElement(u.Tx, {
id: "community.try.used_by_n_people",
num: e
})
}, r.createElement("div", {
className: t ?? ei.Qj
}, r.createElement("svg", {
width: "10",
height: "12",
viewBox: "0 0 10 12",
style: {
fill: "var(--color-text-secondary, rgba(0, 0, 0, 0.8))"
},
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M7 3C7 4.10457 6.10457 5 5 5C3.89543 5 3 4.10457 3 3C3 1.89543 3.89543 1 5 1C6.10457 1 7 1.89543 7 3ZM8 3C8 4.65685 6.65685 6 5 6C3.34315 6 2 4.65685 2 3C2 1.34315 3.34315 0 5 0C6.65685 0 8 1.34315 8 3ZM5 8C7.20914 8 9 9.79086 9 12H10C10 9.23858 7.76142 7 5 7C2.23858 7 0 9.23858 0 12H1C1 9.79086 2.79086 8 5 8Z"
})), (0,
o.$M)(e)))
}
function ec({resource: e, animationIndex: t, onIntersectionChange: n, isOrgTeamBrowsing: i, index: o, trackingInfo: d}) {
let c = (0,
g.qD)(e)
, m = (0,
v.m3)(e)
, b = (0,
v.PM)(e)
, S = (0,
_.I)(e)
, w = (0,
E.QQ)(S)
, A = r.useMemo(()=>i ? r.createElement(F, {
resource: e
}) : !m || w || b ? r.createElement(er.d, {
resource: e,
context: v.aL.PLUGIN_ROW
}) : r.createElement(J.I, {
resource: e,
context: v.aL.PLUGIN_ROW
}), [m, b, i, e, w])
, C = (0,
p.QP)({
resource: e,
height: "16",
validBadges: [p.op.FREEMUM, p.op.OFF_PLATFORM, p.op.PURCHASED]
})
, N = (0,
g._t)({
resource: e,
trackingInfo: d
})
, O = ()=>(0,
y.cB)("plugin", e.id, o, d);
return (0,
f.X5)() ? r.createElement(en, {
resource: e,
animationIndex: t,
onIntersectionChange: n,
isOrgTeamBrowsing: i,
index: o,
trackingInfo: d
}) : r.createElement("div", {
"data-testid": "plugin-row"
}, r.createElement(s.a, {
onIntersectionChange: e=>null == n ? void 0 : n(e)
}), r.createElement("div", {
className: ei.ws
}, r.createElement(D.A6, {
to: N,
onClick: O,
animationIndex: t,
className: ei.IW
}, r.createElement(I.V, {
className: ei.v2,
alt: `Figma plugin "${c.name}"`,
plugin: {
...c,
redirect_icon_url: c.redirect_icon_url || g.ZD
},
onLoad: e=>e.target.style.opacity = "1",
onError: e=>e.target.src = g.ZD,
loading: "lazy"
}), r.createElement(T.li.BadgeContainer, null, r.createElement(T.dn, {
editorType: c.manifest.editorType,
is16x16: !0
}))), r.createElement(D.A6, {
to: N,
className: ei.PQ,
onClick: O,
animationIndex: t
}, r.createElement("div", {
className: a()(ei.iu, {
[ei.Dk]: !!C
})
}, r.createElement("span", {
className: ei.Qd
}, c.name), C), r.createElement("div", {
className: a()(ei.Oy, {
[ei.BP]: !!C
})
}, (0,
y.G8)(c))), r.createElement("div", {
className: ei.$n
}, (0,
h.Lj)(e)), r.createElement("div", {
className: ei.uq
}, r.createElement(u.Tx, {
id: "community.view_bar.updated_date",
date: r.createElement(l.h1, {
date: c.created_at
})
})), r.createElement(ed, {
uniqueRunCount: e.unique_run_count
}), r.createElement("div", {
className: ei.V
}, A)))
}
function eu({resource: e, isMetaHidden: t, animationIndex: n, onIntersectionChange: i, onClickOverride: o, index: l, trackingInfo: d, subView: c}) {
var u;
let p = (0,
f.X5)()
, m = (0,
g.qD)(e);
return r.createElement("div", {
"data-animation-index": n,
className: ei.HL,
"data-testid": "widget-tile"
}, r.createElement(s.a, {
onIntersectionChange: e=>null == i ? void 0 : i(e)
}), r.createElement(D.A6, {
to: (0,
g._t)({
resource: e,
trackingInfo: d
}),
onClick: t=>{
(0,
y.cB)("widget", e.id, l, d, c)
}
,
onClickOverride: o,
className: p ? ei.nJ : ei.BN
}, r.createElement("div", {
className: a()(ei.XO, {
[ei.$c]: p
})
}, r.createElement("img", {
alt: m.name,
src: m.redirect_snapshot_url ?? void 0,
onLoad: e=>e.target.style.opacity = "1",
loading: "lazy"
}), !t && r.createElement(r.Fragment, null, (null == (u = m.manifest) ? void 0 : u.editorType) && r.createElement("div", {
className: ei.JM
}, r.createElement(T.dn, {
editorType: m.manifest.editorType
})), r.createElement(eo, {
resource: e
})))), !t && r.createElement(x.my, {
resource: e,
type: v.vt.WIDGET,
trackingInfo: d
}))
}
function ep({resource: e}) {
return r.createElement(r.Fragment, null)
}
function em({index: e, resource: t, animationIndex: n, authedActiveCommunityProfile: i, trackingInfo: a}) {
var l, s;
let {model: d, resources: p} = t
, [m,_] = r.useState(d.current_user_is_following)
, h = m && !d.current_user_is_following ? 1 : 0
, f = (0,
g.Dm)(d.id, i)
, E = (null == (l = d.img_urls) ? void 0 : l["500_500"]) || (null == (s = d.img_urls) ? void 0 : s["120_120"]);
return r.createElement(D.A6, {
to: `/@${d.profile_handle}`,
onClick: ()=>{
(0,
y.cB)("profile", d.id, e, a)
}
,
className: ei.gO,
animationIndex: n
}, r.createElement("div", {
className: ei.zG,
style: {
backgroundImage: `url(${E})`
}
}), r.createElement("div", {
className: ei.r6
}, r.createElement("div", {
className: ei.$P
}, r.createElement("span", {
className: c.cx.ellipsis.noWrap.overflowHidden.$
}, d.name), r.createElement(w.l, {
profile: d,
tooltip: !0
})), r.createElement("div", {
className: ei.nz
}, "@", d.profile_handle), r.createElement("div", {
className: ei.Az
}, !f && r.createElement(L.Wc, {
profileId: d.id,
onFollowChange: ()=>_(!m),
following: m,
trackingInfo: a
}), r.createElement("div", {
className: ei.mU
}, r.createElement("div", {
className: ei.QX
}, (0,
u.t)("community.follow.followers")), r.createElement("div", {
className: ei.JQ
}, (0,
o.$M)(d.follower_count + h))))), r.createElement("div", {
className: ei.jm
}, p.length > 0 ? p.slice(0, 3).map(e=>(0,
v.xQ)(e) ? r.createElement("div", {
className: ei.vR,
key: e.id
}, r.createElement("img", {
alt: (0,
g.qD)(e).name,
src: (0,
g.qD)(e).redirect_snapshot_url ?? void 0,
loading: "lazy"
})) : ((0,
v.I0)(e),
r.createElement("div", {
className: ei.vR,
key: e.id
}, r.createElement("img", {
alt: (0,
g.qD)(e).name,
src: e.thumbnail_url || void 0,
loading: "lazy"
})))) : r.createElement("span", null, r.createElement(u.Tx, {
id: "community.profiles.no_resources_published_yet"
}))))
}
function e_({resource: e, index: t, animationIndex: n, onIntersectionChange: i, trackingInfo: a, subView: o}) {
return "is_widget"in e ? e.is_widget ? r.createElement(eu, {
index: t,
resource: e,
animationIndex: n,
onIntersectionChange: i,
trackingInfo: a,
subView: o
}) : r.createElement(es, {
index: t,
resource: e,
animationIndex: n,
onIntersectionChange: i,
trackingInfo: a,
subView: o
}) : r.createElement(el, {
resource: e,
index: t,
animationIndex: n,
onIntersectionChange: i,
trackingInfo: a,
subView: o
})
}
}
,
410004: (e,t,n)=>{
"use strict";
n.d(t, {
Ay: ()=>V,
FL: ()=>x,
I9: ()=>U
});
var r = n(411855)
, i = n(188507)
, a = n(843540)
, o = n(776250)
, l = n(737947)
, s = n(38580)
, d = n(374626)
, c = n(195847)
, u = n(167249);
let p = (0,
u.N)("AUTH_IFRAME_CLOSE")
, m = (0,
u.N)("AUTH_IFRAME_PRELOAD")
, _ = (0,
u.N)("AUTH_IFRAME_OPEN")
, h = (0,
u.N)("SET_IFRAME_URL")
, g = [p, m, _, h];
var f = (e=>(e[e.CLOSED = 0] = "CLOSED",
e[e.PRELOAD = 1] = "PRELOAD",
e[e.OPEN = 2] = "OPEN",
e))(f || {});
let E = {
authIFrame: {
authIFrameState: 0,
authIFrameURL: "/login_iframe?with_community_header=true&type=fixedmodal"
}
};
var y = n(956013)
, b = n(881048)
, v = n(776621)
, I = n(123026)
, T = n(362685)
, S = n(568685)
, w = n(121089)
, A = n(911871)
, C = n(500913)
, N = n(638693)
, O = n(474146);
let L = {
...E,
...A.P,
...S.x6,
...T.BV,
...N.cR,
...C.c,
...w.Y,
...O.Wc
}
, R = [...Object.values(I), ...g, ...O.R3]
, P = {
authIFrame: function(e=E.authIFrame, t) {
return p.matches(t) ? {
...e,
authIFrameState: 0
} : m.matches(t) ? {
...e,
authIFrameState: 1
} : _.matches(t) ? {
...e,
authIFrameState: 2
} : h.matches(t) ? {
...e,
authIFrameURL: t.payload.url
} : e
},
authedUsers: A.C,
authedProfilesById: S.O4,
authedActiveCommunityProfile: T.C5,
orgUsersByOrgId: N.t_,
orgById: C.X,
authedTeamsById: w.o,
communityHub: (0,
y.HY)({
currentProfile: O.cm
}),
hubFiles: O.W5,
publishedPlugins: O.oA,
publishedWidgets: O.J_,
loadingState: O.$m
}
, k = (0,
y.y$)((0,
y.HY)(P), L, (0,
y.Tw)(b.A, e=>e=>function(t) {
let n = e(t);
return R.some(e=>e.matches(t)) || (0,
v.us)(`[Community] Detected invalid action to Community store: ${t.type}`),
n
}
));
var D = n(50458)
, M = n(250769);
let F = (0,
s.eU)(!1);
function x(e=c.qB.SIGN_IN, t={}) {
var n;
if (t.preventDefaultRedirect && (t.authOptions ?? (t.authOptions = {}),
t.authOptions.redirect_url = l.Ay.location.pathname + l.Ay.location.search),
d.zl.get(F))
U({
name: c.mK,
options: {
formState: e,
redirectUrl: null == (n = t.authOptions) ? void 0 : n.redirect_url
}
});
else {
let n = new URLSearchParams(t.authOptions)
, r = "/login_iframe";
e === c.qB.SIGN_UP && n.append("form_state", "sign_up"),
n.append("type", "fixedmodal"),
n.append("with_community_header", "true");
let i = n.toString()
, a = i.length ? [r, i].join("?") : r;
k.dispatch(h({
url: a
}))
}
(0,
i.vA)(()=>{
(0,
a.fW)(),
k.dispatch(_())
}
)
}
function U(e) {
var t;
let n = document.querySelector("iframe#figma-auth-iframe");
null == (t = null == n ? void 0 : n.contentWindow) || t.postMessage(e, location.origin)
}
function B() {
k.dispatch(p())
}
function V() {
let e = r.useRef(null)
, [t,n] = (0,
d.fp)(F)
, [i,a] = r.useState(void 0)
, [l,s] = r.useState(f.CLOSED);
r.useEffect(()=>k.subscribe(()=>{
let e = k.getState().authIFrame.authIFrameState
, t = k.getState().authIFrame.authIFrameURL;
void 0 !== e && e !== l && (s(e),
a(t))
}
), [l]);
let[c,u] = r.useState(!1);
return !function(e) {
let t = r.useRef();
r.useEffect(()=>{
t.current = e
}
, [e]),
r.useEffect(()=>{
let e = e=>{
var n;
null == (n = t.current) || n.call(t, e)
}
;
return window.addEventListener("message", e, !1),
()=>{
window.removeEventListener("message", e, !1)
}
}
, [])
}(t=>{
var r, i, a, l;
e.current && t.origin === location.origin && ((null == (r = t.data) ? void 0 : r.type) === "trackEvent" && (null == (i = t.data) ? void 0 : i.event) === "Auth Actions" && (null == (l = null == (a = t.data) ? void 0 : a.properties) ? void 0 : l.eventSubtype) === "show_auth_page" && n(!0),
"trackEvent" === t.data.type && (0,
o.sx)(t.data.event, t.data.properties, t.data.options),
"esc" === t.data.keyPress && B())
}
),
r.useEffect(()=>{
var t;
if (e.current && (l > f.CLOSED && !c && u(!0),
l === f.OPEN && e.current.contentDocument)) {
let n = null == (t = e.current.contentDocument) ? void 0 : t.getElementsByTagName("input")[0];
null == n || n.focus()
}
}
, [l, c]),
r.createElement(D.A, {
className: M.figmaAuthModal,
style: {
visibility: l === f.OPEN ? "visible" : "hidden"
},
showInnerModal: t,
onClick: ()=>B()
}, l > f.CLOSED || c ? r.createElement("iframe", {
id: "figma-auth-iframe",
"data-testid": "figma-auth-iframe",
ref: e,
title: "Figma Auth",
src: i
}) : r.createElement(r.Fragment, null))
}
}
,
843540: (e,t,n)=>{
"use strict";
n.d(t, {
Ay: ()=>g,
fW: ()=>h
});
var r = n(411855)
, i = n(38580)
, a = n(374626)
, o = n(195847)
, l = n(574176)
, s = n(672517)
, d = n(307780)
, c = n(410004)
, u = n(50458)
, p = n(250769);
function m({headerText: e, icon: t, source: n}) {
let i = r.useCallback(()=>{
h()
}
, []);
return r.createElement(s.fu, {
name: "community auth modal",
properties: {
source: n
}
}, r.createElement(u.A, {
className: p.loggedOutCommunityActionModal,
onClick: i
}, r.createElement(d.A, {
props: {
headerText: e,
icon: t
},
styles: p,
Event: {
onLogInClick: ()=>{
(0,
c.FL)(o.qB.SIGN_IN, {
preventDefaultRedirect: !0
})
}
,
onSignUpClick: ()=>{
(0,
c.FL)(o.qB.SIGN_UP, {
preventDefaultRedirect: !0
})
}
},
Component: {
ModalCloseButton: ()=>r.createElement("button", {
className: p.modalCloseButton,
onClick: i
}, "\xd7"),
BrandButton: e=>r.createElement(s.$z, {
...e
}, e.children),
ButtonSecondaryTracked: e=>r.createElement(s.$z, {
...e
}, e.children),
Svg: l.B
}
})))
}
let _ = (0,
i.eU)(null);
function h() {
a.zl.set(_, null)
}
function g() {
let e = (0,
a.md)(_);
if (null === e)
return r.createElement(r.Fragment, null);
let {type: t, data: n} = e;
return "COMMUNITY_AUTH_MODAL" === t ? r.createElement(m, {
headerText: n.headerText,
icon: n.icon,
source: n.source
}) : r.createElement(r.Fragment, null)
}
}
,
61714: (e,t,n)=>{
"use strict";
n.d(t, {
d: ()=>r
});
let r = n(777944).PluginTryButton
}
,
166521: (e,t,n)=>{
"use strict";
n.d(t, {
I: ()=>a
});
var r = n(411855);
let i = (0,
n(503457).kf)("lazy_cmty_purchase_button", {
isCodesplit: !0,
ComponentFactory: async()=>({
default: (await n.e(8476).then(n.bind(n, 698476))).default
})
});
function a({resource: e, context: t, payment: n, enableWideButtonForStickyFooter: a}) {
return r.createElement(i, {
fallback: null,
errorFallback: null,
resource: e,
context: t,
payment: n,
enableWideButtonForStickyFooter: a
})
}
}
,
547733: (e,t,n)=>{
"use strict";
n.d(t, {
sw: ()=>_,
Cg: ()=>p,
Gb: ()=>m
});
var r = n(411855)
, i = n(563706)
, a = n(574176)
, o = n(939863)
, l = n(466636)
, s = n(498606)
, d = n(209552);
let c = "resource_badge_subtext--container--hKr5Q";
var u = n(112512);
function p({resource: e, showCaret: t=!0}) {
let n = (0,
l.X2)(e.monetized_resource_metadata);
return r.createElement("div", {
className: c
}, i.Xb ? r.createElement(o.Tx, {
id: "community.buyer.in_app_purchases"
}) : r.createElement(d.m_, {
preview: n
}, r.createElement("div", {
className: "resource_badge_subtext--text--ks9uS text--fontPos11--2LvXf text--_fontBase--QdLsd"
}, r.createElement(o.Tx, {
id: "community.buyer.in_app_purchases"
})), t && r.createElement(a.B, {
className: "resource_badge_subtext--caret--weiCk",
svg: u.A
})))
}
function m() {
return r.createElement("div", {
className: c,
"data-tooltip-type": s.Ib.TEXT,
"data-tooltip": (0,
o.t)("community.detail_view.resource_outside_of_figma"),
"data-tooltip-show-immediately": !0
}, r.createElement(o.Tx, {
id: "community.detail_view.third_party_badge.off_platform"
}))
}
function _({metadata: e}) {
return r.createElement("div", {
className: c
}, r.createElement(o.Tx, {
id: "community.resource.free_trial_days",
days: e.trial_length_in_days
}))
}
}
,
595544: (e,t,n)=>{
"use strict";
n.d(t, {
A: ()=>m
});
var r = n(411855)
, i = n(966712)
, a = n(96328)
, o = n(574176)
, l = n(939863)
, s = n(837324)
, d = n(545941)
, c = n(342859)
, u = n(404554)
, p = n(815234);
function m({resource: e, viewContext: t}) {
var m, g;
let f = e.like_count > 0
, E = (0,
d.mk)(e) > 0
, y = (0,
s.Bl)(e.id, (0,
s.Vm)(e))
, b = null == (m = y.data) ? void 0 : m[0]
, v = n(892123).o.useLikeActions(e, !!b, (null == (g = y.data) ? void 0 : g[1]) || null, t || "")()
, I = r.createElement("div", {
className: c.If
}, r.createElement(l.Tx, {
id: "community.detail_view.bullet_point"
}));
return r.createElement("div", {
className: c.M1,
"data-testid": "resource-header-stats"
}, r.createElement("div", null, (0,
s.c8)(e)), f && r.createElement(r.Fragment, null, I, r.createElement("button", {
onClick: e=>{
(0,
i.kc)().cmty_deprecate_browse_as_admin && v(e)
}
}, (0,
i.kc)().cmty_deprecate_browse_as_admin ? b ? h : _ : r.createElement(o.B, {
svg: u.A
})), r.createElement("div", {
className: c.lp
}, (0,
a.$M)(e.like_count))), E && r.createElement(r.Fragment, null, I, r.createElement(o.B, {
svg: p.A
}), r.createElement("div", {
className: c.lp
}, r.createElement(l.Tx, {
id: "community.detail_view.number_of_users",
numberOfUsers: (0,
a.$M)((0,
d.mk)(e))
}))))
}
let _ = r.createElement("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
"fill-rule": "evenodd",
"clip-rule": "evenodd",
d: "M7.99988 4.5L7.3254 3.96042C6.28613 3.129 4.78791 3.21198 3.84681 4.15308C2.82678 5.17311 2.82678 6.8269 3.84681 7.84693L7.99988 12L12.153 7.84693C13.173 6.8269 13.173 5.17311 12.153 4.15308C11.2119 3.21198 9.71364 3.129 8.67437 3.96042L7.99988 4.5ZM7.99988 10.5858L11.4459 7.13982C12.0754 6.51032 12.0754 5.48969 11.4459 4.86018C10.8651 4.27939 9.94044 4.22818 9.29906 4.74129L7.99988 5.78063L6.70071 4.74128C6.05933 4.22818 5.13471 4.27939 4.55391 4.86018C3.92441 5.48969 3.92441 6.51032 4.55392 7.13982L7.99988 10.5858Z",
fill: "black"
}))
, h = r.createElement("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("rect", {
width: "16",
height: "16",
fill: "var(--color-background)"
}), r.createElement("path", {
d: "M3.84693 7.84693L8 12L12.1531 7.84692C13.1731 6.8269 13.1731 5.1731 12.1531 4.15308C11.212 3.21198 9.71375 3.129 8.67448 3.96041L8 4.5L7.32552 3.96041C6.28625 3.129 4.78802 3.21198 3.84692 4.15308C2.8269 5.1731 2.8269 6.8269 3.84693 7.84693Z",
fill: "#F24822"
}))
}
,
418969: (e,t,n)=>{
"use strict";
n.d(t, {
Lf: ()=>k,
Iq: ()=>D,
qz: ()=>F,
Xg: ()=>x
});
var r = n(411855)
, i = n(776250)
, a = n(981952)
, o = n(18519)
, l = n(662691)
, s = n(654923)
, d = n(233562)
, c = n(837324)
, u = n(612776)
, p = n(198181)
, m = n(466636)
, _ = n(609271)
, h = n(18009)
, g = n(107877)
, f = n(555328)
, E = n(296045)
, y = n(175420)
, b = n(689289)
, v = n(292633)
, I = n(973227)
, T = n(61714)
, S = n(166521)
, w = n(547733)
, A = n(595544)
, C = n(209001)
, N = n(206144)
, O = n(183846);
let L = "resource_page_header--resourceHeaderAvatar--FI-3x"
, R = "resource_page_header--resourceHeaderAvatarWrapper--nn-w8"
, P = "resource_page_header--resourceHeaderFigmaPartnerBadge--cgvkO";
function k({publishers: e, size: t=32, showFigmaPartnerBadge: n}) {
return e.length < 5 ? r.createElement(r.Fragment, null, e.map((e,a)=>r.createElement("div", {
key: e.id,
className: R,
"data-testid": "resource-header-avatar-" + a
}, r.createElement(N.A6, {
to: `/@${e.profile_handle}`,
onClickTracking: ()=>{
(0,
i.sx)("resource_creator_click", {
profileId: e.id,
target: "avatar"
})
}
,
onClick: e=>e.stopPropagation(),
key: e.id
}, r.createElement(E.e, {
entity: e,
size: t,
style: {
zIndex: 3 - a
},
adtlClassName: L
})), n && r.createElement("div", {
className: P,
style: {
zIndex: 3 - a
}
}, (0,
y.C2)(e, !0))))) : r.createElement(r.Fragment, null, e.slice(0, 3).map((e,t)=>r.createElement("div", {
className: R,
key: e.id,
"data-testid": "resource-header-avatar-" + t
}, r.createElement(N.A6, {
to: `/@${e.profile_handle}`,
onClick: e=>e.stopPropagation(),
key: e.id
}, r.createElement(E.e, {
entity: e,
style: {
zIndex: 3 - t
},
adtlClassName: L
})), n && r.createElement("div", {
className: P,
style: {
zIndex: 3 - t
}
}, (0,
y.C2)(e, !0)))), r.createElement("div", {
className: "resource_page_header--resourceHeaderAvatarWrapperExtraProfiles--P5q2P resource_page_header--resourceHeaderAvatarWrapper--nn-w8"
}, r.createElement(h.e, {
type: "Letter",
size: "Large",
letter: (e.length - 3).toString()
})))
}
function D({publishers: e, useSmallWidth: t=!1, removeByLabel: n=!1, openInNewTab: i=!1}) {
return r.createElement("span", {
className: e.length > 2 ? "resource_page_header--author--k2bGY" : "resource_page_header--authorHiddenOverflow--hoVA5"
}, (0,
d.kc)(e, t, n, i))
}
function M({button: e, subtext: t}) {
return r.createElement("div", {
className: O.uu
}, e, t && r.createElement("div", {
className: O.BE
}, t))
}
function F({resource: e, hasScrolled: t}) {
let n = (0,
f.PM)(e)
, i = (0,
s.I)(e)
, a = (0,
u.Q$)()
, o = !(0,
p.M)() && ((0,
f.I0)(e) || (0,
f.xQ)(e)) && a();
if ((0,
m._K)(e, i))
return r.createElement(S.I, {
resource: e,
context: f.aL.DETAIL
});
if ((0,
c.Qo)(e))
return (0,
c.cX)(e) ? r.createElement(C.l, {
resource: e,
hasScrolled: t
}) : r.createElement(l.U, {
hubFile: e
});
{
let t = n ? r.createElement(w.Cg, {
resource: e,
showCaret: !o
}) : (0,
f.zF)(e) ? r.createElement(w.Gb, null) : void 0;
return r.createElement(M, {
button: r.createElement(T.d, {
resource: e,
context: f.aL.DETAIL,
inRedesignExp: !0
}),
subtext: t
})
}
}
function x({resource: e}) {
let t = (0,
c.qD)(e)
, n = (0,
a.R)(g.YW)
, i = (0,
o.G)()
, l = e.community_publishers.accepted;
return r.createElement("div", {
className: i ? n ? "resource_page_header--resourcePageHeaderMobile--RBDAk resource_page_header--resourcePageHeader--NQ5IX" : "resource_page_header--resourcePageHeader--NQ5IX" : "resource_page_header--resourcePageHeaderSticky--mAxn8 resource_page_header--resourcePageHeader--NQ5IX"
}, r.createElement("div", {
className: "resource_page_header--resourcePageHeaderMaxWidth--uxz5W"
}, r.createElement("div", {
className: "resource_page_header--leftSide--xtHpr"
}, r.createElement("h1", {
className: "resource_page_header--resourceNameHeader---1-0y text--fontPos24--YppUD text--_fontBase--QdLsd"
}, r.createElement("span", {
className: "resource_page_header--name--g8MqS"
}, t.name)), r.createElement("div", {
className: "resource_page_header--attributionLine--rsfxX text--fontPos13--xW8hS text--_fontBase--QdLsd"
}, r.createElement(b.u, {
resource: e
}), r.createElement(A.A, {
resource: e
}), r.createElement("div", {
className: "resource_page_header--attributionCreator--hk-qB"
}, r.createElement(k, {
publishers: l
}), r.createElement(D, {
publishers: l
})), !1)), r.createElement(_.Ay, {
mediaQuery: `(min-width: ${g.YW + 1}px)`
}, r.createElement("div", {
className: "resource_page_header--rightSide--oN7bA"
}, r.createElement(v.i, null), r.createElement(I.yY, {
resource: e,
viewContext: "logged_out"
}), r.createElement(F, {
resource: e
})))))
}
}
,
197979: (e,t,n)=>{
"use strict";
n.d(t, {
F5: ()=>m,
Mf: ()=>h,
P: ()=>p,
ru: ()=>_
});
var r = n(411855)
, i = n(629019)
, a = n.n(i)
, o = n(860601)
, l = n(776621)
, s = n(555328)
, d = n(31680)
, c = n(674694)
, u = n(302510);
function p(e) {
return ["video" === e.type ? e.thumbnail_url : e.url, "image" === e.type ? e.resized_thumbnail_urls : void 0]
}
function m({thumbnailUrl: e, resizedThumbnailUrls: t, resourceId: n, altText: i, thumbnailContext: s, resourceHeroType: p, isMobileCarousel: m}) {
let _;
return e && t ? _ = r.createElement(c.Sl, {
className: a()(u.mH, {
[u.zn]: m
}),
image: e,
onLoad: o.lQ,
hubFileId: n,
alt: i,
thumbnailContext: s,
resizedThumbnailUrls: t
}) : e ? _ = r.createElement("img", {
className: a()(u.mH, {
[u.zn]: m
}),
src: e,
loading: "lazy",
alt: i,
draggable: !1,
onError: ()=>{
(0,
l.x1)("community", "Failed to load hero image on resource detail page", {
resourceId: n,
image: e
}, {
reportAsSentryError: !0
})
}
}) : ((0,
l.xi)("community", "Missing hero image on resource detail page", {
resourceId: n,
resourceHeroType: p
}),
_ = r.createElement(d.Ek, null)),
r.createElement("div", {
className: u.G8
}, _)
}
function _({thumbnailUrl: e, altText: t, resourceId: n}) {
return r.createElement("img", {
className: u.mH,
src: e,
loading: "lazy",
alt: t,
draggable: !1,
onError: ()=>{
(0,
l.x1)("community", "Failed to load hero image closeup on resource detail page", {
thumbnailUrl: e,
resourceId: n
}, {
reportAsSentryError: !0
})
}
})
}
function h(e, t) {
return (0,
s.I0)(t) ? `/api/plugins/${t.id}/videos/${e.video_file_uuid}/manifest` : (0,
s.xQ)(t) ? `/api/widgets/${t.id}/videos/${e.video_file_uuid}/manifest` : null
}
}
,
209001: (e,t,n)=>{
"use strict";
n.d(t, {
l: ()=>r
});
let r = n(10588).l
}
,
206144: (e,t,n)=>{
"use strict";
let r;
n.d(t, {
A6: ()=>y,
OS: ()=>p,
VJ: ()=>f,
ik: ()=>m,
qG: ()=>E
});
var i = n(411855)
, a = n(737947)
, o = n(913270)
, l = n(123130)
, s = n(198181);
let d = e=>({
type: "SELECT_VIEW",
payload: e
})
, c = /^\/community\/(file|widget|plugin)\/(\d+)/
, u = /^\/@(.+)/;
function p(e) {
r = e
}
function m() {
return r
}
function _(e) {
let t = new URLSearchParams(e.split("?")[1]).get("searchSessionId");
return t ? {
searchSessionId: t
} : void 0
}
function h(e) {
let t = (0,
o.gV)(window.location.pathname)
, n = (0,
o.gV)(e);
return t.reactRouterHandled && n.reactRouterHandled
}
function g(e, t) {
let n = !1
, {pathname: i} = window.location;
if (/^\/community/.test(i) && (0,
s.M)() && !(c.test(e) || u.test(e)))
return n;
if (c.test(e)) {
n = !0;
let[t,i,a] = e.match(c)
, o = _(e);
r(d({
...(0,
l.p)(i, a),
cmtyTrackingInfo: o
}))
} else if (u.test(e))
n = !0,
r(d({
view: "communityHub",
subView: "handle",
handle: e.match(u)[1]
}));
else {
n = !0;
let[t,i] = e.split("?");
i = i ? `?${i}` : "",
r(d({
data: (0,
o.wl)(t, i),
subView: "searchAndBrowse",
view: "communityHub"
}))
}
return n && t && (t.preventDefault(),
t.stopPropagation()),
n
}
function f(e) {
if (h(e))
a.Ay.push(e);
else {
let t = !1;
(0,
s.M)() && (t = g(e)),
t || a.Ay.push(e)
}
}
function E(e, t, n=!0) {
let i = ()=>{
t.preventDefault(),
t.stopPropagation()
}
;
{
let t = e.match(c);
if (t) {
let[n,a,o] = t
, s = _(e);
r(d({
...(0,
l.p)(a, o),
cmtyTrackingInfo: s
})),
i();
return
}
let n = e.match(u);
if (n) {
r(d({
view: "communityHub",
subView: "handle",
handle: n[1]
})),
i();
return
}
let[a,s] = e.split("?");
r(d({
data: (0,
o.wl)(a, s ? `?${s}` : void 0),
subView: "searchAndBrowse",
view: "communityHub"
})),
i();
return
}
}
function y({to: e, onClickTracking: t, onClick: n, onClickOverride: r, className: o, children: l, style: d, onRef: c, animationIndex: u, target: p}) {
return i.createElement("a", {
href: e,
onClick: i=>{
if (null == t || t(i),
!i.ctrlKey && !i.metaKey) {
if (n && n(i),
r) {
i.preventDefault(),
r(i);
return
}
if (h(e)) {
i.preventDefault(),
a.Ay.push(e);
return
}
(0,
s.M)() && g(e, i);
return
}
}
,
style: d,
className: o,
ref: e=>{
null == c || c(e)
}
,
target: p
}, l)
}
}
,
582493: (e,t,n)=>{
"use strict";
n.d(t, {
A: ()=>S,
p: ()=>D
});
var r = n(411855)
, i = n(629019)
, a = n.n(i)
, o = n(511617)
, l = n(157663)
, s = n(755887)
, d = n(563706)
, c = n(913016)
, u = n(30090)
, p = n(493323)
, m = n(939863)
, _ = n(498606)
, h = n(227795)
, g = n(137889)
, f = n(68710)
, E = n(10448)
, y = n(114843)
, b = n(552601);
let v = {
BUTTON_SHAPE_FILL: "#FFFFFF",
BUTTON_BG_FILL: "#000000",
BUTTON_STROKE_OPACITY: .2,
BUTTON_BG_FILL_OPACITY: .7,
BUTTON_BG_FILL_HOVER_OPACITY: .9
};
function I(e) {
if (null == e || Number.isNaN(e))
return "";
let {seconds: t, minutes: n} = (0,
c._d)(e);
return `${n}:${String(t).padStart(2, "0")}`
}
function T(e, t) {
e && (t ? (e.play(),
d.Ay.safari && (e.currentTime = .1)) : w(e) ? e.pause() : (d.Ay.safari && e.currentTime > .1 && (e.currentTime -= .1),
e.play()))
}
let S = r.memo(({videoId: e, src: t, fallbackSrc: n, useHLS: i=!1, autoPlay: s=!1, muted: c=!1, showControlsOnVideoLoad: p=!1, onEnded: m})=>{
let _ = r.useRef(null)
, h = r.useRef(null)
, [f,E] = r.useState(null)
, [y,b] = r.useState(!1)
, v = r.useRef(void 0)
, [I,S] = r.useState(!1)
, [C,N] = r.useState(!1);
r.useEffect(()=>{
C && (null == m || m())
}
, [C, m]);
let O = r.useCallback(function() {
b(!0),
clearTimeout(v.current),
v.current = setTimeout(()=>b(!1), 3e3)
}, [])
, L = r.useCallback(async function() {
if (!t || !h.current)
return;
window.VIDEOJS_NO_DYNAMIC_STYLE = !0;
let r = (await (0,
u.Fe)()).videoJs(h.current, {
muted: c,
controls: !1,
controlBar: !1,
bigPlayButton: !1,
loadingSpinner: !1,
errorDisplay: !1,
textTrackSettings: !1,
textTrackDisplay: !1,
nativeTextTracks: !1
}, async()=>{
try {
await (0,
u.uz)(t, i, r)
} catch {
l.k.warn("Reverting to fallback video source"),
await (0,
u.uz)(n ?? null, !1, r)
}
p && O(),
E(e)
}
)
}, [t, c, p, O, i, n, e, E])
, R = r.useCallback(function() {
var e;
if (I || document.fullscreenElement)
o.R7.exitFullscreenFunc();
else if (d.Ay.isIpad) {
let t = h.current;
null == (e = null == t ? void 0 : t.webkitEnterFullscreen) || e.call(t)
} else {
let e = _.current;
e && o.R7.requestFullscreenFunc.call(e)
}
}, [I]);
return r.createElement("div", {
className: a()(g.j, {
[g.Y5]: I
}),
ref: r.useCallback(e=>{
_.current = e,
null == e || e.addEventListener(o.R7.fullscreenChangeEventName, function() {
S(!I)
})
}
, [I]),
onPointerMove: O
}, r.createElement("video", {
ref: r.useCallback(t=>{
h.current = t,
t && (t.style.height = "100%",
t.style.width = "100%",
t.style.objectFit = I ? "contain" : "cover",
w(t) && e === f || L())
}
, [e, L, I, f]),
crossOrigin: "anonymous",
autoPlay: s && !d.Ay.safari,
controls: d.Ay.isIpad && I,
onClick: r.useCallback(function() {
I && T(h.current, C)
}, [C, I])
}), r.createElement(A, {
videoRef: h,
isFullscreen: I,
toggleFullscreen: R,
isActive: y,
hasEnded: C,
setHasEnded: N
}))
}
);
function w(e) {
return !!e && !e.ended && !e.paused && e.currentTime > 0 && e.readyState > 2
}
function A({videoRef: e, isFullscreen: t, toggleFullscreen: n, isActive: i, hasEnded: o, setHasEnded: l}) {
var s, c, u;
let[f,E] = r.useState(0)
, v = r.useRef(!1)
, [S,A] = r.useState(null)
, [N,R] = r.useState(!1)
, [P,k] = r.useState(!1)
, D = r.useRef(!1)
, M = r.useRef(!1)
, F = S || (null == (s = e.current) ? void 0 : s.currentTime)
, x = null == (c = e.current) ? void 0 : c.duration
, U = w(e.current)
, B = r.useRef(void 0);
r.useEffect(()=>{
k(i || !U || o || D.current)
}
, [o, i, U]);
let V = r.useCallback(()=>{
E(e=>e + 1)
}
, []);
r.useEffect(()=>{
if (!e.current)
return;
function t() {
V()
}
function n() {
D.current = !1
}
function r() {
D.current = !1,
l(!1)
}
function i() {
l(!1),
V()
}
function a() {
D.current = !0
}
function o() {
N || l(!0),
V()
}
let s = e.current;
return s.addEventListener("playing", i),
s.addEventListener("canplay", t),
s.addEventListener("ended", o),
s.addEventListener("timeupdate", t),
s.addEventListener("seeking", a),
s.addEventListener("seeked", r),
s.addEventListener("stalled", n),
()=>{
null == s || s.removeEventListener("playing", i),
null == s || s.removeEventListener("canplay", t),
null == s || s.removeEventListener("ended", o),
null == s || s.removeEventListener("timeupdate", t),
null == s || s.removeEventListener("seeking", a),
null == s || s.removeEventListener("seeked", r),
null == s || s.removeEventListener("stalled", n)
}
}
, [N, V, l, e]);
let H = r.useCallback(()=>{
e.current && (T(e.current, o),
V())
}
, [o, V, e])
, G = r.useCallback(()=>{
e.current && (v.current = w(e.current) || o,
e.current.pause())
}
, [o, e])
, W = r.useCallback(()=>{
e.current && (v.current && e.current.play(),
B.current && (e.current.currentTime = B.current),
A(null),
B.current = void 0)
}
, [e])
, K = r.useCallback(t=>{
if (e.current) {
if (D.current) {
B.current = t;
return
}
e.current.currentTime = t
}
}
, [e])
, z = r.createElement(L, {
togglePlay: H,
hasEnded: o,
isPlaying: U,
shouldShowVideoControls: P,
isFullscreen: t
});
return e.current && !(2 > ((null == (u = e.current) ? void 0 : u.readyState) || 0)) || M.current ? (M.current = !0,
d.Ay.isIpad && t) ? null : r.createElement(r.Fragment, null, S ? null : z, r.createElement("div", {
className: a()(g._v, !P && g.YC)
}, r.createElement("div", {
className: g.TN
}, I(F), " / ", I(x)), r.createElement(O, {
currentTime: F || 0,
totalTime: x || 0,
onScrubStart: G,
onScrub: A,
onScrubEnd: W,
onVideoPositionUpdated: K,
hasEnded: o,
isScrubbing: N,
setIsScrubbing: R
}), r.createElement("div", {
className: g.yG
}, r.createElement(h.K0, {
onClick: n,
svg: t ? b.A : y.A,
className: g.TJ,
"data-tooltip-type": _.Ib.TEXT,
"data-tooltip": t ? (0,
m.t)("whiteboard.video.minimize_tooltip") : (0,
m.t)("whiteboard.video.fullscreen_tooltip")
}), r.createElement(C, {
rerender: V,
videoRef: e
})))) : r.createElement("div", {
className: g.bb
}, r.createElement(p.kt, {
size: "large"
}))
}
function C({rerender: e, videoRef: t}) {
var n, i, o, l;
let[s,c] = r.useState(!1)
, u = r.useCallback(()=>{
t.current && (t.current.muted = !t.current.muted,
e())
}
, [e, t])
, p = r.useCallback(n=>{
let r = n.target.valueAsNumber;
t.current && (t.current.volume = r,
t.current.muted = 0 === r,
e())
}
, [e, t]);
return r.createElement("div", {
onPointerMove: r.useCallback(()=>c(!0), []),
onPointerOut: r.useCallback(()=>c(!1), [])
}, r.createElement(h.K0, {
onClick: u,
svg: (null == (n = t.current) ? void 0 : n.muted) ? E.A : f.A,
className: a()(g.TJ, g.z9, {
[g.BT]: !d.Ay.isIpad && s
}),
"data-tooltip-type": _.Ib.TEXT,
"data-tooltip": (null == (i = t.current) ? void 0 : i.muted) ? (0,
m.t)("whiteboard.video.unmute_tooltip") : (0,
m.t)("whiteboard.video.mute_tooltip")
}), !d.Ay.isIpad && s ? r.createElement(N, {
volume: (null == (o = t.current) ? void 0 : o.volume) ?? 1,
muted: (null == (l = t.current) ? void 0 : l.muted) ?? !1,
handleChange: p
}) : null)
}
function N({handleChange: e, volume: t, muted: n}) {
let i = n ? 0 : t
, a = 100 * i
, o = r.useRef(null);
return r.createElement("div", {
className: g.qD
}, r.createElement("div", {
className: g.sf
}, r.createElement("input", {
className: g.Ct,
style: {
background: `linear-gradient(to right,var(--active-slider-color) 0%,var(--active-slider-color) ${a}%,var(--inactive-slider-color) ${a}%,var(--inactive-slider-color) 100%)`
},
type: "range",
min: 0,
max: 1,
step: .02,
value: i,
onChange: e,
ref: o
})))
}
function O({currentTime: e, totalTime: t, hasEnded: n, onVideoPositionUpdated: i, onScrubStart: a, onScrub: o, onScrubEnd: l, isScrubbing: c, setIsScrubbing: u}) {
let[p,m] = r.useState(!1)
, _ = r.useRef(null)
, h = r.useRef(null)
, f = r.useCallback(t=>{
if (!_.current)
return;
t.stopPropagation(),
u(!0),
a();
let n = _.current.getBoundingClientRect();
h.current = {
minX: n.x,
maxX: n.x + n.width,
originX: t.clientX,
newTime: e
}
}
, [e, a, u])
, E = r.useCallback(e=>{
if (!_.current)
return;
e.stopPropagation(),
u(!0),
a();
let n = _.current.getBoundingClientRect()
, r = n.x
, o = n.x + n.width
, l = e.clientX
, d = (0,
s.qE)(0, (l - r) / (o - r) * t, t);
i(d),
h.current = {
minX: r,
maxX: o,
originX: e.clientX,
newTime: d
}
}
, [a, i, u, t])
, y = r.useCallback(function(e) {
if (!h.current)
return;
let n = e.clientX
, {minX: r, maxX: a} = h.current
, l = (0,
s.qE)(0, (n - r) / (a - r) * t, t);
h.current.newTime = l,
o(l),
i(h.current.newTime)
}, [o, i, t])
, b = r.useCallback(function() {
h.current && (i(h.current.newTime),
u(!1),
l(),
h.current = null)
}, [l, i, u]);
r.useEffect(()=>{
if (c)
return document.addEventListener("pointermove", y),
document.addEventListener("pointerup", b),
()=>{
document.removeEventListener("pointermove", y),
document.removeEventListener("pointerup", b)
}
}
, [c, y, b]);
let v = Math.min(e / t * 100, 100);
d.Ay.safari && n && (v = 100);
let I = v > 0 ? 8 : 0;
return r.createElement("div", {
className: g.It,
onPointerMove: r.useCallback(()=>m(!0), []),
onPointerOut: r.useCallback(()=>m(!1), [])
}, r.createElement("div", {
role: "progressbar",
tabIndex: 0,
className: g.tS,
onPointerDown: E
}, r.createElement("div", {
className: g.xE,
ref: _
}), r.createElement("div", {
className: g.CN,
style: {
width: `${v}%`
}
}), (p || c) && r.createElement("div", {
className: g.Yq,
style: {
left: `calc(${v}% - ${I}px)`
},
onPointerDown: f,
role: "button",
tabIndex: 0
})))
}
function L({shouldShowVideoControls: e, togglePlay: t, hasEnded: n, isPlaying: i, isFullscreen: a}) {
let o = k;
return n ? o = P : i && (o = M),
r.createElement(R, {
shouldShowVideoControls: e,
ButtonIcon: o,
togglePlay: t,
isFullscreen: a
})
}
function R({ButtonIcon: e, shouldShowVideoControls: t, togglePlay: n, isFullscreen: i}) {
let[o,l] = r.useState(!1)
, s = o ? v.BUTTON_BG_FILL_HOVER_OPACITY : v.BUTTON_BG_FILL_OPACITY;
return r.createElement("button", {
className: a()(g.CY, {
[g.ct]: !t
}),
onPointerMove: (0,
r.useCallback)(()=>l(!0), []),
onPointerOut: (0,
r.useCallback)(()=>l(!1), []),
onPointerDown: n
}, r.createElement(e, {
fillOpacityForBackground: s,
isFullscreen: i
}))
}
function P({fillOpacityForBackground: e, isFullscreen: t}) {
return r.createElement("svg", {
className: a()(t && g.J_),
width: "48",
height: "48",
viewBox: "0 0 48 48",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("path", {
d: "M48 24C48 37.2548 37.2548 48 24 48C10.7452 48 0 37.2548 0 24C0 10.7452 10.7452 0 24 0C37.2548 0 48 10.7452 48 24Z",
fill: v.BUTTON_BG_FILL,
fillOpacity: e
}), r.createElement("path", {
d: "M34 24C34 18.4772 29.7175 14 24.4348 14C20.5763 14 17.2515 16.3884 15.7391 19.8282V14H14V22.1818H21.8261V20.3636H17.4222C18.7028 17.6696 21.362 15.8182 24.4348 15.8182C28.757 15.8182 32.2609 19.4813 32.2609 24C32.2609 28.5187 28.757 32.1818 24.4348 32.1818C21.362 32.1818 18.7028 30.3304 17.4222 27.6364H15.5216C16.9131 31.3612 20.3792 34 24.4348 34C29.7175 34 34 29.5228 34 24Z",
fill: v.BUTTON_SHAPE_FILL
}), r.createElement("rect", {
x: "0.5",
y: "0.5",
width: "47",
height: "47",
rx: "23.5",
stroke: v.BUTTON_BG_FILL,
strokeOpacity: v.BUTTON_STROKE_OPACITY
}))
}
function k({fillOpacityForBackground: e, isFullscreen: t}) {
return r.createElement("svg", {
className: a()(t && g.J_),
width: "48",
height: "48",
viewBox: "0 0 48 48",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("g", {
clipPath: "url(#clip0_403_4259)"
}, r.createElement("rect", {
width: "48",
height: "48",
rx: "24",
fill: v.BUTTON_BG_FILL,
fillOpacity: e
}), r.createElement("path", {
d: "M19 34V14L35 24L19 34Z",
fill: v.BUTTON_SHAPE_FILL
})), r.createElement("rect", {
x: "0.5",
y: "0.5",
width: "47",
height: "47",
rx: "23.5",
stroke: v.BUTTON_BG_FILL,
strokeOpacity: v.BUTTON_STROKE_OPACITY
}), r.createElement("defs", null, r.createElement("clipPath", {
id: "clip0_403_4259"
}, r.createElement("rect", {
width: "48",
height: "48",
rx: "24",
fill: v.BUTTON_BG_FILL
}))))
}
function D() {
return r.createElement(k, {
fillOpacityForBackground: v.BUTTON_BG_FILL_OPACITY,
isFullscreen: !1
})
}
function M({fillOpacityForBackground: e, isFullscreen: t}) {
return r.createElement("svg", {
className: a()(t && g.J_),
width: "48",
height: "48",
viewBox: "0 0 48 48",
fill: "none",
xmlns: "http://www.w3.org/2000/svg"
}, r.createElement("g", {
clipPath: "url(#clip0_1_16)"
}, r.createElement("rect", {
width: "48",
height: "48",
rx: "24",
fill: v.BUTTON_BG_FILL,
fillOpacity: e
}), r.createElement("path", {
d: "M15 15H21V33H15V15Z",
fill: v.BUTTON_SHAPE_FILL
}), r.createElement("path", {
d: "M27 15H33V33H27V15Z",
fill: v.BUTTON_SHAPE_FILL
})), r.createElement("rect", {
x: "0.5",
y: "0.5",
width: "47",
height: "47",
rx: "23.5",
stroke: v.BUTTON_BG_FILL,
strokeOpacity: v.BUTTON_STROKE_OPACITY
}), r.createElement("defs", null, r.createElement("clipPath", {
id: "clip0_1_16"
}, r.createElement("rect", {
width: "48",
height: "48",
rx: "24",
fill: v.BUTTON_BG_FILL
}))))
}
}
,
335666: (e,t,n)=>{
"use strict";
n.d(t, {
C: ()=>o,
X: ()=>l
});
var r = n(411855)
, i = n(837324)
, a = n(629521);
function o(e) {
let[t,n] = r.useState(!0);
return r.useEffect(()=>{
let t = (0,
i.z$)(e)
, r = e.thumbnail_url;
if (t !== a.Z4.THUMBNAIL) {
n(!0);
return
}
let o = new Image;
o.onload = ()=>{
let e = o.width / o.height;
n(!(Math.abs(e - 2) < Math.abs(e - 16 / 9)))
}
,
o.src = r || ""
}
, [e]),
t
}
function l(e) {
let[t,n] = r.useState(!0);
return r.useEffect(()=>{
let t = new Image;
t.onload = ()=>{
let e = t.width / t.height;
n(!(Math.abs(e - 2) < Math.abs(e - 16 / 9)))
}
,
t.src = e || ""
}
, [e]),
t
}
}
,
654923: (e,t,n)=>{
"use strict";
n.d(t, {
I: ()=>l,
_: ()=>s
});
var r = n(499737)
, i = n(466636)
, a = n(279453)
, o = n(555328);
function l(e) {
var t;
let n = e && (0,
o.m3)(e) ? e.monetized_resource_metadata.id : "-1"
, l = (0,
r.Rs)(a.oro, {
monetizedResourceMetadataId: n
}, {
enabled: !0
});
if ("loaded" !== l.status || (null == (t = l.errors) ? void 0 : t.length))
return null == e ? void 0 : e.community_resource_payment;
{
let {communityResourcePayment: e} = l.data;
if (!e)
return;
return (0,
i.xs)(e)
}
}
function s(e) {
let t = l(e);
return (0,
i.QQ)(t)
}
}
,
837324: (e,t,n)=>{
"use strict";
n.d(t, {
Bl: ()=>eh,
Cg: ()=>eu,
Co: ()=>P,
DV: ()=>J,
Dl: ()=>Y,
Dm: ()=>ee,
FG: ()=>D,
HD: ()=>k,
Hh: ()=>ea,
JJ: ()=>B,
Mk: ()=>eo,
N6: ()=>em,
Qo: ()=>G,
U0: ()=>e_,
UI: ()=>q,
Uu: ()=>ei,
Vm: ()=>V,
ZD: ()=>Q,
ZF: ()=>F,
_m: ()=>ec,
_t: ()=>Z,
af: ()=>en,
c8: ()=>ed,
cX: ()=>K,
eD: ()=>U,
jl: ()=>ep,
kf: ()=>er,
lW: ()=>X,
o7: ()=>H,
qD: ()=>x,
r7: ()=>W,
ss: ()=>$,
vC: ()=>et,
z$: ()=>es,
zS: ()=>el,
zo: ()=>z
});
var r = n(411855)
, i = n(188507)
, a = n(841563)
, o = n.n(a)
, l = n(737947)
, s = n(22332)
, d = n(966712)
, c = n(499737);
n(391388);
var u = n(96328)
, p = n(939863)
, m = n(709495)
, _ = n(357611)
, h = n(971120)
, g = n(675665)
, f = n(367935)
, E = n(97128)
, y = n(107877)
, b = n(259927)
, v = n(99506)
, I = n(279453)
, T = n(555328)
, S = n(137459)
, w = n(813408)
, A = n(622139)
, C = n(376485)
, N = n(629521)
, O = n(583894)
, L = n(566083)
, R = n(146935);
let P = new RegExp(/^[\w.]{0,30}$/)
, k = new RegExp(/^\w{0,15}$/)
, D = !1
, M = new Date("2023-11-30");
function F(e) {
let t = {};
return e.map(e=>e.tags).map(e=>{
if (e)
for (let n = 0; n < (null == e ? void 0 : e.length); n++)
t[e[n]] || (t[e[n]] = 0),
t[e[n]]++
}
),
Object.entries(t).sort((e,t)=>e[1] > t[1] ? -1 : 1).map(e=>e[0])
}
function x(e) {
return "current_hub_file_version_id"in e ? e.versions[e.current_hub_file_version_id] : e.versions[e.current_plugin_version_id]
}
let U = ()=>location.pathname.split("/").slice(2);
function B(e) {
switch (e) {
case v.y4.SLIDE_TEMPLATE:
return S.LE.SLIDES;
case v.y4.WHITEBOARD:
return S.LE.FIGJAM;
case v.y4.CANVAS:
case v.y4.PROTOTYPE:
default:
return S.LE.FIGMA
}
}
function V(e) {
return e.viewer_mode ? T.vt.HUB_FILE : e.is_widget ? T.vt.WIDGET : T.vt.PLUGIN
}
function H(e, t) {
return t.resourceType !== h.L.BrowseResourceTypes.MIXED && (e = e.filter(e=>t.resourceType === h.L.BrowseResourceTypes.FILES ? V(e) === T.vt.HUB_FILE : t.resourceType === h.L.BrowseResourceTypes.PLUGINS ? V(e) === T.vt.PLUGIN : t.resourceType === h.L.BrowseResourceTypes.WIDGETS ? V(e) === T.vt.WIDGET : void 0)),
t.price === L.C.PAID ? e = e.filter(e=>(0,
T.m3)(e)) : t.price === L.C.FREE && (e = e.filter(e=>!(0,
T.m3)(e))),
t.editor_type && t.editor_type !== _.k.Editors.ALL && (e = e.filter(e=>(function(e, t) {
var n, r;
if (G(e))
return !!(t === _.k.Editors.FIGMA && [v.y4.CANVAS, v.y4.PROTOTYPE, v.y4.LIBRARY].includes(e.viewer_mode)) || t === _.k.Editors.FIGJAM && e.viewer_mode === v.y4.WHITEBOARD || t === _.k.Editors.PROTOTYPE && e.viewer_mode === v.y4.PROTOTYPE;
{
let i = e.current_plugin_version_id;
if (!e.versions || !i)
return !1;
let a = e.versions[i];
return !!a && (!!(t === _.k.Editors.DEV_MODE && (null == (n = a.manifest.editorType) ? void 0 : n.includes(C.FW.DEV))) || ((null == (r = a.manifest.editorType) ? void 0 : r.includes(t)) ?? !1))
}
}
)(e, t.editor_type))),
e
}
function G(e) {
return "viewer_mode"in e && void 0 !== e.viewer_mode
}
function W(e) {
return G(e) && e.viewer_mode === v.y4.LIBRARY
}
function K(e) {
return null !== e && "viewer_mode"in e && e.viewer_mode === v.y4.SLIDE_TEMPLATE
}
function z(e) {
return "is_widget"in e
}
var j = (e=>(e.HUB_FILES = "hub_files",
e.PLUGINS = "plugins",
e.WIDGETS = "widgets",
e))(j || {});
function Y(e) {
return function(e) {
switch (e) {
case T.vt.HUB_FILE:
return E.Uo.FILE;
case T.vt.PLUGIN:
return E.Uo.PLUGIN;
case T.vt.WIDGET:
return E.Uo.WIDGET
}
}(V(e))
}
function $(e, {plural: t=!1}={}) {
let n = V(e);
return t ? n === T.vt.HUB_FILE ? E.UF.FILE : n === T.vt.WIDGET ? E.UF.WIDGET : E.UF.PLUGIN : n === T.vt.HUB_FILE ? E.Uo.FILE : n === T.vt.WIDGET ? E.Uo.WIDGET : E.Uo.PLUGIN
}
function Z({resource: e, trackingInfo: t}) {
var n;
return q({
path: Y(e),
id: e.id,
name: (null == (n = x(e)) ? void 0 : n.name) ?? "",
trackingInfo: t
})
}
function q({path: e, id: t, name: n, trackingInfo: r}) {
let i = r ? new URLSearchParams(r).toString() : ""
, a = (0,
u.fs)(n || "");
return `/community/${e}/${t}${"" === a ? "" : "/"}${a}${i ? `?${i}` : ""}`
}
function J(e) {
return `${location.origin}${Z({
resource: e
})}`
}
function X(e) {
var t = document.createElement("input");
t.style.position = "fixed",
t.style.top = "-1000px",
t.value = e,
t.classList.add(b.Dm),
document.body.appendChild(t),
t.select(),
document.execCommand("copy"),
t.parentNode.removeChild(t)
}
let Q = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";
function ee(e, t) {
return (null == t ? void 0 : t.entity_type) !== w.o1.USER || (null == t ? void 0 : t.id) === e
}
function et(e, t) {
var n;
if (t)
return t + " | Figma";
if ("/community" === l.Ay.location.pathname || !e)
return "Add a little magic to your files";
if ("/community/plugins" === l.Ay.location.pathname)
return "Powerful Plugins Made Just For Figma";
if ("/community/widgets" === l.Ay.location.pathname)
return "Customize your space with Widgets";
let r = [];
return e.sort_by === m.e.Browse.PUBLISHED_AT ? r.push("Newest") : e.sort_by === m.e.Browse.ALL_TIME ? r.push("Top") : e.sort_by === m.e.Browse.POPULAR && r.push("Trending"),
e.editor_type === C.FW.FIGJAM ? r.push("FigJam") : e.editor_type === C.FW.FIGMA && r.push("Figma"),
e.resourceType === h.L.BrowseResourceTypes.FILES ? r.push("Files") : e.resourceType === h.L.BrowseResourceTypes.WIDGETS ? r.push("Widgets") : e.resourceType === h.L.BrowseResourceTypes.PLUGINS ? r.push("Plugins") : r.push("Resources"),
(null == (n = e.tags) ? void 0 : n.length) > 0 && r.push(`tagged as ${e.tags.join(", ")}`),
e.query && r.push(`matching "${e.query}"`),
r.join(" ") + " | Figma"
}
function en(e) {
return !!e && (null == e ? void 0 : e.stripe_account_status) && (0,
O.z4)(e.stripe_account_status) >= (0,
O.z4)(O.P5.ACCEPTED)
}
function er(e) {
var t;
return !!(null == (t = null == e ? void 0 : e.associated_users) ? void 0 : t.find(e=>e.can_sell_on_community))
}
function ei(e) {
return (null == e ? void 0 : e.stripe_account_status) && e.stripe_account_status !== O.P5.NONE && e.stripe_account_status !== O.P5.ACCEPTED
}
function ea(e) {
return (0,
f.AS)(e) ? T.vt.WIDGET : (0,
f.bT)(e) ? T.vt.PLUGIN : T.vt.HUB_FILE
}
function eo(e) {
let t = x(e);
return t && t.name || ""
}
function el(e) {
return e ? "100%" : Math.min(window.innerWidth, parseInt(R.communityViewerMaxWidth))
}
function es(e) {
return (0,
T.U)(e) && e.viewer_mode === v.y4.PROTOTYPE ? N.Z4.EMBED : !function(e) {
var t;
if (1 !== Object.keys(e.carousel_media_urls ?? {}).length || ((0,
T.I0)(e) || (0,
T.xQ)(e)) && Object.keys(e.carousel_videos ?? {}).length > 0)
return !1;
let n = null == (t = e.carousel_media_urls) ? void 0 : t["0"];
return !!n && null != n && !!n.created_at && !((null == n ? void 0 : n.created_at) >= M)
}(e) ? Object.keys(e.carousel_media_urls ?? {}).length > 0 || ((0,
T.I0)(e) || (0,
T.xQ)(e)) && Object.keys(e.carousel_videos ?? {}).length > 0 ? N.Z4.CURATED_IMAGE : (0,
T.U)(e) && !e.thumbnail_is_set ? N.Z4.EMBED : N.Z4.THUMBNAIL : N.Z4.THUMBNAIL
}
function ed(e) {
if ((0,
T.U)(e))
switch (e.viewer_mode) {
case v.y4.WHITEBOARD:
return r.createElement(p.Tx, {
id: "community.detail_view.figjam_board"
});
case v.y4.CANVAS:
return r.createElement(p.Tx, {
id: "community.detail_view.design_file"
});
case v.y4.PROTOTYPE:
return r.createElement(p.Tx, {
id: "community.detail_view.prototype"
});
case v.y4.SLIDE_TEMPLATE:
return r.createElement(p.Tx, {
id: "community.detail_view.slide_template"
})
}
return (0,
T.I0)(e) ? r.createElement(p.Tx, {
id: "community.detail_view.plugin"
}) : (0,
T.xQ)(e) ? r.createElement(p.Tx, {
id: "community.detail_view.widget"
}) : r.createElement(p.Tx, {
id: "community.detail_view.design_file"
})
}
function ec(e, t, n) {
return e + g.co <= t && n > g.$2
}
function eu(e) {
return o()(e, (0,
A.EB)())
}
function ep() {
let e = (0,
s.N)(`(max-width: ${y.YW - 1}px)`)
, t = l.Ay.location.pathname.startsWith("/community");
return e && t
}
function em(e) {
let t = {};
return e.carousel_media_urls && Object.entries(e.carousel_media_urls).forEach(([e,n])=>{
t[e] = {
...n,
type: "image"
}
}
),
((0,
T.I0)(e) || (0,
T.xQ)(e)) && (null == e ? void 0 : e.carousel_videos) && Object.entries(e.carousel_videos).forEach(([e,n])=>{
t[e] = {
...n,
type: "video"
}
}
),
Object.entries(t).sort(([e],[t])=>parseInt(e) - parseInt(t)).map(([e,t])=>t)
}
function e_(e) {
return !!(0,
d.kc)().cmty_rdp_creator_nudges && ((0,
T.U)(e) && e.viewer_mode !== v.y4.PROTOTYPE ? 1 === Object.keys(e.carousel_media_urls ?? {}).length : !!((0,
T.I0)(e) || (0,
T.xQ)(e)) && 0 === Object.keys(e.carousel_videos ?? {}).length)
}
function eh(e, t) {
let n = (0,
i.d4)(e=>e.authedActiveCommunityProfile)
, r = {
profileId: (null == n ? void 0 : n.id) || "",
hubFileId: null,
pluginId: null
};
return t === T.vt.HUB_FILE ? r.hubFileId = e || null : r.pluginId = e || null,
(0,
c.Rs)(I.KLE, r, {
enabled: !!r.profileId
}).transform(e=>{
var t;
return [!!e.communityHubLike, (null == (t = e.communityHubLike) ? void 0 : t.id) || null]
}
)
}
}
,
612776: (e,t,n)=>{
"use strict";
n.d(t, {
CQ: ()=>p,
Pi: ()=>y,
Q$: ()=>l,
Uu: ()=>o,
X5: ()=>_,
ZG: ()=>h,
_f: ()=>E,
bk: ()=>b,
fq: ()=>m,
kc: ()=>c,
o5: ()=>g,
qf: ()=>s,
vk: ()=>d,
ye: ()=>u,
zI: ()=>f
});
var r = n(411855)
, i = n(966712)
, a = n(218881);
function o() {
let {getConfig: e} = (0,
a.I7)("exp_resource_page_redesign_hubfile");
return (0,
r.useCallback)(()=>e().get("show_redesign", !1), [e])
}
function l() {
let {getConfig: e} = (0,
a.I7)("exp_resource_page_redesign_plugin");
return (0,
r.useCallback)(()=>e().get("show_plugin_redesign", !1), [e])
}
function s(e) {
return l(),
o(),
!0
}
function d() {
let {getConfig: e} = (0,
a.I7)("cmty_global_nav_v2_lo")
, {getConfig: t} = (0,
a.I7)("cmty_global_nav_v2_li");
return (0,
r.useCallback)(()=>t().get("show_categories", !1), [t, e])
}
function c() {
let {getConfig: e} = (0,
a.I7)("cmty_nav_categories")
, {getConfig: t} = (0,
a.I7)("cmty_logged_in_nav_categories");
return (0,
r.useCallback)(()=>t().get("show_categories", !1), [t, e])
}
function u() {
let {getConfig: e} = (0,
a.I7)("cmt_logged_out_mobile_nav_categories")
, {getConfig: t} = (0,
a.I7)("cmty_logged_in_mobile_nav_categories");
return (0,
r.useCallback)(()=>t().get("show_categories", !1), [e, t])
}
function p() {
let {getConfig: e} = (0,
a.I7)("cmty_logged_out_homepage_redesign")
, {getConfig: t} = (0,
a.I7)("cmty_logged_in_homepage_redesign");
return (0,
r.useCallback)(()=>t().get("enabled", !1), [t, e])
}
function m() {
let {getConfig: e} = (0,
a.I7)("cmty_category_redesign_logged_in");
return (0,
r.useCallback)(()=>e().get("enabled", !1), [e])
}
function _() {
let {getConfig: e} = (0,
a.I7)("cmty_resource_tile_and_row_redesign");
return e().get("enabled", !1)
}
function h() {
let {getConfig: e} = (0,
a.I7)("exp_cmty_resource_hover_state_redesign")
, {getConfig: t} = (0,
a.I7)("exp_cmty_resource_hover_state_redesign_logged_in");
return (0,
r.useCallback)(()=>t().get("enabled", !1), [t, e])
}
function g() {
let {getConfig: e} = (0,
a.I7)("cmty_footer_logged_out");
return (0,
r.useCallback)(()=>!0, [e])
}
function f({isUI3: e}) {
return e && !!(0,
i.kc)().cmty_publish_modal_ui3_redesign
}
function E() {
return (0,
i.kc)().cmty_category_redirect_logged_in
}
function y() {
return !!(0,
i.kc)().piper_cmty_discovery
}
function b() {
return (0,
i.kc)().cmty_category_page_migration
}
n(837324),
n(555328)
}
,
913270: (e,t,n)=>{
"use strict";
n.d(t, {
$k: ()=>N,
Gu: ()=>D,
Jk: ()=>O,
Li: ()=>k,
MU: ()=>_,
Mc: ()=>f,
QN: ()=>L,
UH: ()=>S,
as: ()=>R,
au: ()=>P,
gV: ()=>F,
hX: ()=>A,
qd: ()=>M,
sT: ()=>g,
wl: ()=>m,
zX: ()=>C
});
var r = n(411855)
, i = n(753178)
, a = n(157663)
, o = n(910764)
, l = n(580857)
, s = n(357611)
, d = n(971120)
, c = n(944452)
, u = n(566083)
, p = n(709495);
function m(e, t) {
return g(e, t) || (0,
c.J5)(e, t) || function(e, t) {
let n = decodeURIComponent(e || location.pathname);
if (!E.test(n) || y.test(n) || b.test(n))
return;
let r = ("/" === n[0] ? n.slice(1) : n).split("/")
, i = {
resourceType: d.L.BrowseResourceTypes.MIXED,
tags: [],
editor_type: s.k.Editors.ALL,
sort_by: (0,
p.H)(),
price: u.C.ALL,
category: null,
following: !1,
pagination: null,
creators: l.Z.ALL
};
for (let e = 0; e < I.length && 0 !== r.length; e++) {
let t = I[e](r, i);
t && t[0] && (r = t[1],
i = {
...i,
...t[0]
})
}
i.editor_type = (0,
o.G)(i.editor_type, i.resourceType),
i.resourceType = (0,
o.l)(i.editor_type, i.resourceType);
let a = new URLSearchParams(location.search)
, c = !!a.get("following")
, m = (()=>{
let e = a.get("creators");
return e && e === l.Z.FOLLOWING ? e : i.creators
}
)();
return {
...i,
following: c,
creators: m
}
}(e)
}
function _(e) {
return "query"in e ? f(e) : "category"in e && null !== e.category ? (0,
c.iB)(e) : function(e) {
var t;
let n = "/community";
e.category ? n += `/category/${e.category}` : (null == (t = e.tags) ? void 0 : t.length) && (n += `/tag/${e.tags.join(",")}`),
e.resourceType = (0,
o.l)(e.editor_type, e.resourceType),
e.resourceType !== d.L.BrowseResourceTypes.MIXED && (n += `/${e.resourceType}`),
"all" !== (0,
o.G)(e.editor_type, e.resourceType) && (n += `/${e.editor_type}`),
e.price && u.C.FOR_URL_SLUG.indexOf(e.price) > -1 && (n += `/${e.price}`),
e.creators === l.Z.FIGMA_PARTNER && (n += `/${e.creators}`),
e.sort_by && e.sort_by !== (0,
p.H)() && (e.sort_by === p.e.Browse.PUBLISHED_AT ? n += "/new" : e.sort_by === p.e.Browse.ALL_TIME ? n += "/popular" : e.sort_by === p.e.Browse.POPULAR && (n += "/trending")),
T[n] && (n = T[n]);
let r = {};
!0 === e.following && (r.following = e.following),
e.creators === l.Z.FOLLOWING && (r.creators = e.creators);
let i = Object.keys(r).length > 0 ? new URLSearchParams(r).toString() : void 0;
return i && (n += `?${i}`),
n
}(e)
}
let h = /^\/community\/search$/;
function g(e, t) {
if (e || (e = location.pathname),
!e.match(h))
return null;
t || (t = location.search);
let n = new URLSearchParams(t)
, r = n.get("query");
if (!r)
return null;
let i = n.get("resource_type");
if (!i)
return null;
let a = n.get("sort_by") || p.e.Search.RELEVANCY
, s = (0,
o.G)(n.get("editor_type"), i);
return {
resourceType: i,
sort_by: a,
editor_type: s,
query: r,
price: n.get("price") || u.C.ALL,
creators: (()=>{
let e = n.get("creators");
return l.Z.isSearchType(e) ? e : l.Z.ALL
}
)()
}
}
function f(e) {
let t = new URLSearchParams({
resource_type: e.resourceType,
sort_by: e.sort_by,
query: e.query,
editor_type: (0,
o.G)(e.editor_type, e.resourceType),
price: e.price,
creators: e.creators && l.Z.isSearchType(e.creators) ? e.creators : l.Z.ALL
}).toString();
return `/community/search?${t}`
}
let E = /^\/community/
, y = /^\/community\/collections?\/?/
, b = /^\/community\/(file|plugin|widget)\//;
var v = (e=>(e.NEW = "new",
e.POPULAR = "popular",
e.TRENDING = "trending",
e.CATEGORY = "category",
e.TAG = "tag",
e.COMMUNITY = "community",
e))(v || {});
let I = [function(e) {
return "community" === e[0] && [{}, e.slice(1)]
}
, function(e) {
return "tag" === e[0] && !!e[1] && [{
tags: e[1].split(",")
}, e.slice(2)]
}
, function(e) {
return "category" === e[0] && !!e[1] && [{
category: e[1]
}, e.slice(2)]
}
, function(e) {
let t = e[0];
return Object.values(d.L.BrowseResourceTypes).indexOf(t) > -1 && [{
resourceType: t
}, e.slice(1)]
}
, function(e, t) {
let n = e[0];
return Object.values(s.k.Editors).indexOf(n) > -1 && [{
editor_type: (0,
o.G)(n, t.resourceType)
}, e.slice(1)]
}
, function(e) {
let t = e[0];
return u.C.FOR_URL_SLUG.indexOf(t) > -1 && [{
price: t
}, e.slice(1)]
}
, function(e) {
let t = e[0];
return t === l.Z.FIGMA_PARTNER && [{
creators: t
}, e.slice(1)]
}
, function(e) {
let t = null;
return "new" === e[0] && (t = p.e.Browse.PUBLISHED_AT),
"popular" === e[0] && (t = p.e.Browse.ALL_TIME),
"trending" === e[0] && (t = p.e.Browse.POPULAR),
!!t && [{
sort_by: t
}, e.slice(1)]
}
]
, T = {
"/community/mixed": "/community"
};
function S() {
let[e,t] = r.useState(m());
return !function(e) {
let t = (0,
i.W6)();
r.useEffect(()=>t.listen(e), [e, t])
}(r.useCallback(function() {
t(m())
}, [])),
e
}
let w = /\/community(\/(?:[a-zA-Z]+))?/;
var A = (e=>(e.SEARCH = "/community/search",
e))(A || {});
function C(e) {
if (!e)
return null;
let t = e.match(w);
return t ? t[0] : null
}
function N() {
let[e,t] = r.useState(m());
return r.useEffect(()=>{
let e = ()=>{
t(m())
}
;
return window.addEventListener("pushState", e),
window.addEventListener("replaceState", e),
window.addEventListener("popState", e),
()=>{
window.removeEventListener("pushState", e),
window.removeEventListener("replaceState", e),
window.removeEventListener("popState", e)
}
}
, []),
e
}
function O(e) {
var t;
return !!e && !e.category && !((null == (t = e.tags) ? void 0 : t.length) > 0) && (!("query"in e) || !e.query)
}
function L(e) {
return !!e && !!e.category
}
let R = ["inspiration", "jam-sessions", "design_systems", "typography", "ui_kits", "mobile_design", "web_design", "ui-libraries"];
function P(e) {
if (!L(e))
return !1;
let t = e.category;
return !(null === t || R.includes(t))
}
function k(e) {
let t = m(e);
return !!t && O(t)
}
function D() {
return {
resourceType: d.L.BrowseResourceTypes.MIXED,
sort_by: (0,
p.H)(),
editor_type: s.k.Editors.ALL,
price: u.C.ALL,
tags: [],
pagination: null,
category: null,
creators: l.Z.ALL
}
}
let M = {
resourceType: d.L.BrowseResourceTypes.MIXED,
sort_by: p.e.Search.RELEVANCY,
editor_type: s.k.Editors.ALL,
price: u.C.ALL,
creators: l.Z.ALL
};
function F(e) {
return /\/community\/(file|plugin|widget)\/\d+/.test(e) ? {
reactRouterHandled: !0,
subView: "resourcePage"
} : /^\/@/.test(e) ? {
reactRouterHandled: !0,
subView: "handle"
} : /\/community*/.test(e) ? {
reactRouterHandled: !0,
subView: "searchAndBrowse"
} : (a.k.warn(`If this is firing, it means you're trying to use fastma-routing on a non-Community URL.
url: ${e}`),
{
reactRouterHandled: !1,
subView: !1
})
}
}
,
370855: (e,t,n)=>{
"use strict";
n.d(t, {
d: ()=>d,
t: ()=>c
});
var r = n(411855)
, i = n(188507)
, a = n(499737)
, o = n(384162)
, l = n(279453)
, s = n(336599);
function d(e) {
let t = (0,
i.wA)()
, n = (0,
i.d4)(t=>t.communityHub.shelves[e] || [])
, a = o.sz.loadingKeyForPayload({
shelfType: e
})
, l = (0,
s.oh)(a)
, d = (0,
s.mC)(a);
return r.useEffect(()=>{
l || d || t(o.sz({
shelfType: e
}))
}
),
{
shelves: n,
isLoading: l,
hasResolved: d
}
}
function c(e) {
let t = (0,
a.Rs)(l.U2Y, {
profileId: e
});
if ("loaded" === t.status) {
let e = t.data.communityProfile;
if (e) {
let t = e.associatedUsers
, n = [];
t.forEach(t=>{
n.push({
user_id: t.id,
email: t.email,
is_primary_user: t.id === e.primaryUserId
})
}
);
let r = [];
return e.badges.forEach(e=>{
r.push(e.badgeType)
}
),
{
id: e.id,
name: e.name,
profile_handle: e.profileHandle,
description: e.description,
location: e.location,
website: e.website,
twitter: e.twitter,
instagram: e.instagram,
public_at: e.publicAt,
follower_count: e.followerCount,
following_count: e.followingCount,
cover_image_path: e.coverImagePath,
primary_user_id: e.primaryUserId,
team_id: e.teamId,
org_id: e.orgId,
pronouns: e.pronouns,
entity_type: e.entityType,
created_at: e.createdAt.toDateString(),
updated_at: e.updatedAt.toDateString(),
redirect_cover_image_url: e.coverImagePath ? `/profile/${e.id}/cover_image` : "",
associated_users: n,
current_user_is_following: e.currentUserIsFollowing,
current_user_is_followed: e.currentUserIsFollowed,
badges: r,
is_restricted_by_current_user: !1,
img_urls: {},
img_url: "",
has_shared_orgs: !1,
has_shared_teams: !1
}
}
}
}
}
,
466636: (e,t,n)=>{
"use strict";
n.d(t, {
C: ()=>C,
F8: ()=>m,
Lt: ()=>O,
Mj: ()=>h,
QQ: ()=>S,
UO: ()=>A,
V4: ()=>N,
WD: ()=>_,
WJ: ()=>w,
X2: ()=>b,
XR: ()=>y,
Yp: ()=>g,
_K: ()=>L,
ae: ()=>p,
bV: ()=>E,
mZ: ()=>c,
up: ()=>v,
vf: ()=>u,
vi: ()=>I,
xs: ()=>R,
zt: ()=>f
});
var r = n(527735)
, i = n(939863)
, a = n(61057)
, o = n(820113)
, l = n(555328)
, s = n(401730)
, d = n(178787);
let c = 2;
function u(e) {
if (null == e ? void 0 : e.price) {
let {price: t} = e;
return .01 * t
}
}
function p(e) {
return e ? 100 * e : 0
}
function m(e) {
return e % 1 != 0
}
function _(e, t) {
return t > e
}
function h(e, t) {
return t / e > 1.5
}
function g(e) {
return e < c || e >= 1e3
}
function f(e, t) {
if (!e || !t)
return "";
let n = 1200 * e * (1 - t / 100);
return (0,
i.t)("community.buyer.price_per_year", {
priceString: v(n, n % 100 != 0)
})
}
function E(e, t=!1) {
let {price: n, is_subscription: r} = e;
if (!r)
return v(n, !1);
if (t) {
let t = e.annual_price || 0;
return (0,
i.t)("community.buyer.price_per_year", {
priceString: v(t, t % 100 != 0)
})
}
return (0,
i.t)("community.buyer.price_per_month", {
priceString: v(n, n % 100 != 0)
})
}
function y(e) {
let t = E(e)
, n = (0,
d.Uv)(e) ? (0,
i.t)("community.buyer.subscribe") : (0,
i.t)("community.buyer.buy");
return `${n} ${t}`
}
function b(e) {
let {price: t, is_subscription: n} = e
, r = v(t, t % 100 != 0);
return n ? (0,
i.t)("community.buyer.price_per_month_subscription", {
priceString: r
}) : (0,
i.t)("community.buyer.price_one_time_payment", {
priceString: r
})
}
function v(e, t=!1) {
return new o.vr("usd").formatMoney(e, {
showCents: t
})
}
function I(e) {
switch (e) {
case d.bG.DOESNT_MEET_NEEDS:
return (0,
i.t)("community.buyer.refund_reason.doesnt_meet_needs");
case d.bG.TECHNICAL_ISSUES:
return (0,
i.t)("community.buyer.refund_reason.technical_issues");
case d.bG.TOO_EXPENSIVE:
return (0,
i.t)("community.buyer.refund_reason.too_expensive");
case d.bG.FOUND_ALTERNATIVE:
return (0,
i.t)("community.buyer.refund_reason.found_alternative");
case d.bG.OTHER:
return (0,
i.t)("community.buyer.refund_reason.other")
}
}
function T(e) {
return !!(e.subscription_expires_at && !isNaN(Date.parse(e.subscription_expires_at)))
}
function S(e) {
return !!e && (T(e) ? new Date(e.subscription_expires_at).getTime() + 864e5 > new Date().getTime() && !w(e, s.G3.DISPUTED) : w(e, s.G3.SUCCEEDED))
}
function w(e, t) {
return !!e.status && e.status === t
}
function A(e) {
return e.status === s.G3.SUBSCRIPTION_PAYMENT_FAILED || e.status === s.G3.INVOICE_FINALIZATION_FAILED
}
function C(e) {
let t = Date.now() - 864e5;
return S(e) && !T(e) && new Date(e.purchased_at).getTime() >= t
}
function N(e, t) {
var n, i;
if ((0,
l.I0)(t) || (0,
l.xQ)(t)) {
let a = ((null == (n = t.plugin_publishers) ? void 0 : n.accepted) || []).map(e=>e.id)
, o = ((null == (i = t.plugin_publishers) ? void 0 : i.pending) || []).map(e=>e.id)
, l = new Set(a.concat(o))
, {pass: s, fail: d} = (0,
r.j)(e, e=>l.has(e.id) || e.id === t.creator.id);
return {
usersCanPurchase: d,
publishers: s
}
}
{
let n = new Set((0,
a.D)(t))
, {pass: i, fail: o} = (0,
r.j)(e, e=>n.has(e.id));
return {
usersCanPurchase: o,
publishers: i
}
}
}
function O({resource: e, payment: t}) {
let n = e.monetized_resource_metadata;
return !!(n && (0,
d.Uv)(n)) && !!n.trial_length_in_days && (!t || !t.subscription_expires_at)
}
function L(e, t) {
let n = (0,
l.m3)(e)
, r = n && (0,
l.PM)(e)
, i = S(t);
return n && !r && !i
}
function R(e) {
return {
status: s.QK[e.status],
purchased_at: e.purchasedAt ? new Date(e.purchasedAt).toISOString() : null,
subscription_expires_at: e.subscriptionExpiresAt ? new Date(e.subscriptionExpiresAt).toISOString() : null,
subscription_canceled_at: e.subscriptionCanceledAt ? new Date(e.subscriptionCanceledAt).toISOString() : null,
refund_reason: e.refundReason,
monetized_resource_metadata_id: e.monetizedResourceMetadataId,
subscription_interval: e.subscriptionInterval
}
}
}
,
22863: (e,t,n)=>{
"use strict";
n.d(t, {
c: ()=>i,
m: ()=>a
});
var r = n(813408);
function i(e) {
return !!(e && (e.entity_type === r.o1.ORG || e.entity_type === r.o1.TEAM))
}
function a(e, t) {
var n;
return t ? t.public_at ? `@${t.profile_handle}` || null : t.primary_user_id ? (null == (n = e.authedUsers.byId[t.primary_user_id]) ? void 0 : n.email) || null : t.org_id ? e.orgById[t.org_id].name || null : t.team_id && e.teams[t.team_id].name || null : null
}
}
,
545941: (e,t,n)=>{
"use strict";
n.d(t, {
AC: ()=>u,
G8: ()=>d,
Pg: ()=>m,
Ul: ()=>p,
XU: ()=>h,
cB: ()=>E,
lT: ()=>_,
mA: ()=>g,
mk: ()=>c,
sB: ()=>f
});
var r = n(296210)
, i = n.n(r)
, a = n(776250)
, o = n(99506)
, l = n(967409);
function s(e) {
let t = document.createElement("div");
return t.innerHTML = i().sanitize(e),
t.innerText
}
function d(e, t, n) {
if (e.tagline)
return e.tagline;
let r = (t = t || s)(e.description);
return n ? function(e) {
let t = null == e ? void 0 : e.match(/[^.!?\r\n]+[.!?\r\n]+/);
return t ? t[0].trim() : e ?? ""
}(r) : r
}
function c(e) {
return "unique_run_count"in e ? e.unique_run_count : e.duplicate_count
}
function u(e) {
return !!e.publishing_status && [o.KB.PENDING_PUBLIC, o.KB.PENDING_USER_VISUAL_COMPLIANCE, o.KB.ORG_PRIVATE_PENDING_PUBLIC].includes(e.publishing_status)
}
function p(e) {
return e.publishing_status === o.KB.APPROVED_PUBLIC
}
function m(e) {
return !!e.publishing_status && [o.KB.DELISTED, o.KB.DELISTED_CREATOR_STRIPE_DISABLED].includes(e.publishing_status)
}
function _(e) {
return e.publishing_status === o.KB.BLOCKED
}
function h(e, t) {
var n;
return ((null == (n = t.community_publishers) ? void 0 : n.accepted) ?? []).some(t=>t.id === e)
}
function g(e) {
return e.community_publishers.accepted.some(e=>"apple" === e.profile_handle.toLowerCase())
}
function f(e) {
return e.community_publishers.accepted.some(e=>"figma" === e.profile_handle.toLowerCase())
}
function E(e, t, n, r, i="feed") {
(0,
a.sx)("Community Resource Clicked", {
resource_type: e,
community_resource_id: t,
subView: i,
scope: l.Rx.COMMUNITY,
index: n,
...r
})
}
}
,
609271: (e,t,n)=>{
"use strict";
n.d(t, {
Ay: ()=>s,
XY: ()=>d,
hJ: ()=>c
});
var r = n(411855)
, i = n(91408)
, a = n(358145)
, o = n(860168);
let l = (0,
i.hG)(o.dOH);
function s({mediaQuery: e, children: t, onShow: n, onHide: i}) {
let o = r.useMemo(()=>window.matchMedia(e), [e])
, [l,s] = r.useState(o.matches)
, d = (0,
a.ZC)(l);
return (r.useEffect(()=>{
let e = ()=>s(o.matches);
return o.addEventListener("change", e),
()=>o.removeEventListener("change", e)
}
, [o]),
r.useEffect(()=>{
(void 0 === d || d !== l) && (l && n && n(),
!l && i && i())
}
, [l, d, n, i]),
l) ? r.createElement(r.Fragment, null, t) : null
}
function d({children: e}) {
return r.createElement(s, {
mediaQuery: `(max-width: ${l - 1}px)`
}, e)
}
function c({children: e}) {
return r.createElement(s, {
mediaQuery: `(min-width: ${l}px)`
}, e)
}
}
,
62589: (e,t,n)=>{
"use strict";
n.d(t, {
Rd: ()=>l,
nS: ()=>o
});
var r = n(753178)
, i = n(179940)
, a = n(776621);
class o {
constructor(...e) {
let[t,n,r] = e;
this.params = t ?? {},
this.search = n ?? {},
this.state = r ?? {}
}
get pathname() {
return (0,
r.tW)(this.constructor.path, this.params)
}
get queryString() {
let e = Object.fromEntries(Object.entries(this.search).filter(([,e])=>void 0 !== e));
return 0 === Object.keys(e).length ? "" : `?${(0,
i.lF)(e)}`
}
get href() {
return `${this.pathname}${this.queryString}`
}
get to() {
return {
pathname: this.pathname,
search: this.queryString,
state: this.state
}
}
}
function l(e) {
!function(e) {
if (!(0,
r.W5)(e.path)) {
let t = `Current location does not match the provided CommunityRoute: ${e.constructor.name}`;
(0,
a.us)(t),
console.warn(t, "This could indicate a bug in the route definition or usage.")
}
}(e);
let t = (0,
r.W5)(e.path);
return null === t ? {} : t.params
}
}
,
709595: (e,t,n)=>{
"use strict";
n.d(t, {
c9: ()=>a,
jt: ()=>s,
oW: ()=>l,
tx: ()=>o
});
var r = n(262896);
let i = "8065774696727";
function a(e, t) {
(0,
r.ny)({
name: e.name,
email: e.email
}, {
ticketForms: ["community"],
fields: t,
suppressAnswerBot: !0
})
}
function o(e) {
return a(e, [{
id: i,
value: "community_product_question"
}])
}
function l(e) {
return a(e, [{
id: i,
value: "community_refund"
}])
}
function s(e) {
return a(e, [{
id: i,
value: "community_report"
}])
}
}
,
675665: (e,t,n)=>{
"use strict";
n.d(t, {
$2: ()=>o,
$O: ()=>c,
S: ()=>s,
bK: ()=>a,
co: ()=>l
});
var r = n(330654)
, i = n(555328);
let a = -200
, o = 10
, l = 125;
var s = (e=>(e.file = "hub_files",
e.plugin = "plugins",
e.widget = "widgets",
e))(s || {});
r.object({
comments: r.array(i.KS).nullable(),
total_count: r.number().optional()
});
var d = (e=>(e.COMPONENTS = "components",
e.STYLES = "styles",
e))(d || {})
, c = (e=>(e.DescriptionView = "descriptionViewSection",
e.CommentsView = "commentsViewSection",
e))(c || {})
}
,
742580: (e,t,n)=>{
"use strict";
function r(e) {
return !!e && void 0 !== e.query
}
function i(e) {
return void 0 !== e.category
}
n.d(t, {
Iw: ()=>i,
LJ: ()=>a,
OE: ()=>r,
PF: ()=>l,
bV: ()=>o
});
var a = (e=>(e.inspiration = "inspiration",
e.jamSessions = "jam-sessions",
e.designSystems = "design-systems",
e.visualAssets = "visual-assets",
e.development = "development",
e.accessibility = "accessibility",
e.brainstorming = "brainstorming",
e.classroomActivities = "classroom-activities",
e.designTemplates = "design-templates",
e.designTools = "design-tools",
e.desktopAppsWebsites = "desktop-apps-websites",
e.diagramming = "diagramming",
e.editingEffects = "editing-effects",
e.education = "education",
e.fileOrganization = "file-organization",
e.fontsTypography = "fonts-typography",
e.funGames = "fun-games",
e.icons = "icons",
e.illustrations = "illustrations",
e.importExport = "import-export",
e.libraries = "libraries",
e.mobileApps = "mobile-apps",
e.plugins = "plugins",
e.portfolios = "portfolio-templates",
e.calendarTemplates = "calendar-templates",
e.presentations = "presentations",
e.prototypingAnimation = "prototyping-animation",
e.resumes = "resume-templates",
e.shapesColors = "shapes-colors",
e.stockPhotography = "stock-photography",
e.strategicPlanning = "strategic-planning",
e.teamMeetings = "team-meetings",
e.tutorials = "tutorials",
e.uiKits = "ui-kits",
e.whiteboarding = "whiteboarding",
e.widgets = "widgets",
e.wireframes = "wireframes",
e))(a || {});
let o = Array.from(Object.values(a)).map(e=>`/community/${e}/*`);
var l = (e=>(e.LANDING = "landing",
e.NAV = "nav",
e))(l || {})
}
,
944452: (e,t,n)=>{
"use strict";
n.d(t, {
IE: ()=>v,
J5: ()=>g,
iB: ()=>f
});
var r = n(753178)
, i = n(737947)
, a = n(179940)
, o = n(566083)
, l = n(612776)
, s = n(815063)
, d = n(709495)
, c = n(910764)
, u = n(580857)
, p = n(357611)
, m = n(971120)
, _ = n(742580)
, h = n(62589);
function g(e, t) {
let n = decodeURIComponent(e || i.Ay.location.pathname)
, a = (0,
l._f)() ? (0,
r.B6)(n, {
path: b.path
}) : (0,
r.B6)(n, {
path: y.path
});
if (!a)
return null;
let h = (0,
s.S)(a.params.categorySlug, _.LJ);
if (void 0 === h)
return null;
let g = v.parseQueryString(t || i.Ay.location.search)
, f = {
category: h,
resourceType: g.resource_type || m.L.BrowseResourceTypes.MIXED,
editor_type: p.k.Editors.ALL,
price: g.price || o.C.ALL,
creators: u.Z.ALL,
sort_by: (0,
d.H)(),
following: !1,
tags: [],
pagination: null
};
f.editor_type = (0,
l.Pi)() && h === _.LJ.presentations && !g.editor_type ? p.k.Editors.SLIDES : (0,
c.G)(g.editor_type, f.resourceType),
f.resourceType = (0,
c.l)(f.editor_type, f.resourceType);
let E = g.sort_by;
E && [d.e.Browse.ALL_TIME, d.e.Browse.PUBLISHED_AT, d.e.Browse.POPULAR].includes(E) && (f.sort_by = E);
let I = g.creators;
return I && [u.Z.FIGMA_PARTNER, u.Z.FOLLOWING].includes(I) && (f.creators = I),
f
}
function f(e) {
let t = (0,
s.S)(e.category, _.LJ);
return void 0 === t ? "/community" : new v({
categorySlug: t
},{
resource_type: (0,
c.l)(e.editor_type, e.resourceType),
editor_type: (0,
c.G)(e.editor_type, e.resourceType),
price: e.price,
sort_by: e.sort_by,
creators: e.creators
}).href
}
class E extends h.nS {
constructor(e, t) {
super(e, t)
}
}
E.parseQueryString = e=>{
let t = (0,
a.xL)(e);
return {
resource_type: (0,
s.S)(t.resource_type, m.L.BrowseResourceTypes),
editor_type: (0,
s.S)(t.editor_type, p.k.Editors),
price: (0,
s.S)(t.price, o.C.Price),
sort_by: (0,
s.S)(t.sort_by, d.e.Browse),
creators: (0,
s.S)(t.creators, u.Z.Browse)
}
}
;
class y extends E {
constructor(e, t) {
super(e, t)
}
}
y.path = "/community/category/:categorySlug";
class b extends E {
constructor(e, t) {
super(e, t)
}
}
b.path = "/community/:categorySlug/";
let v = (0,
l._f)() ? b : y
}
,
97128: (e,t,n)=>{
"use strict";
n.d(t, {
UF: ()=>o,
Uo: ()=>a,
ax: ()=>s
});
var r = n(179940)
, i = (n(637590),
n(62589))
, a = (e=>(e.FILE = "file",
e.WIDGET = "widget",
e.PLUGIN = "plugin",
e))(a || {})
, o = (e=>(e.FILE = "files",
e.WIDGET = "widgets",
e.PLUGIN = "plugins",
e))(o || {});
class l extends i.nS {
}
l.parseQueryString = e=>{
let t = (0,
r.xL)(e);
return {
comment: t.comment,
checkout: t.checkout,
rating: t.rating
}
}
;
class s extends l {
constructor(e, t) {
super(e, t)
}
}
s.path = "/community/:apiResourceType(file|plugin|widget)/:resourceId/:urlSlug?"
}
,
308977: (e,t,n)=>{
"use strict";
n.d(t, {
A0: ()=>f,
AC: ()=>S,
Ap: ()=>E,
LK: ()=>g,
MT: ()=>m,
NU: ()=>y,
Pt: ()=>I,
QN: ()=>T,
S8: ()=>b,
XP: ()=>v,
p: ()=>h,
uz: ()=>_,
v4: ()=>A,
xv: ()=>w
});
var r = n(411855)
, i = n(188507)
, a = n(966712)
, o = n(374626)
, l = n(939863)
, s = n(756085)
, d = n(215822)
, c = n(239671)
, u = n(638311)
, p = n(287012);
let m = "FIGMA_PROPERTIES"
, _ = "WEB"
, h = "IOS"
, g = "ANDROID"
, f = "CSSBUILDER"
, E = "IOS_UIKIT"
, y = "ANDROID_XML"
, b = {
[_]: {
type: "first-party",
id: _
},
[h]: {
type: "first-party",
id: h
},
[E]: {
type: "first-party",
id: E
},
[g]: {
type: "first-party",
id: g
},
[y]: {
type: "first-party",
id: y
}
};
function v(e) {
let t = "string" == typeof e ? {
type: "first-party",
id: e
} : e;
return t && t.id && ("first-party" !== t.type || b[t.id]) ? t : {
type: "first-party",
id: _
}
}
function I(e) {
let t = (0,
s.$1)()
, n = (0,
s.j8)();
return (0,
r.useMemo)(()=>({
format(r) {
if ((null == r ? void 0 : r.type) === "first-party")
switch (null == r ? void 0 : r.id) {
case f:
return "CssBuilder";
case _:
return (0,
l.t)("dev_handoff.code.lang_css");
case h:
return (0,
l.t)("dev_handoff.code.lang_swiftui");
case E:
return (0,
l.t)("dev_handoff.code.lang_uikit");
case g:
return (0,
l.t)("dev_handoff.code.lang_compose");
case y:
return (0,
l.t)("dev_handoff.code.lang_android_xml");
case m:
return (0,
l.t)("dev_handoff.code.lang_figma")
}
if (e) {
let i = (null == r ? void 0 : r.type) === "local-plugin" ? t[r.id] : (null == r ? void 0 : r.type) === "published-plugin" && e.plugin_id === (null == r ? void 0 : r.id) ? n[r.id] ?? e : null;
if (i)
return 1 === (0,
u.m)(i).length ? i.name : (0,
u.X)(i, (null == r ? void 0 : r.pluginLanguage) ?? "").label ?? i.name
}
return ""
}
}), [n, t, e])
}
function T() {
return S(A())
}
function S(e) {
let t = (0,
i.d4)(e=>e.selectedView)
, n = "fullscreen" === t.view ? t.editorType : null
, r = (0,
s.S0)("first-party" !== e.type ? e.id : "", {
searchLocalPlugins: !0,
searchPublishedPlugins: !0,
searchSavedPlugins: !0,
searchRecentPlugins: !0
})
, {plugin: a} = (0,
s._P)("published-plugin" === e.type ? e.id : "0", "published-plugin" === e.type);
if ("orgAdminSettings" !== t.view && n !== c.nT.DevHandoff)
return null;
let o = r || a;
return o && (0,
d.M5)(o) ? o : null
}
function w(e, t) {
if (!e || !e.codeSyntax)
return null;
switch (t) {
case _:
case f:
return e.codeSyntax[0] ?? null;
case g:
case y:
return e.codeSyntax[1] ?? null;
case h:
case E:
return e.codeSyntax[2] ?? null
}
return null
}
function A() {
let e = (0,
o.md)(p.D)
, t = (0,
i.d4)(e=>e.mirror.appModel.devHandoffCodeLanguage)
, n = (0,
i.d4)(e=>e.selectedView)
, a = t;
return "orgAdminSettings" === n.view && e && (a = e),
(0,
r.useMemo)(()=>v(a), [a])
}
(0,
a.kc)().dt_lego_ext_plugins && (b[f] = {
type: "first-party",
id: f
})
}
,
979385: (e,t,n)=>{
"use strict";
n.d(t, {
dX: ()=>E,
gB: ()=>y,
zL: ()=>b
});
var r = n(411855)
, i = n(188507)
, a = n(939683)
, o = n(980820)
, l = n(986270)
, s = n(756085)
, d = n(988022)
, c = n(843495)
, u = n(860178)
, p = n(560286)
, m = n(215822)
, _ = n(376485)
, h = n(809073)
, g = n(308977);
function f(e) {
let t = (0,
g.XP)(e);
return c.bw(t),
t
}
let E = (0,
o.nF)((e,t)=>{
var n;
let r = e.getState()
, {plugin: i, codeLanguage: a} = t
, o = (0,
p.s)(r)
, s = f(a);
"published-plugin" === s.type && i && !(0,
_.ZQ)(i) && e.dispatch(l.gU({
storeInRecentsKey: h.$A.Handoff,
id: i.plugin_id,
version: i.version,
currentUserId: o
})),
(0,
d.ds)("Dev Mode Language Changed", null == (n = r.openFile) ? void 0 : n.key, r, {
languageType: s.type,
languageId: s.id
})
}
);
function y() {
let e = (0,
a.U)()
, t = (0,
s.cW)()
, n = (0,
i.wA)()
, o = (0,
u.TA)() ?? void 0;
return (0,
r.useCallback)(r=>{
let i = f(r);
if ("published-plugin" === i.type) {
let e = (0,
m.te)({
idToSearch: i.id,
publishedPlugins: t,
localPluginsByFileId: void 0,
savedPlugins: void 0,
recentPlugins: void 0
});
e && !(0,
_.ZQ)(e) && n(l.gU({
storeInRecentsKey: h.$A.Handoff,
id: e.plugin_id,
version: e.version,
currentUserId: o
}))
}
e("Dev Mode Language Changed", {
languageType: i.type,
languageId: i.id
})
}
, [o, n, t, e])
}
function b() {
let e = (0,
a.U)();
return (0,
r.useCallback)(t=>{
let n = f(t);
return e("Dev Mode Language Changed", {
languageType: n.type,
languageId: n.id,
defaulting: !0
}),
n
}
, [e])
}
}
,
393812: (e,t,n)=>{
"use strict";
n.d(t, {
$F: ()=>s,
Mx: ()=>o,
ZC: ()=>l
});
var r = n(987918)
, i = n(852800)
, a = n(279702);
function o(e) {
return null != e && !!e.mirror && 1 === Object.keys(e.mirror.sceneGraphSelection).length
}
function l(e) {
var t;
if (!e || !(0,
r.fn)((0,
r.sH)(e)))
return a.PW.ASSET_COMPONENT;
try {
return (null == (t = i.w3z.getAssetInfo(e)) ? void 0 : t.type) ?? a.PW.ASSET_COMPONENT
} catch (e) {
console.warn(e)
}
return a.PW.ASSET_COMPONENT
}
function s(e) {
return !(null == e ? void 0 : e.isSection)
}
}
,
332034: (e,t,n)=>{
"use strict";
n.d(t, {
Q: ()=>R,
e: ()=>O
});
var r = n(411855)
, i = n(188507)
, a = n(374626)
, o = n(799569)
, l = n(946689)
, s = n(939863)
, d = n(931828)
, c = n(726864)
, u = n(226055)
, p = n(456104)
, m = n(988022)
, _ = n(582947)
, h = n(29680)
, g = n(601607)
, f = n(397065)
, E = n(853079)
, y = n(746806)
, b = n(63666)
, v = n(502601)
, I = n(70964)
, T = n(936181)
, S = n(601538)
, w = n(463546)
, A = n(839662)
, C = n(304516);
let N = "dev_handoff_seen_marketing_overlay"
, O = "dev_handoff_marketing_overlay_anchor_key"
, L = (0,
_.r1)(N)
, R = r.memo(function() {
let e = (0,
h.aV)()
, t = (0,
i.d4)(e=>e.mirror.appModel.currentPage)
, n = (0,
i.wA)()
, c = (0,
i.Pj)()
, _ = r.useRef(!0)
, y = (0,
a.md)(L)
, b = (0,
p.e)({
overlay: w.Qqu,
priority: f.N.DEFAULT_MODAL
}, [y])
, R = (0,
r.useCallback)(()=>{
b.show({
canShow: e=>!e,
onShow: ()=>{
var e;
n(d.b({
[N]: !0
})),
(0,
m.ds)("Dev Handoff Marketing Popup Shown", null == (e = c.getState().openFile) ? void 0 : e.key, c.getState())
}
})
}
, [b, n, c])
, k = (0,
g.Fk)((e,t)=>{
var n, r;
return !!t && !!(null == (r = null == (n = e.get(t)) ? void 0 : n.childrenGuids) ? void 0 : r.length)
}
, t);
(0,
r.useEffect)(()=>{
e || (_.current && k && R(),
_.current = !1)
}
, [R, e, t, k]);
let D = (0,
E.U)("modal")
, M = (0,
r.useCallback)(()=>{
b.complete(),
D("handoff")
}
, [b, D])
, F = (0,
r.useCallback)(()=>{
var e;
b.complete(),
(0,
m.ds)("Dev Handoff Marketing Popup Dismissed", null == (e = c.getState().openFile) ? void 0 : e.key, c.getState())
}
, [b, c])
, x = (0,
u.GS)() ? S.ON : O;
return b.isShowing ? r.createElement(v.Q, null, r.createElement(T.x, {
target: x
}), r.createElement(P, {
target: x
}), r.createElement("div", {
className: A.yl
}, r.createElement("div", {
className: A.jE
}, r.createElement("div", {
className: A.wx
}, r.createElement("p", {
className: A.TK
}, r.createElement(s.Tx, {
id: "dev_handoff.onboarding.pointer_modal.title"
})), r.createElement(o.Jn, {
onClick: F,
svg: C.A
})), r.createElement(I.Gv, {
src: "https://static.figma.com/uploads/f002267b1461462f42a75efcf6b5dd8d77e6ac32"
}), r.createElement("div", {
className: A.OQ
}, r.createElement("p", {
className: A.h_
}, r.createElement(s.Tx, {
id: "dev_handoff.onboarding.pointer_modal.description"
})), r.createElement("div", {
className: A.cQ
}, r.createElement(l.M7, {
onClick: F,
recordingKey: "dismissPersistentInspectModal"
}, r.createElement(s.Tx, {
id: "dev_handoff.onboarding.pointer_modal.not_now_button"
})), r.createElement(l.KL, {
onClick: M,
recordingKey: "switchToInspectModeFromPersistentModal"
}, r.createElement(s.Tx, {
id: "dev_handoff.onboarding.pointer_modal.primary_button"
}))))))) : null
});
function P({target: e}) {
let t = (0,
c.hX)(`[data-onboarding-key=${e}]`);
if (!t)
return null;
let n = t.left + t.width / 2
, i = t.top + t.height;
return r.createElement("div", {
className: A.Wn,
style: {
left: n - 8,
top: i + 8
}
}, r.createElement(b.gm, {
arrowPosition: y.F_.TOP,
arrowOffset: 0,
modalColor: "var(--color-bg)"
}))
}
}
,
86538: (e,t,n)=>{
"use strict";
n.d(t, {
HT: ()=>s,
RB: ()=>d,
hO: ()=>o
});
var r = n(38580)
, i = n(288706)
, a = n(529928);
let o = (0,
r.eU)(void 0)
, l = (0,
a.bt)(e=>e.universalInsertModal.initialFdView)
, s = (0,
i.t_)(e=>{
let t = e(l)
, n = e(o);
return t || n || "recents_and_saved"
}
)
, d = (0,
r.eU)(!1)
}
,
603689: (e,t,n)=>{
"use strict";
n.d(t, {
Az: ()=>b,
XI: ()=>_,
gY: ()=>h,
lz: ()=>g,
qn: ()=>I,
rL: ()=>E,
sX: ()=>y,
xT: ()=>v
});
var r = n(411855)
, i = n(91408)
, a = n(38580)
, o = n(374626)
, l = n(852800)
, s = n(617453)
, d = n(860168);
let c = (0,
i.jz)(d.QBm)
, u = 300 + c
, p = 640 + c
, m = 320 + c
, _ = (0,
a.eU)(!1);
function h(e) {
return Math.max(u, Math.min(p, e || 0))
}
function g() {
return h((0,
s.UX)())
}
let f = m;
function E() {
let e = g()
, t = (0,
o.md)(_);
return r.useEffect(()=>{
t || (f = e)
}
, [t]),
t ? f : e
}
function y() {
var e;
return h(null == (e = l.Ez5) ? void 0 : e.editorPreferences().devHandoffInspectSplitPosition.getCopy())
}
function b() {
(0,
s.UK)().devHandoffInspectSplitPosition.set(m)
}
function v(e) {
(0,
s.UK)().devHandoffInspectSplitPosition.set(e)
}
function I() {
let e = (0,
s.UX)();
(0,
r.useEffect)(()=>{
let t = h(e);
t !== e && v(t)
}
, [e])
}
}
,
785315: (e,t,n)=>{
"use strict";
n.d(t, {
H: ()=>d,
_: ()=>l
});
var r = n(38329)
, i = n(38580)
, a = n(988022)
, o = n(441088)
, l = (e=>(e.PRIMARY = "primary",
e.PLUGIN = "plugin",
e.PROPERTIES = "properties",
e.COMPONENT = "component",
e.DEV_RESOURCES = "dev_resources",
e.ASSETS = "assets",
e))(l || {});
let s = (0,
i.eU)("primary")
, d = (0,
i.eU)(e=>e(s), (e,t,n)=>{
let i = e(s)
, l = n;
if (!(0,
o.T)())
switch (n) {
case "properties":
case "component":
case "dev_resources":
case "assets":
l = "primary"
}
if (i !== l) {
var d;
d = l,
(0,
a.uE)("dev_handoff_right_panel_tab_switch", r.D.getState(), {
sourceTab: i,
destinationTab: d
}),
t(s, l)
}
}
)
}
,
870505: (e,t,n)=>{
"use strict";
n.d(t, {
g: ()=>s
});
var r = n(91408)
, i = n(38580)
, a = n(860168);
let o = (0,
r.jz)(a.YI7)
, l = (0,
r.jz)(a.Qhc)
, s = (0,
i.eU)(o + l)
}
,
85304: (e,t,n)=>{
"use strict";
n.d(t, {
W: ()=>d,
e: ()=>c
});
var r = n(411855)
, i = n(38580)
, a = n(374626)
, o = n(30637)
, l = n(507956);
let s = (0,
i.eU)(!1);
function d(e) {
let[t,n] = (0,
a.fp)(s);
(0,
r.useEffect)(()=>{
if ((0,
o.PN)())
return;
let t = setTimeout(()=>{
n(!0)
}
, e);
return ()=>{
clearTimeout(t),
n(!1)
}
}
, [e, n])
}
function c() {
let e = (0,
l.LS)()
, [t] = (0,
a.fp)(s);
return t && e
}
}
,
911826: (e,t,n)=>{
"use strict";
n.d(t, {
O: ()=>c,
P: ()=>u
});
var r = n(188507)
, i = n(335682)
, a = n(694687)
, o = n(596607)
, l = n(643067)
, s = n(243987)
, d = n(984968);
function c() {
return (0,
r.d4)(u)
}
function u(e) {
let t = (0,
i.tB)(e)
, n = (0,
o.xw)(e)
, r = (0,
d.UQ)(e)
, c = e.teams[(0,
d.ZT)(e)] || null
, u = (0,
s.w5)(c) && !(null == c ? void 0 : c.org_id)
, p = (0,
a.td)(e.currentUserOrgId, e.orgById);
if (!t || null === t)
return "unknown";
if (t.parentOrgId) {
let e = (0,
l.kA)(p) ? "ent" : "org";
return n && n.org_id === t.parentOrgId ? e : "non_member_" + e
}
return u ? r && r.team_id === t.teamId ? "pro" : "non_member_pro" : "starter"
}
}
,
256975: (e,t,n)=>{
"use strict";
n.d(t, {
Nc: ()=>d,
U4: ()=>u,
_I: ()=>c,
lF: ()=>p,
tn: ()=>s
});
var r = n(188507)
, i = n(499737)
, a = n(335682)
, o = n(279453)
, l = n(479296);
let s = (0,
l.n)(e=>{
let t = (0,
a.tB)({
openFile: e.openFile ?? null
});
return (null == t ? void 0 : t.canAccessFullDevMode) ?? !0
}
)
, d = (0,
l.n)(e=>{
let t = (0,
a.tB)({
openFile: e.openFile ?? null
});
return (null == t ? void 0 : t.canAccessDevModeEntryPoint) ?? !0
}
);
function c() {
return (0,
r.d4)(s)
}
function u() {
return (0,
r.d4)(d)
}
function p(e) {
(0,
i.Rs)(o.ErZ, {
key: e
}),
(0,
i.Rs)(o.HdA, {
key: e
}),
(0,
i.Rs)(o.oBY, {
key: e
}),
(0,
i.Rs)(o.D2i, {
key: e
}),
(0,
i.Rs)(o.Fol, {
key: e
}),
(0,
i.Rs)(o.Xon, {
key: e
})
}
}
,
17604: (e,t,n)=>{
"use strict";
n.d(t, {
D: ()=>o,
o: ()=>a
});
var r = n(188507)
, i = n(335682);
let a = (0,
n(479296).n)(e=>{
let t = (0,
i.tB)({
openFile: e.openFile
});
return !!(null == t ? void 0 : t.parentOrgId)
}
);
function o() {
return (0,
r.d4)(a)
}
}
,
400181: (e,t,n)=>{
"use strict";
n.d(t, {
L: ()=>ee,
O: ()=>X
});
var r = n(411855)
, i = n(188507)
, a = n(629019)
, o = n.n(a)
, l = n(758271)
, s = n.n(l)
, d = n(776250)
, c = n(91408)
, u = n(966712)
, p = n(374626)
, m = n(268537)
, _ = n(194400)
, h = n(574176)
, g = n(939863)
, f = n(118830)
, E = n(444736)
, y = n(239349)
, b = n(46415)
, v = n(738269)
, I = n(696673)
, T = n(852800)
, S = n(662531)
, w = n(617453)
, A = n(779709)
, C = n(843495)
, N = n(335682)
, O = n(100197)
, L = n(147206)
, R = n(471224)
, P = n(793485)
, k = n(279702)
, D = n(498606)
, M = n(620722)
, F = n(788612)
, x = n(297281)
, U = n(924491)
, B = n(227795)
, V = n(538697)
, H = n(343827)
, G = n(146935)
, W = n(862473)
, K = n(139387)
, z = n(951864)
, j = n(968109)
, Y = n(313888)
, $ = n(665150);
let Z = 4 * (0,
c.jz)(G.devHandoffAssetPreviewMaxWidth)
, q = 4 * (0,
c.jz)(G.devHandoffAssetPreviewMaxHeight)
, J = e=>e.stopPropagation()
, X = {
format: e=>e
}
, Q = r.memo(({assetInfo: e, openFileKey: t, disabled: n, media: a, showGuids: l, saveAsState: s, dropdownShown: c, isSelected: p})=>{
var _, w;
let A;
let {assetId: N, assetName: O, thumbnailVersion: L} = e
, P = (null == (_ = e.instancesGUIDs) ? void 0 : _[0]) ?? (null == (w = e.duplicateGUIDs) ? void 0 : w[0]) ?? N
, F = (0,
f.O)({
assetId: P,
thumbnailVersion: L,
width: Z,
height: q,
scale: 4
})
, G = function(e, t) {
var n;
let {exportSettings: r} = (0,
y.mJ)(e) ?? {
exportSettings: null
};
return (null == (n = null == r ? void 0 : r[0]) ? void 0 : n.imageType) ?? (t & k.PW.ASSET_ICON ? "SVG" : "PNG")
}(N, e.type)
, Q = (0,
E.aT)(e)
, ee = (0,
i.wA)()
, et = r.useCallback(async e=>{
e.stopPropagation(),
(0,
d.sx)("Asset Panel Export Clicked"),
await (0,
R.Dc)(R.hV.Export, s, ee, "export-assets-handoff", [P], "export-assets-handoff", {
[P]: G
}),
ee(b.rg()),
ee(v.oB())
}
, [P, ee, G, s])
, en = r.useCallback(e=>{
a.length > 0 && t ? ee(v.j7({
type: "save-media-select",
data: {
assetId: P
}
})) : et(e),
e.stopPropagation()
}
, [ee, et, a, P, t])
, er = (0,
H.d)(!1, void 0, P)
, ei = r.useCallback(e=>{
null == er || er(),
e.stopPropagation()
}
, [er])
, ea = (null == e ? void 0 : e.instancesGUIDs) ?? (null == e ? void 0 : e.duplicateGUIDs) ?? [N]
, eo = r.useCallback(e=>{
S.l7.user("image-type-change", ()=>{
T.glU.setDevHandoffAssetExport(N, e)
}
)
}
, [N])
, el = !!(e.type & k.PW.ASSET_COMPONENT)
, es = !!(e.type & k.PW.ASSET_ICON)
, ed = !!(e.type & k.PW.ASSET_IMAGE)
, ec = !!(e.type & k.PW.ASSET_GIF)
, eu = !!(e.type & k.PW.ASSET_VIDEO)
, ep = ec || eu
, em = (es || ed) && !ep
, e_ = a.length > 0 && null !== t ? B.DK : B.K0
, eh = (0,
u.kc)().ds_publish_file_deprecation ? e.isFromLibrary : e.libraryKey
, eg = !!e.libraryFileKey && (0,
I.wJ)(e.libraryFileKey)
, ef = r.useMemo(()=>[r.createElement(U.N5, {
key: "png",
value: "PNG"
}), r.createElement(U.N5, {
key: "jpeg",
value: "JPEG"
}), ...es ? [r.createElement(U.N5, {
key: "svg",
value: "SVG"
})] : [], r.createElement(U.N5, {
key: "pdf",
value: "PDF"
})], [es]);
A = eg ? $.A : eh ? z.A : Y.A;
let eE = e=>{
let t = e.split(".");
if (!t || !(t.length > 0))
return {
name: e,
extension: ""
};
{
let e = t[t.length - 1];
return {
name: t.slice(0, t.length - 2).join("."),
extension: e
}
}
}
;
return r.createElement("div", {
className: W.s,
onMouseEnter: ()=>T.Ez5.canvasViewState().temporarilyHoveredNodes.set(ea),
onMouseLeave: ()=>T.Ez5.canvasViewState().temporarilyHoveredNodes.set([]),
onClick: ()=>{
var t;
return C.tJ([(null == (t = null == e ? void 0 : e.instancesGUIDs) ? void 0 : t[0]) ?? N])
}
,
role: "link",
tabIndex: 0
}, r.createElement("div", {
className: o()(W.Re, (null == c ? void 0 : c.type) === "save-media-select" && c.data.assetId === P ? W.Lq : void 0)
}, r.createElement("div", {
className: W.ZE,
style: F.backgroundStyle
}, F && r.createElement(M.J, {
className: W.Wb,
src: F.url
})), r.createElement("div", {
className: W.DE
}, r.createElement("div", {
className: W.SM
}, l ? `${O} (${N})` : O), el && !p ? r.createElement("div", {
className: W._w
}, r.createElement(h.B, {
svg: j.A
}), r.createElement("div", {
className: W.R5
}, r.createElement(g.Tx, {
id: "dev_handoff.assets.instance"
}))) : r.createElement("div", {
className: W.Rn
}, r.createElement(E.$R, {
assetInfo: e,
media: em ? a : [],
dataTestId: "assetPanel",
shouldShowTypeLabel: !0
}))), r.createElement("div", {
className: W.Uo
}, em && r.createElement(r.Fragment, null, r.createElement(U.SV, {
id: `asset-image-type-${N}`,
property: G,
formatter: U.A3,
onChange: eo,
dispatch: ee,
dropdownShown: c,
onMouseDown: J,
dropdownWidth: 150
}, ef), r.createElement("div", {
className: W.yL
}, r.createElement(e_, {
svg: K.A,
onClick: en,
"data-tooltip-type": D.Ib.TEXT,
"data-tooltip": n ? (0,
g.t)("fullscreen.properties_panel.export_disabled") : (0,
g.t)("fullscreen.export.export"),
disabled: n,
className: W.x6,
containerClassName: W.Li,
isBackgroundTransparent: !0
}), (null == c ? void 0 : c.type) === "save-media-select" && r.createElement(r.Fragment, null, r.createElement("div", {
className: W.Vx
}), r.createElement(m.W.Dropdown, {
className: W.Yw
}, a.map(e=>{
let {name: n, extension: i} = eE(e.name);
return r.createElement(m.W.OptionTracked, {
onClick: e=>{
e.stopPropagation(),
ee(v.oB())
}
,
href: (0,
x.ij)(t, e.hash),
target: "_blank",
key: e.hash,
className: W.cu,
"data-tooltip-type": D.Ib.TEXT,
"data-dropdown-tooltip": e.name
}, r.createElement("div", null, (0,
g.t)("fullscreen.export.source")), r.createElement("div", {
className: W.Mo
}, r.createElement(E.yP, {
pxWidth: e.width,
pxHeight: e.height,
dataTestId: "assetPanel"
}), r.createElement("div", {
className: W.Om
}, "\xb7"), r.createElement("div", {
className: W.VZ,
"data-content-start": n,
"data-content-end": `.${i}`
}, e.name)))
}
), r.createElement(m.W.OptionTracked, {
key: "export",
className: W.HL,
onClick: et
}, r.createElement("div", null, (0,
g.t)("fullscreen.export.layer_export")), r.createElement("div", {
className: W.Mo
}, r.createElement(E.$R, {
assetInfo: e,
dataTestId: "assetPanel",
hideDot: !0
}), r.createElement("div", {
className: W.Om
}, "\xb7"), r.createElement("div", {
className: W.VZ
}, U.A3.format(G)))))))), ep && r.createElement(r.Fragment, null, r.createElement(V.uQ, {
property: ec ? "GIF" : "MP4",
formatter: X,
isDisabled: !0
}), r.createElement(B.K0, {
svg: K.A,
href: Q ?? "",
target: "_blank",
"data-tooltip-type": D.Ib.TEXT,
"data-tooltip": (0,
g.t)("fullscreen.export.export"),
disabled: !Q,
className: W.x6
})), el && !p && r.createElement(B.K0, {
svg: A,
onClick: ei,
"data-tooltip-type": D.Ib.TEXT,
"data-tooltip": eg ? (0,
g.t)("design_systems.instance_panel.view_library_in_community") : eh ? (0,
g.t)("dev_handoff.library.view") : (0,
g.t)("design_systems.instance_panel.go_to_main_component"),
className: W.x6
}))))
}
);
function ee() {
let e = (0,
i.d4)(e=>e.mirror.selectionProperties.assets)
, t = (0,
i.d4)(e=>(0,
N.sS)(e))
, n = (0,
N.q5)()
, a = !!n && (0,
L.Pe)(n)
, o = (0,
i.d4)(e=>e.saveAsState)
, l = (0,
i.d4)(e=>e.dropdownShown)
, d = (0,
O.J2)((0,
w.UK)().showGuids)
, c = (0,
i.d4)(e=>e.mirror.sceneGraphSelection)
, u = Object.values((0,
p.md)(P.O))
, m = r.useMemo(()=>{
let e = {};
for (let t of u)
if ("video" !== t.type && "gif" !== t.type && t.guids)
for (let n of t.guids)
n in e || (e[n] = []),
e[n].push(t);
return e
}
, [u])
, h = ({type: e})=>e & k.PW.ASSET_ICON ? 1 : e & k.PW.ASSET_COMPONENT ? 2 : 3
, f = r.useMemo(()=>s()(Object.values(e || {}), "hash").map(t=>({
...t,
duplicateGUIDs: Object.values(e || {}).filter(e=>e.hash === t.hash).map(({assetId: e})=>e)
})).sort((e,t)=>{
let n = h(e)
, r = h(t);
return n === r ? e.assetName.localeCompare(t.assetName) : n - r
}
), [e])
, {visibleItems: E, showMoreButton: y} = (0,
_.y)({
items: f,
getShowMoreLabel: e=>(0,
g.t)("dev_handoff.assets.show_more", {
count: e
}),
pageSize: 4,
shouldResetOnSelectionChange: !0
});
if (0 === E.length)
return null;
let b = Object.keys(c);
return r.createElement(F.VZ, {
hideHeader: A.z4.getIsExtension(),
title: (0,
g.t)("dev_handoff.assets"),
recordingKey: "assets"
}, E.map(e=>{
let n = e.instancesGUIDs || []
, i = b.some(e=>n.includes(e))
, s = m[e.duplicateGUIDs[0]] ?? [];
return r.createElement(Q, {
key: e.assetId,
assetInfo: e,
media: s,
openFileKey: t,
disabled: a,
showGuids: d,
saveAsState: o,
dropdownShown: l,
isSelected: i
})
}
), y)
}
}
,
746893: (e,t,n)=>{
"use strict";
n.d(t, {
FO: ()=>f,
Rk: ()=>_,
ev: ()=>g,
xb: ()=>h
});
var r = n(411855)
, i = n(188507)
, a = n(374626)
, o = n(378958)
, l = n(939863)
, s = n(785315)
, d = n(931828)
, c = n(507956)
, u = n(832637)
, p = n(812505)
, m = n(466641);
let _ = "dev_handoff_dismissed_vscode_extension_hint"
, h = "dev_handoff_dismissed_inspect_panel_plugins_hint";
function g() {
return (0,
c.LS)() ? null : r.createElement(u.u, {
className: m.A0,
idForTests: "hintVSCodeForFigma",
userFlag: _,
title: (0,
l.t)("dev_handoff.vscode.hint.title"),
iconComponent: r.createElement("div", {
className: m.zc
}, r.createElement(p.M, null)),
hintText: (0,
l.t)("dev_handoff.vscode.hint"),
hintLinkText: (0,
l.t)("dev_handoff.vscode.hint.link"),
hintLinkUrl: "https://marketplace.visualstudio.com/items?itemName=figma.figma-vscode-extension",
hintLinkOnNewLine: !0
})
}
function f() {
let e = (0,
c.LS)()
, [t,n] = (0,
a.fp)(s.H)
, p = (0,
i.wA)()
, _ = r.useCallback(()=>{
n(s._.PLUGIN),
p(d.b({
[h]: !0
}))
}
, [n, p]);
return e ? r.createElement(u.u, {
className: m.A0,
idForTests: "hintInspectPlugins",
userFlag: h,
title: (0,
l.t)("dev_handoff.inspect_panel.plugins_hint.title"),
hintText: r.createElement(r.Fragment, null, r.createElement("div", {
className: m._e
}, r.createElement("img", {
alt: "",
className: m.Kk,
src: "https://static.figma.com/uploads/aae0db2814117595e45cc509d52e79e7cc31333c"
}), r.createElement("div", {
className: m.Kk
}, r.createElement(o.f, null)), r.createElement("img", {
alt: "",
className: m.Kk,
src: "https://static.figma.com/uploads/ae3807b6d650b52da20879078b85a0df23ee056a"
})), r.createElement(l.Tx, {
id: "dev_handoff.inspect_panel.plugins_hint"
})),
hintLinkText: (0,
l.t)("dev_handoff.inspect_panel.plugins_hint.link"),
hintLinkOnClick: _,
hintLinkOnNewLine: !0
}) : null
}
}
,
118830: (e,t,n)=>{
"use strict";
n.d(t, {
K: ()=>s,
O: ()=>d
});
var r = n(411855)
, i = n(275725)
, a = n(852800)
, o = n(15859);
let l = {};
function s() {
var e;
for (let t of Object.getOwnPropertyNames(l)) {
let n = null == (e = l[t]) ? void 0 : e.url;
n && URL.revokeObjectURL(n),
delete l[t]
}
}
function d({assetId: e, thumbnailVersion: t, width: n, height: s, scale: d}) {
var c;
let u = function({assetId: e, width: t, height: n, scale: r}) {
return `${e}-${t}x${n}@${r}x`
}({
assetId: e,
width: n,
height: s,
scale: d
})
, [p,m] = r.useState(null == (c = l[u]) ? void 0 : c.url)
, _ = (0,
i.c6)(e);
return (r.useEffect(()=>{
let r = async()=>{
var r;
await (0,
o.Jr)().loadAllImagesUnder([e], a.MoD.NON_ANIMATED_ONLY, "handoff.assetPreview");
let[i,c] = a.Vzr.generateThumbnailForNode(e, n, s, d, {});
if (c.length > 0) {
let e = null == (r = null == l ? void 0 : l[u]) ? void 0 : r.url;
e && URL.revokeObjectURL(e);
let n = URL.createObjectURL(new Blob([c]));
l[u] = {
url: n,
version: t,
error: null
},
m(n)
}
}
, i = !!(null == l ? void 0 : l[u])
, c = i && l[u].version !== t
, p = i && !!l[u].error;
i && (!c || p) || r().catch(e=>{
l[u] = {
error: e
},
console.error(e)
}
)
}
, [e, s, d, n, u, t]),
p) ? {
url: p,
backgroundStyle: _
} : {
backgroundStyle: _
}
}
}
,
444736: (e,t,n)=>{
"use strict";
n.d(t, {
$R: ()=>f,
B7: ()=>E,
aI: ()=>b,
aT: ()=>y,
fk: ()=>v,
yP: ()=>g
});
var r = n(411855)
, i = n(188507)
, a = n(939863)
, o = n(393812)
, l = n(945099)
, s = n(92597)
, d = n(852800)
, c = n(618056)
, u = n(29680)
, p = n(335682)
, m = n(279702)
, _ = n(297281)
, h = n(239349);
function g({pxWidth: e, pxHeight: t, dataTestId: n}) {
let {unit: i} = (0,
s.gc)()
, a = (0,
l.sQ)() && i === d.tKW.SCALED
, o = e=>(e ?? 0).toLocaleString("en", {
maximumFractionDigits: 2
})
, c = o(e)
, u = o(t)
, p = r.createElement("span", {
"data-testid": `${n}Width`
}, c)
, m = r.createElement("span", {
"data-testid": `${n}Height`
}, u);
return r.createElement(r.Fragment, null, p, "\u2009x\u2009", m, r.createElement("span", {
"data-testid": `${n}Unit`
}, a ? " (px)" : ""))
}
function f({assetInfo: e, media: t, dataTestId: n, shouldShowTypeLabel: i, hideDot: a}) {
var o, l, s;
let d = (0,
h.mJ)((null == (o = e.instancesGUIDs) ? void 0 : o[0]) ?? e.assetId)
, c = (null == (l = null == d ? void 0 : d.size) ? void 0 : l.x) ?? 0
, u = (null == (s = null == d ? void 0 : d.size) ? void 0 : s.y) ?? 0;
if (t && t.length > 0) {
let e = t[0];
c = e.width,
u = e.height
}
return r.createElement(E, {
assetType: e.type,
pxWidth: c,
pxHeight: u,
dataTestId: n,
hideDot: a,
shouldShowTypeLabel: i
})
}
function E({assetType: e, pxWidth: t, pxHeight: n, dataTestId: i, hideDot: o, shouldShowTypeLabel: l}) {
let s = e & m.PW.ASSET_VIDEO ? (0,
a.t)("dev_handoff.assets.video") : e & m.PW.ASSET_GIF ? (0,
a.t)("dev_handoff.assets.gif") : e & m.PW.ASSET_IMAGE ? (0,
a.t)("dev_handoff.assets.image") : e & m.PW.ASSET_ICON ? (0,
a.t)("dev_handoff.assets.icon") : e & m.PW.ASSET_COMPONENT ? (0,
a.t)("dev_handoff.assets.instance") : void 0;
return r.createElement("span", null, l && s, !o && r.createElement(r.Fragment, null, "\xa0", "\xb7 "), r.createElement(g, {
pxWidth: t,
pxHeight: n,
dataTestId: i
}))
}
function y(e) {
var t;
let n = (0,
i.d4)(p.sS)
, a = (0,
u.eY)()
, [o,l] = r.useState(null);
if (o)
return o;
if (!(e.type & (m.PW.ASSET_GIF | m.PW.ASSET_VIDEO)))
return null;
let s = a.get(e.assetId);
if (!s)
return null;
let d = null == (t = (0,
c.N9)(null == s ? void 0 : s.fills)) ? void 0 : t.filter(e=>e.opacity > 0 && e.visible);
if (!d)
return null;
for (let e of d)
if (e.animatedImage || e.video) {
if (!n)
return null;
(0,
_.tW)({
paint: e,
fileKey: n
}).then(e=>{
l(e)
}
);
break
}
return o
}
function b(e) {
let t = (0,
h.uQ)()
, n = e ?? t;
return n ? (0,
o.ZC)(n) : m.PW.NOT_ASSET
}
function v(e) {
return e & (m.PW.ASSET_ICON | m.PW.ASSET_IMAGE | m.PW.ASSET_GIF | m.PW.ASSET_VIDEO)
}
}
,
275725: (e,t,n)=>{
"use strict";
n.d(t, {
CU: ()=>T,
IO: ()=>y,
c6: ()=>b
});
var r = n(411855)
, i = n(188507)
, a = n(568214)
, o = n(966712)
, l = n(444736)
, s = n(239349)
, d = n(168039)
, c = n(852800)
, u = n(341860)
, p = n(416095)
, m = n(284321)
, _ = n(49116)
, h = n(173454)
, g = n(279702)
, f = n(32067);
let E = e=>e.visible && !(0,
a.ty)(e.color);
function y(e) {
let t = r.useMemo(()=>new u.qo, [])
, n = function(e) {
let t = (0,
f.jY)()
, n = (0,
i.d4)(m.FZ)
, r = (0,
i.d4)(_.c5);
return (0,
p.NY)(e, t, n, r)
}(e)
, y = (0,
d.DP)()
, b = (0,
l.aI)(e);
return r.useMemo(()=>{
var r;
let i = (null == (r = null == n ? void 0 : n.containing_frame) ? void 0 : r.backgroundColor) ?? "";
(null == n ? void 0 : n.type) === h.PW.STATE_GROUP && n.fill_color && (i = n.fill_color);
let l = y && ("light" === y || "dark" === y) ? y : "dark"
, d = "light" === l ? "dark" : "light";
if (!e)
return i && !(0,
a.ty)(i) ? (0,
a.HD)(i) ? "dark" : "light" : l;
if ((0,
o.kc)().dt_component_bg_improvements) {
let t = c.w3z.getApproximateNodeColor(e);
if (t)
return (0,
a.BU)(t, l) ? d : l
}
if (i && !(0,
a.ty)(i))
return (0,
a.HD)(i) ? "dark" : "light";
let u = function e(t, n, r) {
let i = (0,
s.Zl)(t, n);
if (!i)
return;
let o = [];
if (i.visible) {
if (r) {
o.push(...i.strokePaints.data);
let e = i.fillPaints.data.filter(E);
if (e.length)
return (0,
a.AW)(e)
} else {
let e = [...i.fillPaints.data, ...i.strokePaints.data].filter(E);
if (e.length)
return (0,
a.AW)(e)
}
}
for (let n of i.childrenGuids) {
let i = e(t, n, r);
if (i)
return i
}
if (r)
return (0,
a.AW)(o)
}(t, e, !(b & g.PW.ASSET_ICON));
return u && (0,
a.BU)(u, y) ? d : l
}
, [b, e, n, t, y])
}
function b(e) {
return T(y(e))
}
let v = {
background: "#383838"
}
, I = {
background: "#f5f5f5"
};
function T(e) {
return "dark" === e ? v : I
}
}
,
666930: (e,t,n)=>{
"use strict";
n.d(t, {
Bv: ()=>L,
XX: ()=>k,
iX: ()=>P,
si: ()=>C,
t7: ()=>O,
wS: ()=>N,
x9: ()=>R
});
var r = n(411855)
, i = n(188507)
, a = n(752553)
, o = n(515009)
, l = n(987918)
, s = n(939863)
, d = n(44892)
, c = n(852800)
, u = n(848661)
, p = n(341860)
, m = n(29680)
, _ = n(335682)
, h = n(691205)
, g = n(656012)
, f = n(273226)
, E = n(510879)
, y = n(107244)
, b = n(958317)
, v = n(835808)
, I = n(731262)
, T = n(239349);
let S = h.M4.Query({
fetch: async({componentKey: e})=>{
try {
let t = await g.Z.getLibraryComponentV2Destination({
componentKey: e
});
if (!t || !t.data || !t.data.meta)
return null;
return {
nodeId: t.data.meta.node_id,
fileKey: t.data.meta.file_key,
component: t.data.meta.component,
componentSet: t.data.meta.component_set
}
} catch (e) {
return null
}
}
,
enabled: e=>e.enabled
})
, w = h.M4.Query({
fetch: async({statusResult: e})=>{
if (!e || !e.componentKey || !e.canvasUrl)
return {};
let t = e.isVariant ? e.dataStateGroupId : e.dataComponentId
, n = e.dataStateGroupId ?? null
, r = e.dataStorageKey
, i = await d.Eo.getCanvas({
canvas_url: e.canvasUrl
});
if (!i)
return {};
let a = c.glU.loadDetachedComponent(t ?? "", r, i, n);
return a ? {
result: {
...e,
dataLocation: "temp-scene",
dataComponentId: a
}
} : {}
}
,
enabled: e=>e.enabled
})
, A = r.createContext({
status: "loading"
});
function C({children: e}) {
let t = function() {
let e = (0,
T.VW)()
, t = (0,
i.d4)(_.sS)
, n = !((null == e ? void 0 : e.type) === "SYMBOL" || (null == e ? void 0 : e.type) === "INSTANCE") && (null == e ? void 0 : e.detachedInfo) || void 0
, s = !!n
, d = !!(null == n ? void 0 : n.componentKey)
, u = d ? {
componentKey: (0,
o.sg)(n.componentKey),
enabled: !0
} : {
componentKey: (0,
o.sg)(""),
enabled: !1
}
, [p] = (0,
a.IT)(S(u))
, m = null == p ? void 0 : p.data
, h = s && d && "loaded" === p.status && m && m.component
, g = (null == m ? void 0 : m.nodeId) ?? l.AD
, f = (null == m ? void 0 : m.fileKey) ?? ""
, E = f !== t
, y = null == m ? void 0 : m.component
, b = null == m ? void 0 : m.componentSet
, v = (null == y ? void 0 : y.component_key) ?? (null == n ? void 0 : n.componentKey) ?? ""
, I = (null == b ? void 0 : b.key) ?? v ?? ""
, A = !!(null == n ? void 0 : n.isVariant) || !!(null == m ? void 0 : m.componentSet)
, C = E ? c.w3z.getGuidByComponentKey(I, v) : {
nodeId: null == m ? void 0 : m.nodeId,
parentId: b ? b.node_id ?? l.AD : l.AD,
inDetachedComponentsScene: !1
}
, N = h && E && (null == C ? void 0 : C.nodeId) === l.AD
, O = {
nodeId: g,
fileKey: f,
componentKey: v,
isVariant: A,
isExternal: E,
thumbnailUrl: null == y ? void 0 : y.thumbnail_url,
descriptionComponent: (null == y ? void 0 : y.description_rt) ?? (null == y ? void 0 : y.description),
descriptionStateGroup: (null == b ? void 0 : b.description_rt) ?? (null == b ? void 0 : b.description),
dataLocation: N || (null == C ? void 0 : C.inDetachedComponentsScene) ? "temp-scene" : "scene",
dataComponentId: N ? (null == y ? void 0 : y.node_id) ?? "" : C.nodeId ?? "",
dataStateGroupId: N ? null == b ? void 0 : b.node_id : C.parentId,
dataStorageKey: I,
canvasUrl: A ? null == b ? void 0 : b.canvas_url : null == y ? void 0 : y.canvas_url
}
, L = N && O && O.canvasUrl ? {
statusResult: O,
enabled: !0
} : {
enabled: !1
}
, [R] = (0,
a.IT)(w(L));
return r.useMemo(()=>s ? d ? "errors" === p.status || N && "errors" === R.status ? {
status: "errors"
} : h ? {
status: N ? "downloading" : "loaded",
result: O
} : "loaded" !== p.status || m && m.component ? {
status: "loading"
} : {
status: "disabled"
} : {
status: "loaded",
result: {
nodeId: n.symbolId,
fileKey: t || "",
isVariant: A,
dataLocation: "scene",
dataComponentId: n.symbolId,
dataStorageKey: "",
isExternal: !1,
componentKey: n.componentKey
}
} : {
status: "disabled"
}, [s, null == n ? void 0 : n.symbolId, null == n ? void 0 : n.componentKey, A, t, d, p.status, N, R.status, m, h])
}();
return r.createElement(A.Provider, {
value: t
}, e)
}
function N() {
return r.useContext(A) || {
status: "errors"
}
}
function O(e, t) {
if ("loaded" !== e.status || !e.result.dataComponentId)
return {
detachedCompPropsDefs: [],
detachedVariantProps: []
};
let n = e.result.dataComponentId
, r = e.result.dataStateGroupId && "temp-scene" === e.result.dataLocation ? e.result.dataStateGroupId : (0,
f.Yi)([n], t) ?? (0,
y.nM)(t, [n])
, i = e.result.dataComponentId ? c.glU.getComponentPropsForDetachedComponent(e.result.dataStorageKey, e.result.componentKey ?? "", e.result.dataComponentId) : void 0;
if (!i)
return {
detachedCompPropsDefs: [],
detachedVariantProps: []
};
let a = (0,
f.aO)(n, i);
return r ? {
detachedCompPropsDefs: [...(0,
b.Jm)(r, i), ...a],
detachedVariantProps: function(e, t, n) {
var r;
if (!n)
return [];
let i = null == (r = n[t]) ? void 0 : r.stateGroupVariantProps;
if (!i)
return [];
let a = (0,
E.s)(n, [e], i.propertySortOrder);
return (i.propertySortOrder || []).map(e=>{
let t = a[e] || I.xJ;
return (0,
u.gl)(t) ? {
name: e,
value: (0,
s.t)("inspect_panel.property.mixed"),
type: c.J0O.VARIANT
} : {
name: e,
value: t,
type: c.J0O.VARIANT
}
}
)
}(n, r, i)
} : {
detachedCompPropsDefs: a,
detachedVariantProps: []
}
}
function L(e, t) {
let n = N()
, r = (0,
m.eY)();
if ("loaded" === n.status) {
let e = "temp-scene" === n.result.dataLocation
, t = n.result.dataComponentId ?? ""
, i = e ? n.result.dataStateGroupId : (0,
f.Yi)([t], r) ?? (0,
y.nM)(r, [t])
, a = e ? R(t) : r.get(t);
return n.result.isVariant && i ? {
backingSymbol: a,
backingStateGroup: e ? R(i) : r.get(i)
} : {
backingSymbol: a,
backingStateGroup: null
}
}
return {
backingSymbol: e,
backingStateGroup: t
}
}
function R(e) {
return new p.qo(p.ju.DETACHED).get(e)
}
function P(e, t) {
let n = N();
return {
backingSymbolDescription: ("loaded" === n.status && n.result.isExternal && n.result.descriptionComponent ? n.result.descriptionComponent : void 0) ?? e,
parentDescription: ("loaded" === n.status && n.result.isExternal && n.result.descriptionStateGroup ? n.result.descriptionStateGroup : void 0) ?? t
}
}
function k() {
let e = (0,
m.eY)()
, t = N()
, [n,r] = (0,
v.mD)();
if ("loaded" === t.status) {
let n = t.result.dataComponentId
, r = t.result.dataStateGroupId;
return "temp-scene" === t.result.dataLocation ? [R(n), r ? R(r) : null] : [e.get(n), r ? e.get(r) : null]
}
return [n, r]
}
}
,
413145: (e,t,n)=>{
"use strict";
function r(e) {
return null != e
}
n.d(t, {
t: ()=>r
})
}
,
239349: (e,t,n)=>{
"use strict";
n.d(t, {
NM: ()=>d,
RJ: ()=>a,
Tv: ()=>l,
VW: ()=>s,
Zl: ()=>u,
mJ: ()=>c,
uQ: ()=>o
});
var r = n(188507)
, i = n(32067);
function a(e) {
let t = Object.keys(e);
return 1 !== t.length ? null : t[0] || null
}
function o() {
return (0,
r.d4)(e=>a(e.mirror.sceneGraphSelection))
}
function l() {
return (0,
r.d4)(e=>Object.keys(e.mirror.sceneGraphSelection))
}
function s() {
let e = o();
return u((0,
i.jY)(), e)
}
function d() {
return (0,
r.d4)(e=>{
let t = Object.keys(e.mirror.sceneGraphSelection);
return t.length > 1 ? t : null
}
)
}
function c(e) {
return u((0,
i.jY)(), e)
}
function u(e, t) {
return t ? e.get(t) : null
}
}
,
843245: (e,t,n)=>{
"use strict";
n.d(t, {
M4: ()=>c,
Nf: ()=>u,
lA: ()=>d,
ro: ()=>p
});
var r = n(188507);
n(852800);
var i = n(29680);
n(335682),
n(416095),
n(49116);
var a = n(234945)
, o = n(32067)
, l = n(666930)
, s = n(239349);
function d() {
let e = (0,
o.jY)()
, t = (0,
l.wS)()
, n = (0,
r.d4)(e=>e.mirror.selectionProperties.symbolGUIDsBackingSelectionContainer)
, i = (0,
r.d4)(e=>e.mirror.selectionProperties.numSelected);
if ("loaded" === t.status && t.result.dataComponentId)
return "temp-scene" === t.result.dataLocation && t.result.componentKey ? (0,
l.x9)(t.result.dataComponentId) : (0,
s.Zl)(e, t.result.dataComponentId);
if (1 !== i || !n)
return null;
let a = Object.keys(n)[0];
return (0,
s.Zl)(e, a)
}
function c() {
let e = (0,
o.jY)()
, t = (0,
l.wS)();
return function e(t, n, r) {
let i = (0,
s.Zl)(t, n);
return i ? "SYMBOL" === i.type || "INSTANCE" === i.type || i.isStateGroup || i.detachedInfo ? i : i.parentGuid ? e(t, i.parentGuid) : null : null
}(e, (0,
r.d4)(a.$J), t)
}
function u() {
let e = (0,
s.VW)()
, t = (0,
r.d4)(e=>e.mirror.appModel.currentPage)
, n = (0,
i.eY)();
return (null == e ? void 0 : e.guid) ? n.developerFriendlyIdFromGuid(null == e ? void 0 : e.guid) : t
}
function p() {
let e = (0,
s.VW)()
, t = (0,
l.wS)()
, n = t && ("loaded" === t.status || "loading" === t.status || "downloading" === t.status);
return (null == e ? void 0 : e.type) === "SYMBOL" || (null == e ? void 0 : e.type) === "INSTANCE" || (null == e ? void 0 : e.isStateGroup) || n
}
}
,
470669: (e,t,n)=>{
"use strict";
n.d(t, {
NH: ()=>I,
V0: ()=>v,
ls: ()=>T
});
var r = n(411855)
, i = n(109388)
, a = n(188507)
, o = n(939863)
, l = n(308977)
, s = n(979385)
, d = n(256975)
, c = n(544818)
, u = n(225266)
, p = n(738269)
, m = n(318812)
, _ = n(694687)
, h = n(376485)
, g = n(498606)
, f = n(978527)
, E = n(206074)
, y = n(538697)
, b = n(863193);
function v({codeLanguage: e, onChange: t, shouldHideLanguagesWithNoAltUnitSupport: n, onlyShowFirstPartyLanguages: r, showAddInsteadOfBrowse: i, addCodegenPluginCallback: o, currentSavedCodeLanguage: s}) {
let d = (0,
l.AC)(e)
, u = (0,
l.Pt)(d)
, p = (0,
_.sZ)()
, m = (0,
a.d4)(e=>e.whitelistedPlugins)
, g = (0,
h.ow)(d, m, p) ? e : {
type: "first-party",
id: "WEB"
}
, f = (0,
c.Z)({
codeLanguage: g,
onChange: t,
shouldHideLanguagesWithNoAltUnitSupport: n,
onlyShowFirstPartyLanguages: r,
formatter: u,
showAddInsteadOfBrowse: i,
addCodegenPluginCallback: o,
currentSavedCodeLanguage: s
});
return {
codeLanguage: g,
onCodeLanguageChange: t,
codeLanguageOptions: f,
activeCodegenPlugin: d,
formatter: u
}
}
function I({onlyShowFirstPartyLanguages: e, shouldHideLanguagesWithNoAltUnitSupport: t, dropdownId: n, onDropdownHidden: i, disabled: a}) {
let o = v({
onlyShowFirstPartyLanguages: e,
codeLanguage: (0,
l.v4)(),
onChange: (0,
s.gB)(),
shouldHideLanguagesWithNoAltUnitSupport: t
});
return r.createElement(T, {
dropdownId: n,
onDropdownHidden: i,
disabled: a,
codeLanguageApi: o
})
}
function T({dropdownId: e, disabled: t, codeLanguageApi: n, onDropdownHidden: l, parentElementId: s}) {
let c = (0,
d._I)()
, {codeLanguage: _, activeCodegenPlugin: h, formatter: v, codeLanguageOptions: I} = n
, T = h && "first-party" !== _.type ? r.createElement(f.d, {
plugin: h
}) : null
, S = (0,
a.wA)();
r.useEffect(()=>S(u.aq()), [S]);
let w = (0,
m.U)()
, A = r.useRef(null)
, C = (null == w ? void 0 : w.type) === e;
return r.createElement("div", {
className: b.aD,
"data-tooltip": (0,
o.t)("dev_handoff.code.language"),
"data-tooltip-type": g.Ib.TEXT,
"data-tooltip-show-above": !0
}, r.createElement("div", {
className: b.lj
}, r.createElement(y.uQ, {
formatter: v,
property: _,
icon: T,
onClick: ()=>{
C ? S(p.oB()) : c && S(p.j7({
type: e
}))
}
,
inputClassName: b.UD,
ref: A,
dataTestId: "code_language_dropdown",
isDisabled: t
})), C && !t && A.current && (0,
i.createPortal)(r.createElement("div", {
className: b.aD
}, r.createElement(E.j, {
items: I,
onSelectItem: e=>{
e.callback && e.callback("", null, S)
}
,
dispatch: S,
parentRect: A.current.getBoundingClientRect(),
showPoint: !1,
lean: "right",
leanPadding: 8,
alwaysShowCheckMarkOffset: !0,
onDropdownHidden: l,
activatePathOnMount: "local-plugin" !== _.type ? [v.format(_)] : [I[0].displayText]
})), document.getElementById(s || "dev-handoff-inspect-panel")))
}
}
,
370934: (e,t,n)=>{
"use strict";
n.d(t, {
$n: ()=>p,
D8: ()=>g,
GL: ()=>u,
K6: ()=>_,
ZA: ()=>h,
dW: ()=>E,
n_: ()=>f,
zZ: ()=>m,
zq: ()=>d
});
var r = n(38329)
, i = n(308977)
, a = n(852800)
, o = n(843495)
, l = n(376485)
, s = n(638311);
let d = [a.tKW.PIXEL, a.tKW.SCALED]
, c = [i.MT];
function u(e) {
return (0,
l.ZQ)(e) ? `${e.localFileId}` : `${e.plugin_id}`
}
function p(e, t) {
let n = (0,
l.ZQ)(e) ? "local-plugin" : "published-plugin"
, i = u(e);
if (t)
return {
type: n,
id: i,
pluginLanguage: t.value
};
let a = r.D.getState().mirror.appModel.devHandoffCodeLanguage
, o = (0,
s.m)(e).map(({value: e})=>e);
return a.id === i && "first-party" !== a.type && o.includes(a.pluginLanguage) ? a : {
type: n,
id: i,
pluginLanguage: o[0] ?? ""
}
}
function m(e, t) {
var n;
return e ? ((null == (n = e.manifest) ? void 0 : n.codegenPreferences) ?? []).filter(e=>{
var n;
return !(null == t ? void 0 : t.value) || !("includedLanguages"in e) || (null == (n = e.includedLanguages) ? void 0 : n.includes(t.value))
}
) : []
}
function _(e, t) {
return m(e, t).find(l.MP) ?? null
}
function h(e, t) {
if (!e)
return !1;
if ("first-party" === e.type)
return !c.includes(e.id);
if (!t)
return !1;
let n = (0,
s.X)(t, e.pluginLanguage);
return !!_(t, n)
}
function g(e, t, n) {
var r;
let i = {
...e,
codeExtensionPreferences: {
...e.codeExtensionPreferences,
[t.id]: {
...(null == (r = e.codeExtensionPreferences) ? void 0 : r[t.id]) || {},
...n
}
}
};
o.aB(i)
}
function f(e, t) {
var n;
let i = u(e)
, o = r.D.getState().mirror.appModel.devHandoffPreferences.codeExtensionPreferences[i] ?? {}
, s = {}
, d = _(e, t)
, c = !1
, p = !1;
"unit"in o && "scaleFactor"in o || (s.unit = (null == d ? void 0 : d.default) ? a.tKW.SCALED : a.tKW.PIXEL,
s.scaleFactor = (null == d ? void 0 : d.defaultScaleFactor) ? d.defaultScaleFactor : 1,
c = !0,
p = !0),
t || d || o.unit !== a.tKW.SCALED || (s.unit = a.tKW.PIXEL,
s.scaleFactor = 1,
c = !0,
p = !0),
c || !t || o.unit !== a.tKW.SCALED || d || (s.unit = d ? a.tKW.SCALED : a.tKW.PIXEL,
c = !0);
let h = !1
, g = m(e, t).filter(l.ZV)
, f = o.customSettings ?? {}
, E = {};
for (let e of g) {
let t = f[e.propertyName];
if (t && e.options.some(e=>e.value === t)) {
E[e.propertyName] = t;
continue
}
E[e.propertyName] = (null == (n = e.options.find(e=>e.isDefault)) ? void 0 : n.value) ?? e.options[0].value,
h = !0
}
(h || Object.keys(f).length !== Object.keys(E).length) && (s.customSettings = E);
let y = {
...o,
...s
};
return {
shouldUpdateCustomSettings: !!s.customSettings,
shouldUpdateScaleFactor: p,
shouldUpdateAltUnit: c,
preferences: {
...y,
scaleFactor: y.unit === a.tKW.PIXEL ? 1 : y.scaleFactor
}
}
}
function E(e, t) {
let n = null
, {shouldUpdateCustomSettings: i, shouldUpdateAltUnit: a, shouldUpdateScaleFactor: o, preferences: l} = f(e, null);
t && ({shouldUpdateAltUnit: a, preferences: n} = f(e, t),
a && (l.unit = n.unit));
let s = {};
return i && (s.customSettings = l.customSettings),
o && (s.scaleFactor = l.scaleFactor),
a && (s.unit = l.unit),
Object.keys(s).length > 0 && g(r.D.getState().mirror.appModel.devHandoffPreferences, p(e), s),
n ?? l
}
}
,
945099: (e,t,n)=>{
"use strict";
n.d(t, {
$h: ()=>s,
Ar: ()=>c,
a9: ()=>l,
hq: ()=>o,
sQ: ()=>d
});
var r = n(374626)
, i = n(939863)
, a = n(594901);
let o = (0,
r.E3)("dev-mode-code-or-properties", "code")
, l = new class {
format(e) {
switch (e) {
case "code":
return (0,
i.t)("inspect_panel.code.code");
case "properties":
return (0,
i.t)("fullscreen.properties_panel.properties")
}
}
}
;
function s() {
return (0,
r.fp)(o)
}
function d() {
return "code" === (0,
r.md)(o)
}
function c() {
return (0,
a.AF)() ? ["code", "properties"] : ["properties"]
}
}
,
909999: (e,t,n)=>{
"use strict";
n.d(t, {
LO: ()=>S,
Rg: ()=>T,
j6: ()=>w
});
var r = n(411855)
, i = n(188507)
, a = n(368832)
, o = n(271779)
, l = n(939863)
, s = n(865618)
, d = n(308977)
, c = n(470669)
, u = n(92597)
, p = n(662275)
, m = n(973149)
, _ = n(318812)
, h = n(237870)
, g = n(205135)
, f = n(538697)
, E = n(585878)
, y = n(162419);
let b = new m.KD({
min: .1
})
, v = [3, 2, 1, .5, 1 / 3]
, I = new class {
parse(e) {
return "1/3" === e ? 3 : "1/2" === e ? 2 : "2" === e || "3" === e ? 1 / Number.parseInt(e) : 1
}
format(e=1) {
return "0.3" === e.toFixed(1) ? "3" : "0.5" === e.toFixed(1) ? "2" : 2 === e || 3 === e ? `1/${e}` : (0,
l.t)("dev_handoff.alternative_units.no_scale")
}
}
;
function T({scaleFactor: e, onChange: t, onDropdownHidden: n, className: a, inputClassName: o}) {
let l = (0,
i.wA)()
, s = (0,
_.U)();
return r.createElement(f.l6, {
dispatch: l,
property: e,
id: "SCALE_FACTOR",
onChange: t,
formatter: I,
dropdownShown: s,
className: a,
inputClassName: o,
dropdownWidth: "auto",
autoFocus: !0,
onDropdownHidden: n
}, v.map(t=>r.createElement(f.c$, {
key: t,
value: t,
selected: t === e,
fullWidth: !0
})))
}
function S({codeLanguage: e}) {
let t = (0,
u.$s)(e);
switch (e.id) {
case d.p:
case d.Ap:
return r.createElement(l.Tx, {
id: "dev_handoff.alternative_units.description_scale_factor_ios"
});
case d.LK:
case d.NU:
return r.createElement(l.Tx, {
id: "dev_handoff.alternative_units.description_scale_factor_android"
});
case d.uz:
return r.createElement(l.Tx, {
id: "dev_handoff.alternative_units.description_scale_factor_web"
})
}
return r.createElement(l.Tx, {
id: "dev_handoff.alternative_units.description_scale_factor_third_party",
unitName: t
})
}
let w = (0,
h.Ju)(function() {
var e;
let t = (0,
d.v4)()
, [n,m] = r.useState(t)
, _ = (0,
u.aq)(n)
, h = (0,
u.gc)(n.id)
, f = (0,
u.Bs)()
, v = r.useRef(null)
, I = (0,
i.wA)()
, w = r.useCallback(e=>{
e && f(n, _, {
scaleFactor: e
})
}
, [n, f, _])
, A = "first-party" === n.type && (n.id === d.LK || n.id === d.NU || n.id === d.p || n.id === d.Ap)
, C = "first-party" === n.type && (n.id === d.uz || n.id === d.A0)
, N = (0,
a.A)(()=>{
var e;
C && f(n, _, {
customSettings: {
onlyText: "true" === ((null == (e = h.customSettings) ? void 0 : e.onlyText) || "false") ? "false" : "true"
}
})
}
, 250)
, O = r.useCallback(()=>{
var e;
null == (e = v.current) || e.focus()
}
, [])
, L = (null == h ? void 0 : h.scaleFactor) ?? 1
, R = (0,
c.V0)({
onChange: m,
codeLanguage: n,
shouldHideLanguagesWithNoAltUnitSupport: !0
});
return r.createElement(E.XV, {
title: (0,
l.t)("dev_handoff.alternative_units.unit_settings_modal_title"),
headerSize: "small",
headerClassName: y.Hc,
onClose: ()=>I((0,
p.AS)()),
closeOnEsc: !0,
closeOnEnter: !0,
customButton: r.createElement(c.ls, {
dropdownId: "DEV_HANDOFF_MODAL_CODE_LANGUAGE_DROPDOWN",
onDropdownHidden: O,
codeLanguageApi: R
}),
minWidth: 340,
maxWidth: 340
}, r.createElement(o.i, {
displayAs: o.C.Block
}, r.createElement("div", {
className: y.jE,
tabIndex: -1,
ref: v,
"data-testid": "scale-factor-modal-content"
}, A ? r.createElement("div", {
className: y.iF
}, r.createElement(T, {
scaleFactor: L,
onChange: w,
onDropdownHidden: O,
className: y.j8
}), r.createElement("div", {
className: y.rc
})) : r.createElement("div", {
className: y.hq
}, r.createElement(g.Q7, {
className: y.IC,
property: L,
formatter: b,
onChange: w,
onBlur: O,
autoFocus: !0
})), r.createElement("div", {
className: y.A3
}, r.createElement(S, {
codeLanguage: n
})), C && r.createElement(s.S, {
checked: (null == (e = h.customSettings) ? void 0 : e.onlyText) === "true",
label: r.createElement(l.Tx, {
id: "dev_handoff.alternative_units.only_apply_rem_on_text",
rem: r.createElement("span", {
className: y.D0
}, r.createElement(l.Tx, {
id: "dev_handoff.alternative_units.rem_unit"
}))
}),
onChange: N
}))))
}, "SCALE_FACTOR_MODAL")
}
,
92597: (e,t,n)=>{
"use strict";
n.d(t, {
$s: ()=>L,
Bs: ()=>v,
Em: ()=>N,
Ke: ()=>F,
QO: ()=>w,
RH: ()=>I,
SF: ()=>M,
YE: ()=>x,
aq: ()=>C,
b1: ()=>R,
fb: ()=>T,
gc: ()=>y,
ie: ()=>D,
lX: ()=>b,
qM: ()=>A,
wA: ()=>k,
wQ: ()=>P
});
var r = n(411855)
, i = n(188507)
, a = n(212046)
, o = n.n(a)
, l = n(38329)
, s = n(939683)
, d = n(939863)
, c = n(308977)
, u = n(370934)
, p = n(756085)
, m = n(852800)
, _ = n(779709)
, h = n(960628)
, g = n(376485)
, f = n(638311);
let E = {
scaledWeb: "rem",
scaledIOS: "pt",
scaledAndroid: "dp",
pixel: "px"
};
function y(e) {
let t = (0,
c.v4)().id
, n = (0,
i.d4)(e=>e.mirror.appModel.devHandoffPreferences)
, a = e ?? t;
return (0,
r.useMemo)(()=>{
var e;
return (null == (e = n.codeExtensionPreferences) ? void 0 : e[a]) ?? {}
}
, [n, a])
}
function b() {
var e, t, n, r, i;
let a = null == (t = null == (e = l.D.getState()) ? void 0 : e.mirror) ? void 0 : t.appModel
, o = (null == (n = null == a ? void 0 : a.devHandoffCodeLanguage) ? void 0 : n.id) ?? "";
return (null == (i = null == (r = null == a ? void 0 : a.devHandoffPreferences) ? void 0 : r.codeExtensionPreferences) ? void 0 : i[o]) ?? {}
}
function v() {
let e = (0,
i.d4)(e=>e.mirror.appModel.devHandoffPreferences)
, t = (0,
s.U)();
return (0,
r.useCallback)((n,r,i)=>{
let {customSettings: a, ...l} = i;
o()(l) || (void 0 !== l.unit && (l.unit = l.unit === m.tKW.PIXEL ? E.pixel : O(n, r)),
t("Dev Mode Preference Changed", {
languageType: n.type,
languageId: n.id,
...l
})),
(0,
u.D8)(e, n, i)
}
, [e, t])
}
function I(e) {
var t;
let n = (0,
c.v4)()
, r = e ?? n
, i = (null == (t = y(r.id)) ? void 0 : t.unit) ?? m.tKW.PIXEL;
return "first-party" === r.type && r.id === c.MT ? m.tKW.PIXEL : i
}
function T(e) {
let t = (0,
c.v4)()
, n = e ?? t
, {unit: r=m.tKW.PIXEL, scaleFactor: i=1} = y(n.id);
return "first-party" === n.type && n.id === c.MT ? 1 : r === m.tKW.SCALED ? i : 1
}
let S = ({codeLanguage: e, preferences: t, options: n={}})=>{
var r;
return !!_.z4.shouldAvoidScaling() || "first-party" === e.type && (e.id === c.uz || e.id === c.A0) && (null == (r = t.customSettings) ? void 0 : r.onlyText) === "true" && !(null == n ? void 0 : n.isTextProperty)
}
;
function w(e, t, n=e=>e, r) {
let i = (0,
c.v4)()
, a = e ?? i
, o = T(a)
, l = y(a.id);
return void 0 === t ? void 0 : n(1 === o || 0 === o || S({
codeLanguage: a,
preferences: l,
options: r
}) ? t : t / o)
}
function A(e, t, n, r) {
let i = (0,
c.v4)()
, a = e ?? i
, o = w(a, t, n, r)
, l = D(a)
, s = y(a.id);
return void 0 === o ? void 0 : S({
codeLanguage: a,
preferences: s,
options: r
}) ? `${o}${E.pixel}` : `${o}${l}`
}
function C(e) {
let {id: t, type: n} = e;
return (0,
p.S0)(t, {
searchLocalPlugins: "local-plugin" === n,
searchSavedPlugins: "published-plugin" === n,
searchPublishedPlugins: "published-plugin" === n,
searchRecentPlugins: "published-plugin" === n
})
}
function N(e) {
let t = (0,
c.v4)()
, n = C(e ?? t);
return (0,
u.ZA)(e ?? t, n)
}
function O(e, t) {
let {id: n, type: r, pluginLanguage: i} = e;
if ("first-party" !== r && t) {
let e = (0,
f.X)(t, i)
, n = (0,
u.K6)(t, e);
if (n)
return n.scaledUnit
}
switch (n) {
case c.uz:
return E.scaledWeb;
case c.p:
case c.Ap:
return E.scaledIOS;
case c.LK:
case c.NU:
return E.scaledAndroid;
default:
return E.scaledWeb
}
}
function L(e) {
let t = C(e);
return O(e, t)
}
function R(e) {
switch (e) {
case c.uz:
return (0,
d.t)("dev_handoff.alternative_units.rem_unit");
case c.LK:
case c.NU:
return (0,
d.t)("dev_handoff.alternative_units.dp_unit");
case c.p:
case c.Ap:
return (0,
d.t)("dev_handoff.alternative_units.pt_unit");
default:
return (0,
d.t)("dev_handoff.alternative_units.rem_unit")
}
}
function P(e) {
let t = (0,
c.v4)();
return k(e ?? t)
}
function k(e) {
let t = L(e);
return "first-party" === e.type ? R(e.id) : t
}
function D(e) {
let t = (0,
c.v4)()
, n = e ?? t
, r = I(n)
, i = L(n);
return r === m.tKW.PIXEL ? E.pixel : i
}
function M({localCodeLanguage: e, includeActions: t=!0, includeSelectSettings: n=!0}={}) {
let i = (0,
c.v4)()
, a = e ?? i
, o = (0,
c.AC)(a)
, l = y(a.id)
, s = v();
return r.useMemo(()=>F({
includeActions: t,
includeSelectSettings: n,
codeLanguage: a,
plugin: o,
codeExtensionPreferences: l,
onChangePreferences: s
}), [t, n, a, o, l, s])
}
function F({includeActions: e=!1, includeSelectSettings: t=!0, codeLanguage: n, plugin: r, codeExtensionPreferences: i, onChangePreferences: a}) {
let o = [];
if (!r || "first-party" === n.type || (0,
u.GL)(r) !== n.id)
return o;
for (let l of (0,
u.zZ)(r, (0,
f.X)(r, n.pluginLanguage)))
e && (0,
g.Wt)(l) && o.push({
name: l.propertyName,
displayText: (null == l ? void 0 : l.label) || l.propertyName,
callback: ()=>h.d1.codegenPreferencesChange({
propertyName: l.propertyName
}),
recordingKey: l.propertyName
}),
t && (0,
g.ZV)(l) && o.push({
name: l.propertyName,
recordingKey: l.propertyName,
displayText: (null == l ? void 0 : l.label) ?? l.propertyName,
children: l.options.map((e,t)=>{
var o, s;
return {
name: e.value,
displayText: e.label,
isChecked: (null == (o = null == i ? void 0 : i.customSettings) ? void 0 : o[l.propertyName]) ? (null == (s = null == i ? void 0 : i.customSettings) ? void 0 : s[l.propertyName]) === e.value : 0 === t,
callback: ()=>a(n, r, {
customSettings: {
...null == i ? void 0 : i.customSettings,
[l.propertyName]: e.value
}
}),
recordingKey: e.value
}
}
)
});
return o
}
function x() {
let e = (0,
c.v4)()
, t = (0,
c.QN)();
r.useEffect(()=>{
if (!t)
return;
let n = e.pluginLanguage;
n && (0,
u.dW)(t, (0,
f.X)(t, n))
}
, [e, t])
}
}
,
581250: (e,t,n)=>{
"use strict";
n.d(t, {
Q: ()=>d
});
var r = n(308977)
, i = n(979385)
, a = n(470669)
, o = n(945099)
, l = n(92597)
, s = n(621856);
function d() {
let[e,t] = (0,
o.$h)()
, n = (0,
l.Em)()
, d = (0,
s.q)()
, c = (0,
l.gc)()
, u = (0,
r.v4)()
, p = (0,
i.gB)()
, m = (0,
a.V0)({
codeLanguage: u,
onChange: p
})
, _ = (0,
o.Ar)();
return {
inspectionMode: _.find(t=>t === e) || _[0],
setInspectionMode: t,
supportsAlternativeUnits: n,
preferenceOptions: d,
preferences: c,
codeLanguageApi: m,
inspectionModes: _
}
}
}
,
621856: (e,t,n)=>{
"use strict";
n.d(t, {
q: ()=>_
});
var r = n(411855)
, i = n(188507)
, a = n(966712)
, o = n(939863)
, l = n(308977)
, s = n(370934)
, d = n(909999)
, c = n(92597)
, u = n(662275)
, p = n(852800)
, m = n(656399);
function _(e) {
let t = (0,
c.SF)()
, n = function(e) {
let t = (0,
l.v4)()
, n = e ?? t
, a = (0,
l.AC)(n)
, m = (0,
c.wQ)(n)
, _ = (0,
c.Em)(n)
, h = (0,
c.gc)(n.id)
, g = (0,
c.Bs)()
, f = (0,
i.wA)();
return r.useMemo(()=>{
let e = [];
if (!_)
return e;
let t = (null == h ? void 0 : h.unit) || p.tKW.PIXEL;
return e.push({
displayText: (0,
o.t)("dev_handoff.alternative_units.dimension_unit"),
header: !0
}, ...s.zq.map(e=>{
let r = e === p.tKW.PIXEL ? (0,
o.t)("dev_handoff.alternative_units.pixel_unit") : m;
return {
name: e.toString(),
displayText: r,
isChecked: t === e,
callback: ()=>g(n, a, {
unit: e
}),
recordingKey: e === p.tKW.PIXEL ? "pixel" : "scaled"
}
}
), {
displayText: (0,
o.t)("dev_handoff.alternative_units.unit_settings_menu_option"),
callback: ()=>f((0,
u.to)({
type: d.j6
})),
recordingKey: "setScaleFactor"
}),
e
}
, [_, null == h ? void 0 : h.unit, m, g, n, a, f])
}(e)
, {updateDefaultCodegenSettings: _, isSetToDefault: h} = (0,
m.Q)();
return r.useMemo(()=>{
let e = [];
return n.length > 0 && e.push(...n),
t.length > 0 && e.length > 0 && e.push({
displayText: "",
separator: !0
}),
e.push(...t),
(0,
a.kc)().dev_mode_default_codegen && (e.length > 0 && e.push({
separator: !0,
displayText: ""
}),
e.push({
displayText: (0,
o.t)("dev_handoff.code.settings.set_as_default"),
callback: ()=>{
_()
}
,
isChecked: h
})),
e
}
, [t, h, n, _])
}
}
,
208186: (e,t,n)=>{
"use strict";
n.d(t, {
Co: ()=>R,
Cq: ()=>N,
DY: ()=>A,
Iy: ()=>T,
Me: ()=>C,
Rb: ()=>w,
SD: ()=>I,
TU: ()=>b,
Tz: ()=>L,
WV: ()=>O,
n7: ()=>P,
yf: ()=>S
});
var r = n(640783)
, i = n(38329)
, a = n(309225)
, o = n(776621)
, l = n(96328)
, s = n(304783)
, d = n(743282)
, c = n(27087)
, u = n(330654)
, p = n(987918)
, m = n(988022)
, _ = n(416095)
, h = n(754168)
, g = n(882698)
, f = n(273226);
let E = u.object({
id: u.string(),
node_id: u.string(),
file_key: u.string(),
link_name: u.string(),
link_url: u.string(),
is_user_override: u.boolean(),
link_preview_json: u.any()
})
, y = u.object({
meta: u.array(E)
});
async function b({fileKey: e, nodeId: t, includeInheritedLinks: n}) {
let r = (await h.S.getRelatedLinks({
nodeId: t,
fileKey: e
})).data
, a = y.safeParse(r);
if (!a.success)
throw Error("Invalid response from server");
let o = a.data.meta.map(e=>({
id: e.id,
nodeId: e.node_id,
linkName: e.link_name,
linkUrl: e.link_url,
fileKey: e.file_key,
isUserOverride: !!e.is_user_override,
linkPreviewJson: e.link_preview_json
}));
if (!n)
return o;
let l = i.D.getState().mirror.sceneGraph
, s = (0,
f.k4)([t], l)
, d = (0,
f.Yi)([t], l)
, c = await v(e, s)
, u = await v(e, d);
return [...o, ...c.map(e=>({
...e,
nodeId: t,
mainComponentId: s
})), ...u.map(e=>({
...e,
nodeId: t,
mainComponentId: d
}))]
}
async function v(e, t) {
let n = i.D.getState().mirror.sceneGraph;
if (!t)
return [];
let r = n.get(t);
if (!r)
return [];
let {publishID: a} = r
, o = p.fn(p.sH(a));
return await b({
fileKey: (0,
_.yW)(r) ?? e,
nodeId: o ? a ?? "" : t,
includeInheritedLinks: !1
})
}
async function I(e) {
var t;
let n = new Set([e])
, r = new Map
, a = new Map
, o = i.D.getState().mirror.sceneGraph
, l = (t,i)=>{
if (!i)
return;
let l = o.get(i);
if (!l)
return;
let {publishID: s, guid: d} = l
, c = (0,
_.yW)(l);
if (!c || !s || !p.fn(p.sH(s)) || c === e) {
r.set(d, t),
a.set(d, i);
return
}
r.set(s, t),
a.set(s, i),
n.add(c)
}
, s = null == (t = o.get("0:0")) ? void 0 : t.findAllWithCriteria({
types: ["INSTANCE"]
}).map(([e])=>e);
s && s.length > 0 && s.forEach(e=>{
let t = o.get(e);
if (!t || "INSTANCE" !== t.type)
return;
l(e, t.symbolId);
let n = (0,
f.Yi)([e], o);
l(e, n)
}
);
let d = await c.Ay.post("/api/files/related_links", {
file_keys: Array.from(n.values())
})
, u = [];
return d.data.meta.forEach(t=>{
let n = e === t.file_key && !!o.get(o.guidFromDeveloperFriendlyId(t.node_id))
, i = {
id: t.id,
linkName: t.link_name,
linkUrl: t.link_url,
fileKey: t.file_key,
isUserOverride: !!t.is_user_override,
linkPreviewJson: t.link_preview_json
};
n && u.push({
...i,
nodeId: t.node_id,
mainComponentId: void 0
}),
r.has(t.node_id) && u.push({
...i,
nodeId: r.get(t.node_id),
mainComponentId: a.get(t.node_id)
})
}
),
u
}
async function T({fileKey: e, nodeId: t, url: n, name: r, nodeType: i, pluginId: a, source: o}) {
if ((await b({
fileKey: e ?? "",
nodeId: t ?? ""
})).find(e=>e.linkUrl === n))
throw Error(`Link already exists on node ${t} with url ${n}`);
return A({
fileKey: e,
nodeId: t,
url: n,
name: r,
nodeType: i,
pluginId: a,
source: o
})
}
async function S(e) {
var t;
let n;
try {
let r = await g.E.getLinkMetadata({
text: e
})
, i = null == (t = null == r ? void 0 : r.data) ? void 0 : t.meta;
(null == i ? void 0 : i.title) && (n = decodeURIComponent(null == i ? void 0 : i.title))
} catch (e) {} finally {
if (!n) {
let t = (0,
r.Gw)(e);
n = t ? (0,
l.Zr)(t) : "N/A"
}
}
return n
}
u.object({
node_id: u.string(),
link_name: u.string(),
link_url: u.string()
});
let w = u.object({
meta: E
});
async function A({url: e, nodeId: t, fileKey: n, name: o, onPost: l, nodeType: s, pluginId: u, source: p}) {
var _;
let h = "";
if (o)
h = o;
else {
let t = (0,
r.FB)(e);
if ((null == t ? void 0 : t.toLowerCase()) === "github.com")
h = "Github";
else if ((null == t ? void 0 : t.toLowerCase()) === "jira.com" || (null == t ? void 0 : t.toLowerCase()) === "atlassian.net") {
h = "Jira";
let t = function(e) {
for (let t of D) {
let n = e.match(t);
if (null == n ? void 0 : n[1])
return n[1]
}
return null
}(e);
t && (h = `Issue ${t}`)
} else
h = await S(e)
}
let g = {
node_id: t ?? "",
link_name: h,
link_url: e
}
, f = c.Ay.post(`/api/files/${n}/related_links`, g);
return l && l(),
null == (_ = (0,
a.WB)()) || _.optimisticallyCreate({
DeveloperRelatedLink: {
[`optimistic-link-${(0,
d.g)()}`]: {
nodeId: t ?? "",
fileKey: n ?? "",
linkName: h,
linkUrl: e,
isUserOverride: !1,
linkPreviewJson: null
}
}
}, f),
f.then(e=>((0,
m.ds)("Dev Handoff Related Links Added New Link Success", n, i.D.getState(), {
nodeId: t,
nodeType: s,
source: p,
pluginId: u
}),
e))
}
async function C({fileKey: e, nodeId: t, currentUrl: n, newValue: r, nodeType: i, pluginId: a, source: o}) {
let l = (await b({
fileKey: e,
nodeId: t
})).find(e=>e.linkUrl === n);
return l || k({
nodeId: t,
url: n
}),
N({
fileKey: e,
nodeId: t,
linkId: l.id,
name: r.name || l.linkName,
url: r.url || l.linkUrl,
isUserOverride: !1,
clearLinkPreview: !0,
nodeType: i,
pluginId: a,
source: o
})
}
function N({fileKey: e, nodeId: t, linkId: n, name: r, url: o, isUserOverride: l, clearLinkPreview: s, nodeType: d, pluginId: u, source: p}) {
var _;
let h = {
node_id: t,
link_id: n,
new_link_name: r,
new_link_url: o
};
void 0 !== l && (h.is_user_override = l),
s && (h.link_preview_json = null);
let g = c.Ay.put(`/api/files/${e}/related_links`, h);
return null == (_ = (0,
a.WB)()) || _.optimisticallyUpdate({
DeveloperRelatedLink: {
[n]: {
linkName: r,
linkUrl: o,
isUserOverride: l,
linkPreviewJson: s ? "" : void 0
}
}
}, g),
g.then(n=>((0,
m.ds)("Dev Handoff Related Links Edit Link Success", e, i.D.getState(), {
nodeId: t,
nodeType: d,
source: p,
pluginId: u
}),
n))
}
async function O({fileKey: e, nodeId: t, url: n, nodeType: r, pluginId: i, source: a}) {
let o = (await b({
fileKey: e,
nodeId: t
})).find(e=>e.linkUrl === n);
return o || k({
nodeId: t,
url: n
}),
L({
fileKey: e,
nodeId: t,
linkId: o.id,
nodeType: r,
pluginId: i,
source: a
})
}
function L({fileKey: e, nodeId: t, linkId: n, nodeType: r, pluginId: o, source: l}) {
var s;
let d = c.Ay.del(`/api/files/${e}/related_links`, {
node_id: t,
link_id: n
});
return null == (s = (0,
a.WB)()) || s.optimisticallyDelete({
DeveloperRelatedLink: {
[n]: null
}
}, d),
d.then(n=>((0,
m.ds)("Dev Handoff Related Links Delete Link Success", e, i.D.getState(), {
nodeId: t,
nodeType: r,
source: l,
pluginId: o
}),
n))
}
async function R({fileKey: e, nodeId: t, url: n, linkPreviewJson: r}) {
let i = (await b({
fileKey: e,
nodeId: t
})).find(e=>e.linkUrl === n);
return i || k({
nodeId: t,
url: n
}),
P({
link: i,
linkPreviewJson: r
})
}
async function P({link: e, linkPreviewJson: t}) {
var n;
try {
let r = c.Ay.put(`/api/files/${e.fileKey}/related_links/link_preview`, {
node_id: e.nodeId,
link_id: e.id,
link_preview_json: t
});
null == (n = (0,
a.WB)()) || n.optimisticallyUpdate({
DeveloperRelatedLink: {
[e.id]: {
linkPreviewJson: JSON.stringify(t)
}
}
}, r),
await r
} catch (n) {
(0,
o.$D)(s.e.DEVELOPER_TOOLS, n, {
extra: {
link: e,
linkPreviewJson: t
}
})
}
}
function k({nodeId: e, url: t}) {
throw Error(`url ${t} and nodeId ${e} not found`)
}
let D = [/\/browse\/([A-Z]+-\d+)/, /selectedIssue=([A-Z]+-\d+)/, /issues\/([A-Z]+-\d+)/]
}
,
598393: (e,t,n)=>{
"use strict";
n.d(t, {
T1: ()=>f,
VI: ()=>b,
bg: ()=>g,
dF: ()=>y
});
var r = n(411855)
, i = n(188507)
, a = n(939863)
, o = n(666930)
, l = n(843245)
, s = n(964881)
, d = n(497306)
, c = n(555074)
, u = n(29680)
, p = n(321487)
, m = n(416095)
, _ = n(691205)
, h = n(32067);
function g(e, t, n=null) {
if (!(null == e ? void 0 : e.isAlive()))
return null;
let i = e.type;
if ((0,
d.GI)(e) && (i = "STAMP"),
(null == n ? void 0 : n.status) === "loaded" && "SYMBOL" !== i && "INSTANCE" !== i)
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.detached_component"
});
if ("BOOLEAN_OPERATION" === i)
switch (e.booleanOperation) {
case "UNION":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.union"
});
case "INTERSECT":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.intersect"
});
case "SUBTRACT":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.subtract"
});
case "XOR":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.exclude"
})
}
switch (i) {
case "VECTOR":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.vector"
});
case "STAR":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.star"
});
case "LINE":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.line"
});
case "ELLIPSE":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.ellipse"
});
case "RECTANGLE":
case "ROUNDED_RECTANGLE":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.rectangle"
});
case "REGULAR_POLYGON":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.polygon"
});
case "TEXT":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.text"
});
case "SLICE":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.slice"
});
case "GROUP":
case "FRAME":
if (e.isStateGroup)
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.main_component_set"
});
if ("HORIZONTAL" === e.stackMode)
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.horizontal_al"
});
if ("VERTICAL" === e.stackMode)
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.vertical_al"
});
if (e.resizeToFit)
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.group"
});
else
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.frame"
});
case "SYMBOL":
if (e.isState || (null == t ? void 0 : t.isStateGroup))
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.main_variant"
});
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.main_component"
});
case "INSTANCE":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.instance"
});
case "STICKY":
case "SHAPE_WITH_TEXT":
case "CONNECTOR":
case "STAMP":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.figjam"
});
case "SECTION":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.section"
});
case "WIDGET":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.widget"
});
case "CANVAS":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.page"
});
case "TABLE":
return r.createElement(a.Tx, {
id: "inspect_panel.node_type.table"
})
}
return null
}
function f() {
(0,
h.jY)();
let e = b()
, t = (0,
o.wS)()
, n = (0,
h.VW)()
, s = function(e) {
var t;
let n = (0,
i.d4)(e=>e.library)
, a = r.useMemo(()=>{
var t;
return null == (t = (0,
m.kD)(n.published.components).find(t=>t.component_key === (null == e ? void 0 : e.componentKey))) ? void 0 : t.file_key
}
, [null == e ? void 0 : e.componentKey, n.published.components])
, o = _.M4.useFile(a);
return (null == (t = null == o ? void 0 : o.data) ? void 0 : t.name) || null
}((0,
l.lA)());
if (!n || !e || !n.isAlive())
return null;
let d = n.isState ? n.parentNode : null
, c = "SYMBOL" === n.type || "INSTANCE" === n.type
, u = null;
if (n.hyperlink && "mixed" !== n.hyperlink)
switch (n.hyperlink.type) {
case "NODE":
new URL(document.location.href).searchParams.set("node-id", (0,
p.E)(n.hyperlink.value));
break;
case "URL":
u = n.hyperlink.value
}
return {
...e,
libraryName: s,
type: g(n, d, t),
typeTooltip: function(e) {
let t = e.type;
return e.detachedInfo && !("SYMBOL" === t || "INSTANCE" === t) ? (0,
a.t)("inspect_panel.node_type_tooltip.detached_component") : null
}(n),
isReadyForDev: n.hasReadyStatus,
isCompleted: n.hasCompletedStatus,
isDetached: "loaded" === t.status && !c,
link: u
}
}
function E(e, t) {
var n;
let r = e.isState ? e.parentNode : null
, i = (null == r ? void 0 : r.name) || e.name
, a = (null == t ? void 0 : t.isState) ? null == (n = null == t ? void 0 : t.parentNode) ? void 0 : n.name : null == t ? void 0 : t.name
, o = "SYMBOL" === e.type || "INSTANCE" === e.type;
return {
id: e.guid,
name: i,
backingSymbolName: a,
type: g(e, r, null),
isSymbol: e.isStateGroup || o,
isFrame: "FRAME" === e.type,
isSection: "SECTION" === e.type
}
}
function y() {
let e = (0,
s.hA)()
, t = (0,
u.eY)().get(e ?? "");
return t && t.isAlive() ? E(t) : null
}
function b() {
let e = (0,
c.kl)("numSelected")
, t = (0,
h.VW)()
, n = (0,
l.lA)();
return 1 === e && t && t.isAlive() ? E(t, n) : null
}
}
,
812505: (e,t,n)=>{
"use strict";
n.d(t, {
M: ()=>i
});
var r = n(411855);
function i() {
return r.createElement("svg", {
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "none"
}, r.createElement("g", {
clipPath: "url(#a)"
}, r.createElement("mask", {
id: "b",
width: 16,
height: 16,
x: 0,
y: 0,
maskUnits: "userSpaceOnUse",
style: {
maskType: "alpha"
}
}, r.createElement("path", {
fill: "#fff",
fillRule: "evenodd",
d: "M11.346 15.89c.252.099.54.093.794-.03l3.294-1.585a1 1 0 0 0 .566-.901V2.626a1 1 0 0 0-.566-.901L12.14.14a.996.996 0 0 0-1.137.193L4.697 6.087 1.95 4.002a.666.666 0 0 0-.85.037l-.882.802a.667.667 0 0 0 0 .986L2.6 8 .217 10.173a.667.667 0 0 0 .001.986l.881.802a.666.666 0 0 0 .851.037l2.747-2.085 6.306 5.754c.1.1.217.175.343.224Zm.656-11.522L7.217 8l4.785 3.632V4.368Z",
clipRule: "evenodd"
})), r.createElement("g", {
mask: "url(#b)"
}, r.createElement("path", {
fill: "#0065A9",
d: "M15.434 1.727 12.137.14A.997.997 0 0 0 11 .333L.208 10.173a.667.667 0 0 0 0 .986l.882.802a.667.667 0 0 0 .851.037L14.938 2.14A.662.662 0 0 1 16 2.667v-.039a1 1 0 0 0-.566-.9Z"
}), r.createElement("g", {
filter: "url(#c)"
}, r.createElement("path", {
fill: "#007ACC",
d: "m15.434 14.273-3.297 1.587A.996.996 0 0 1 11 15.667L.208 5.827a.667.667 0 0 1 0-.986l.882-.802a.667.667 0 0 1 .851-.037l12.997 9.859A.662.662 0 0 0 16 13.333v.039a1 1 0 0 1-.566.9Z"
})), r.createElement("g", {
filter: "url(#d)"
}, r.createElement("path", {
fill: "#1F9CF0",
d: "M12.137 15.86A.997.997 0 0 1 11 15.667a.586.586 0 0 0 1-.415V.747a.586.586 0 0 0-1-.414c.3-.3.755-.377 1.137-.193l3.296 1.585a1 1 0 0 1 .567.901v10.748a1 1 0 0 1-.567.901l-3.296 1.585Z"
})), r.createElement("path", {
fill: "url(#e)",
fillRule: "evenodd",
d: "M11.336 15.89c.252.099.54.093.794-.03l3.294-1.585a1 1 0 0 0 .566-.901V2.626a1 1 0 0 0-.566-.901L12.13.14a.996.996 0 0 0-1.137.193L4.687 6.087 1.94 4a.666.666 0 0 0-.85.038l-.882.802a.667.667 0 0 0 0 .986L2.59 8 .208 10.173a.667.667 0 0 0 0 .986l.881.802a.666.666 0 0 0 .851.037l2.747-2.085 6.306 5.754c.1.1.217.175.343.224Zm.657-11.522L7.208 8l4.785 3.632V4.368Z",
clipRule: "evenodd",
opacity: .25,
style: {
mixBlendMode: "overlay"
}
}))), r.createElement("defs", null, r.createElement("filter", {
id: "c",
width: 32.676,
height: 28.759,
x: -8.343,
y: -4.467,
colorInterpolationFilters: "sRGB",
filterUnits: "userSpaceOnUse"
}, r.createElement("feFlood", {
floodOpacity: 0,
result: "BackgroundImageFix"
}), r.createElement("feColorMatrix", {
in: "SourceAlpha",
result: "hardAlpha",
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
}), r.createElement("feOffset", null), r.createElement("feGaussianBlur", {
stdDeviation: 4.167
}), r.createElement("feColorMatrix", {
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"
}), r.createElement("feBlend", {
in2: "BackgroundImageFix",
mode: "overlay",
result: "effect1_dropShadow_0_3"
}), r.createElement("feBlend", {
in: "SourceGraphic",
in2: "effect1_dropShadow_0_3",
result: "shape"
})), r.createElement("filter", {
id: "d",
width: 21.667,
height: 32.584,
x: 2.667,
y: -8.292,
colorInterpolationFilters: "sRGB",
filterUnits: "userSpaceOnUse"
}, r.createElement("feFlood", {
floodOpacity: 0,
result: "BackgroundImageFix"
}), r.createElement("feColorMatrix", {
in: "SourceAlpha",
result: "hardAlpha",
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"
}), r.createElement("feOffset", null), r.createElement("feGaussianBlur", {
stdDeviation: 4.167
}), r.createElement("feColorMatrix", {
values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"
}), r.createElement("feBlend", {
in2: "BackgroundImageFix",
mode: "overlay",
result: "effect1_dropShadow_0_3"
}), r.createElement("feBlend", {
in: "SourceGraphic",
in2: "effect1_dropShadow_0_3",
result: "shape"
})), r.createElement("linearGradient", {
id: "e",
x1: 7.99,
x2: 7.99,
y1: .041,
y2: 15.959,
gradientUnits: "userSpaceOnUse"
}, r.createElement("stop", {
stopColor: "#fff"
}), r.createElement("stop", {
offset: 1,
stopColor: "#fff",
stopOpacity: 0
})), r.createElement("clipPath", {
id: "a"
}, r.createElement("path", {
fill: "#fff",
d: "M0 0h16v16H0z"
}))))
}
}
,
786110: (e,t,n)=>{
"use strict";
n.d(t, {
Ib: ()=>A,
O5: ()=>W,
Zy: ()=>N,
q1: ()=>O,
rI: ()=>P,
vY: ()=>L
});
var r = n(411855)
, i = n(629019)
, a = n.n(i)
, o = n(794272)
, l = n(38580)
, s = n(374626)
, d = n(860601)
, c = n(574176)
, u = n(118830)
, p = n(444736)
, m = n(852800)
, _ = n(617453)
, h = n(843495)
, g = n(29680)
, f = n(698993)
, E = n(100197)
, y = n(279702)
, b = n(319882)
, v = n(620722)
, I = n(798558)
, T = n(716866)
, S = n(949207)
, w = n(432023);
let A = (0,
l.eU)(new Map);
function C(e) {
let {isHovered: t, selection: n} = (0,
o.R)(t=>({
isHovered: t.mirror.appModel.hoveredNode === e.guid,
selection: t.mirror.sceneGraphSelection
}))
, i = r.useRef(null);
r.useEffect(()=>{
i.current && e.isSelected && i.current.scrollIntoView({
block: "nearest"
})
}
, [e.isSelected]);
let l = "SYMBOL" === e.type || "INSTANCE" === e.type || e.isInstanceSublayer || e.isSymbolSublayer || O.includes(e.type)
, d = [T.nM, e._className];
e.isSelected && d.push(T.wH),
t && d.push(T.yo),
l && d.push(T.HR),
e.isExpanded(e.guid) && d.push(T.sz),
e.isAncestorSelected && d.push(T.bx),
0 !== e.indentation && d.push(T.BT);
let c = Array.from({
length: e.indentation
}, (e,t)=>t + 1);
return r.createElement("div", {
onMouseDown: t=>{
(0,
f.S)("html_tree"),
e.didSelectRow(e.guid);
let r = Object.keys(n);
if (s.zl.set(b.J, !1),
t.metaKey) {
var i;
n[i = e.guid] ? h.D$([i]) : h.Dh([i])
} else
t.shiftKey && r.length > 0 ? h.GL(r[r.length - 1], e.guid) : m.w3z.selectAndPanToNode(e.guid)
}
,
onDoubleClick: t=>e.isExpandable && e.toggleExpanded(t, e.guid),
onContextMenu: t=>e.openContextMenu(t, e.guid),
onMouseEnter: ()=>h.Uc(e.guid),
onMouseLeave: ()=>h.Uc(h.Hr),
role: "button",
tabIndex: 0,
className: a()(d),
ref: i,
"data-fullscreen-intercept": !0
}, c.map(e=>r.createElement("div", {
key: e,
className: T.Mh
})), e.children)
}
function N(e) {
return r.createElement(c.B, {
onMouseDown: e.visible ? t=>{
var n;
t.preventDefault(),
t.stopPropagation(),
null == (n = e.onMouseDown) || n.call(e, t)
}
: void 0,
className: a()(T.GE, e.visible && T.RK),
svg: e.expanded ? S.A : w.A,
dataTestId: `devHandoffLayersRow.toggle-${e.name}`
})
}
let O = ["TABLE", "TABLE_CELL", "WASHI_TAPE", "STAMP", "STICKY", "SHAPE_WITH_TEXT", "WIDGET"];
function L(e, t) {
let n = (null == e ? void 0 : e.type) ?? y.PW.NOT_ASSET
, r = n & (y.PW.ASSET_IMAGE | y.PW.ASSET_ICON);
return t ? r : n & y.PW.ASSET_IMAGE
}
function R(e) {
return "SYMBOL" === e || "INSTANCE" === e
}
function P({node: e, showIcons: t, assetInfo: n}) {
return n && L(n, t) ? r.createElement(H, {
guid: e.guid,
assetInfo: n,
hasEnabledStaticImagePaint: e.hasEnabledStaticImagePaint
}) : r.createElement(I.Bf, {
className: a()(T.V3, T.MS, {
[T.hR]: O.includes(e.type)
}),
guid: e.guid
})
}
function k({guid: e}) {
let t = (0,
s.md)(A).get(e);
if (!t)
return null;
let n = t.state;
return "added" === n ? r.createElement("div", {
className: T.vN
}) : "changed" === n ? r.createElement("div", {
className: T.tD
}) : "removed" === n ? r.createElement("div", {
className: T.rq
}) : null
}
function D(e) {
return r.createElement(C, {
...e,
_className: e.hasChildren ? T.aw : void 0
}, r.createElement(N, {
visible: e.isExpandable && e.hasChildren,
expanded: e.isExpanded(e.guid),
onMouseDown: t=>e.toggleExpanded(t, e.guid),
name: e.name
}), r.createElement(I.Bf, {
className: T.V3,
guid: e.guid
}), r.createElement("span", {
className: T.Hn
}, e.name, " ", e.showGuids && ` (${e.guid})`), r.createElement(k, {
guid: e.guid
}))
}
function M(e) {
return r.createElement(C, {
...e,
_className: T.aw
}, r.createElement(N, {
visible: e.isExpandable && e.hasChildren,
expanded: e.isExpanded(e.guid),
onMouseDown: t=>e.toggleExpanded(t, e.guid),
name: e.name
}), r.createElement(I.Bf, {
className: T.V3,
guid: e.guid
}), r.createElement("span", {
className: T.Hn
}, e.name, " ", e.showGuids && ` (${e.guid})`), r.createElement(k, {
guid: e.guid
}))
}
function F(e) {
var t, n;
let i;
let a = (0,
g.eY)()
, o = e.inheritedTextStyle;
if (o) {
let e = m.glU.getStyleNodeId(o.key, o.version);
i = null == (t = a.get(e)) ? void 0 : t.name
}
let l = e.isInstanceSublayer ? e.name === (null == (n = e.textContent) ? void 0 : n.trim().replace(/\s+/gm, " ")) : e.autoRename;
return r.createElement(C, {
...e,
_className: T.yL
}, r.createElement(N, {
visible: !1,
expanded: !1,
name: e.name
}), r.createElement(I.Bf, {
className: T.V3,
guid: e.guid
}), l ? null : r.createElement("span", {
className: T.Hn
}, e.name, " ", e.showGuids && ` (${e.guid})`), r.createElement("span", {
className: T.P_
}, e.textContent), r.createElement("span", {
className: T.bT
}, " \xb7 ", i), r.createElement(k, {
guid: e.guid
}))
}
function x(e) {
return r.createElement(r.Fragment, null, r.createElement(I.Bf, {
className: a()(T.V3, T.MS, {
[T.hR]: !e.figJam
}),
guid: e.guid
}), r.createElement("span", {
className: a()(T.Hn, T.MS)
}, e.name, e.showGuids && ` (${e.guid})`))
}
function U(e) {
let t = e.guid;
return r.createElement(C, {
...e
}, r.createElement(N, {
visible: e.isExpandable && e.hasChildren,
expanded: e.isExpanded(t),
onMouseDown: n=>e.toggleExpanded(n, t),
name: e.name
}), r.createElement(x, {
guid: t,
name: e.name,
showGuids: e.showGuids
}), r.createElement(k, {
guid: e.guid
}))
}
function B(e) {
let t = e.guid;
return r.createElement(C, {
...e
}, r.createElement(N, {
visible: !1,
expanded: !1,
onMouseDown: d.lQ,
name: e.name
}), r.createElement(x, {
guid: t,
name: e.name,
showGuids: e.showGuids,
figJam: !0
}), r.createElement(k, {
guid: e.guid
}))
}
function V(e) {
let {assetInfo: t} = e;
return t ? r.createElement(G, {
...e,
assetInfo: t
}) : r.createElement(D, {
...e
})
}
function H({guid: e, assetInfo: t, hasEnabledStaticImagePaint: n}) {
let i = t.type & y.PW.ASSET_IMAGE || n
, o = (0,
u.O)({
assetId: e,
thumbnailVersion: t.thumbnailVersion,
width: 64,
height: 64,
scale: 2
});
return r.createElement(v.J, {
className: a()(T.ZE, i ? T.Ym : T.ye),
style: o.backgroundStyle,
src: o.url
})
}
function G(e) {
let {assetInfo: t} = e;
return r.createElement(C, {
...e,
_className: T.Re
}, r.createElement(N, {
visible: !1,
expanded: !1,
name: e.name
}), r.createElement(H, {
guid: e.guid,
assetInfo: t,
hasEnabledStaticImagePaint: e.hasEnabledStaticImagePaint
}), r.createElement(r.Fragment, null, R(e.type) ? r.createElement(x, {
guid: e.guid,
name: e.name,
showGuids: !1
}) : r.createElement(r.Fragment, null, r.createElement("span", {
className: T.Hn
}, e.name, " ", e.showGuids && ` (${e.guid})`), r.createElement("span", {
className: T.UZ
}, r.createElement(p.$R, {
assetInfo: t,
dataTestId: "layerPanelAsset"
})))))
}
let W = r.memo(e=>{
let t = (0,
E.J2)((0,
_.UK)().showGuids)
, n = (0,
E.J2)(m.Ez5.devHandoffState().automaticIconDetection)
, i = r.useMemo(()=>m.w3z.getOrAddAssetInfo(e.guid), [e.guid])
, a = (0,
g.eY)().get(e.guid);
if (!a)
return null;
let o = a.devToolsOrderedVisibleChildren
, l = function(e, t, n) {
return O.includes(e.type) ? B : n && L(n, t) ? V : R(e.type) ? U : "FRAME" === e.type && "NONE" !== e.stackMode ? M : "TEXT" === e.type ? F : D
}(a, n, i);
if (!l)
return null;
let s = o.length > 0 && !(i && L(i, n));
return r.createElement(l, {
toggleExpanded: e.toggleExpanded,
isExpanded: e.isExpanded,
openContextMenu: e.openContextMenu,
indentation: e.indentation,
hasChildren: s,
isSelected: e.isSelected,
isAncestorSelected: e.isAncestorSelected,
didSelectRow: e.didSelectRow,
guid: a.guid,
type: a.type,
name: a.name,
textContent: a.textContent,
absoluteBoundingBox: a.absoluteBoundingBox,
hasEnabledStaticImagePaint: a.hasEnabledStaticImagePaint,
inheritedTextStyle: a.inheritedTextStyle,
autoRename: a.autoRename,
stackMode: a.inferredAutoLayoutResult ? a.inferredAutoLayoutResult.stackMode : a.stackMode,
isInstanceSublayer: a.isInstanceSublayer,
isSymbolSublayer: a.isSymbolSublayer,
isExpandable: !e.isRoot && s,
showGuids: t,
assetInfo: i
})
}
)
}
,
910741: (e,t,n)=>{
"use strict";
n.d(t, {
GF: ()=>T,
bZ: ()=>A,
lb: ()=>S,
m3: ()=>w
});
var r = n(411855)
, i = n(188507)
, a = n(374626)
, o = n(499737)
, l = n(218881)
, s = n(911826)
, d = n(256975)
, c = n(304815)
, u = n(755594)
, p = n(964881)
, m = n(335682)
, _ = n(694687)
, h = n(279453)
, g = n(243987)
, f = n(428467)
, E = n(984968)
, y = n(668860)
, b = n(507956)
, v = (e=>(e.CONTROL = "default",
e.BLOCKING_MODAL = "blocking_modal",
e))(v || {});
let I = (0,
r.createContext)({
inStarterExperiment: !1
});
function T({children: e}) {
let t = function() {
let e = function() {
let {getConfig: e} = (0,
l.I7)("exp_paywall_redesign_starter");
return (0,
r.useCallback)(()=>e().getValue("simplified_checkout", !1), [e])
}()
, t = (0,
E.$w)()
, n = (0,
E.ol)()
, o = (0,
g.w5)(n)
, s = (0,
i.d4)(e=>{
var t;
return (0,
g.oc)((null == (t = (0,
E.H7)(e)) ? void 0 : t.id) ?? "", e)
}
)
, u = (0,
i.d4)(e=>!!n && (0,
f.hasTeamAccess)(null == n ? void 0 : n.id, y.e6.EDITOR, e))
, p = (0,
m.q5)()
, _ = (0,
b.ks)()
, h = function() {
let e = (0,
d.U4)()
, t = (0,
a.md)(c.a)
, n = (0,
a.md)(c.d);
return e && !!t.data && !n.data
}()
, v = !!p
, I = !!(null == p ? void 0 : p.teamId) && !(null == p ? void 0 : p.parentOrgId) && !!n && !n.org_id && !o && !s && !!t && u
, T = v && I && (_ || h);
return (0,
r.useMemo)(()=>!!T && e(), [e, T])
}();
return r.createElement(I.Provider, {
value: {
inStarterExperiment: t
}
}, e)
}
function S() {
return (0,
r.useContext)(I).inStarterExperiment
}
function w() {
let e = (0,
d._I)()
, t = (0,
u.J)()
, n = S();
return !e && (t || n)
}
function A() {
var e, t, n, r;
let i = (0,
u.J)()
, a = S()
, l = null == (e = (0,
E.ol)()) ? void 0 : e.id
, d = null == (t = (0,
_.sZ)()) ? void 0 : t.id
, c = (0,
s.O)()
, g = (0,
p.hA)() ? "focus_view" : "dev_mode"
, f = (0,
m.tS)() ?? ""
, y = (0,
o.Rs)(h.HdA, {
key: f
})
, b = null == (r = null == (n = null == y ? void 0 : y.data) ? void 0 : n.file) ? void 0 : r.hasPermission;
return i ? {
teamId: l,
orgId: d,
currentPlan: c,
gracePeriod: b,
paywallType: g
} : a ? {
experiment_group: "fellowship_starter_experiment_blocking_modal",
teamId: l,
currentPlan: c,
gracePeriod: !1,
paywallType: "dev_mode"
} : void 0
}
}
,
304815: (e,t,n)=>{
"use strict";
n.d(t, {
a: ()=>i,
d: ()=>a
});
var r = n(582947);
let i = (0,
r.Fu)("dev_mode_should_see_paywall_reminder")
, a = (0,
r.Fu)("dev_mode_seen_paywall_reminder")
}
,
471340: (e,t,n)=>{
"use strict";
n.d(t, {
cI: ()=>a,
qI: ()=>o
});
var r = n(38580)
, i = n(582947)
, a = (e=>(e[e.DEFAULT = 0] = "DEFAULT",
e[e.UPGRADING = 1] = "UPGRADING",
e[e.REQUESTED = 2] = "REQUESTED",
e[e.REQUESTED_TRIAL = 3] = "REQUESTED_TRIAL",
e))(a || {});
let o = (0,
r.eU)(0);
(0,
i.Fu)("dev_mode_made_request_in_exp")
}
,
755594: (e,t,n)=>{
"use strict";
n.d(t, {
J: ()=>o
});
var r = n(335682)
, i = n(243987)
, a = n(984968);
function o() {
let e = (0,
a.ol)()
, t = (0,
i.w5)(e) && !(null == e ? void 0 : e.org_id)
, n = (0,
r.q5)();
return !!(null == n ? void 0 : n.teamId) && t || !!(null == n ? void 0 : n.parentOrgId)
}
}
,
693897: (e,t,n)=>{
"use strict";
n.d(t, {
L3: ()=>c,
Ym: ()=>p
});
var r = n(966712)
, i = n(218881)
, a = n(256975)
, o = n(988022)
, l = n(99506)
, s = n(239671)
, d = n(520425);
let c = "Enter Design Mode"
, u = "Enter Inspect Mode";
function p(e, t, n, p, m={}) {
var _;
let h = t === s.nT.DevHandoff ? u : c
, g = {
source: n,
hasSeatForDevMode: (0,
a.tn)(e),
...m
}
, f = null == (_ = e.openFile) ? void 0 : _.key;
(0,
o.ds)(h, f, e, g, {
forwardToDatadog: p
}),
(async()=>{
if ((0,
r.Ay)().org_id && (await (0,
i.hW)("exp_dev_mode_last_active_full_tracking")).get("enabled", !1) && f && "init" !== n) {
let e = h === u ? l.Mr.DEV_MODE_FILE_SEEN : l.Mr.DESIGN_FILE_SEEN;
d.L.postRecentActivity({
fileKey: f,
activityType: e
})
}
}
)()
}
}
,
962645: (e,t,n)=>{
"use strict";
n.d(t, {
Gj: ()=>o,
j5: ()=>r,
kt: ()=>a,
n8: ()=>i
});
var r = (e=>(e.ADDED = "ADDED",
e.REMOVED = "REMOVED",
e))(r || {});
function i(e, t=0, n) {
let r = {
code: e
};
return n && (r.hint = n),
t && (r.indent = t),
r
}
function a(e, t=!1) {
return e.map(e=>t ? o(e) + e.code : e.code).join("\n")
}
function o(e) {
return e.indent ? " ".repeat(e.indent) : ""
}
}
,
31225: (e,t,n)=>{
"use strict";
n.d(t, {
A2: ()=>a,
bv: ()=>i,
eo: ()=>r
});
var r = (e=>(e[e.NoStyleForColor = 0] = "NoStyleForColor",
e[e.VariableNotResolved = 1] = "VariableNotResolved",
e[e.VariableSuggested = 2] = "VariableSuggested",
e[e.MultipleVariables = 3] = "MultipleVariables",
e[e.AbsolutePosition = 4] = "AbsolutePosition",
e[e.BordersDontTakeUpSpace = 5] = "BordersDontTakeUpSpace",
e[e.SinglePaint = 6] = "SinglePaint",
e[e.UnsupportedPaint = 7] = "UnsupportedPaint",
e[e.UnsupportedGradientPaint = 8] = "UnsupportedGradientPaint",
e[e.LeadingTrim = 9] = "LeadingTrim",
e[e.PlusDarker = 10] = "PlusDarker",
e[e.BackgroundBlendModePlusLighterDarker = 11] = "BackgroundBlendModePlusLighterDarker",
e[e.SwiftUISeparateBorderWidth = 12] = "SwiftUISeparateBorderWidth",
e[e.SwiftUIBlurNoSpread = 13] = "SwiftUIBlurNoSpread",
e[e.SwiftUIOnlySingleFillForShapes = 14] = "SwiftUIOnlySingleFillForShapes",
e[e.SwiftUISeparateCornerRadius = 15] = "SwiftUISeparateCornerRadius",
e[e.SwiftUISpacersForSpaceBetween = 16] = "SwiftUISpacersForSpaceBetween",
e[e.ComposeSeparateBorderWidth = 17] = "ComposeSeparateBorderWidth",
e[e.ComposeShadowIncompatibility = 18] = "ComposeShadowIncompatibility",
e[e.ComposeBlurTip = 19] = "ComposeBlurTip",
e[e.DisplayP3Fallback = 20] = "DisplayP3Fallback",
e))(r || {})
, i = (e=>(e.Tooltip = "tooltip",
e.Comment = "comment",
e))(i || {});
let a = {
NoStyleForColor: {
id: 0,
type: "tooltip"
},
VariableNotResolved: {
id: 1,
type: "tooltip"
},
VariableSuggested: e=>({
id: 2,
value: e,
type: "tooltip"
}),
MultipleVariables: e=>({
id: 3,
value: e,
type: "tooltip"
}),
AbsolutePosition: e=>({
id: 4,
name: e,
type: "tooltip"
}),
BordersDontTakeUpSpace: {
id: 5,
type: "tooltip"
},
SinglePaint: {
id: 6,
type: "tooltip"
},
UnsupportedPaint: {
id: 7,
type: "tooltip"
},
UnsupportedGradientPaint: {
id: 8,
type: "tooltip"
},
LeadingTrim: {
id: 9,
type: "tooltip"
},
DisplayP3Fallback: {
id: 20,
type: "tooltip"
},
PlusDarker: {
id: 10,
type: "tooltip"
},
BackgroundBlendModePlusLighterDarker: e=>({
id: 11,
value: e,
type: "tooltip"
}),
SwiftUISeparateBorderWidth: {
id: 12,
type: "tooltip"
},
SwiftUIBlurNoSpread: {
id: 13,
type: "tooltip"
},
SwiftUIOnlySingleFillForShapes: {
id: 14,
type: "tooltip"
},
SwiftUISeparateCornerRadius: {
id: 15,
type: "tooltip"
},
SwiftUISpacersForSpaceBetween: {
id: 16,
type: "tooltip"
},
ComposeSeparateBorderWidth: {
id: 17,
type: "tooltip"
},
ComposeShadowIncompatibility: {
id: 18,
type: "tooltip"
},
ComposeBlurTip: {
id: 19,
type: "tooltip"
}
}
}
,
40987: (e,t,n)=>{
"use strict";
n.d(t, {
cR: ()=>s,
d: ()=>l,
gk: ()=>o,
hv: ()=>d
});
var r = n(38580)
, i = n(582947)
, a = n(147723);
let o = (0,
r.eU)(void 0)
, l = (0,
r.eU)(!1)
, s = (0,
r.eU)(!1)
, d = (0,
i.Fu)(a.Ih)
}
,
165514: (e,t,n)=>{
"use strict";
n.d(t, {
D0: ()=>l,
TR: ()=>o,
zi: ()=>a
});
var r = n(939863)
, i = n(852800);
function a(e) {
switch (e) {
case i.zIx.BUILD:
return (0,
r.t)("dev_handoff.status.ready_for_dev");
case i.zIx.COMPLETED:
return (0,
r.t)("dev_handoff.status.completed");
case i.zIx.NONE:
return null
}
}
function o(e) {
switch (e) {
case i.zIx.BUILD:
return (0,
r.t)("dev_handoff.status.mark_status_sentence_part.ready_for_dev");
case i.zIx.COMPLETED:
return (0,
r.t)("dev_handoff.status.mark_status_sentence_part.completed");
case i.zIx.NONE:
return null
}
}
function l(e) {
if (e.length > 0) {
let t = e[0].metadata;
return {
status: (null == t ? void 0 : t.status) ?? null
}
}
return {
status: null
}
}
}
,
331972: (e,t,n)=>{
"use strict";
n.d(t, {
W: ()=>function e(t, n) {
return !!n && "CANVAS" !== n.type && (n.guid === t.guid || e(t, n.parentNode))
}
,
_: ()=>d
});
var r = n(38329)
, i = n(966712)
, a = n(693897)
, o = n(738269)
, l = n(988022)
, s = n(239671);
function d(e, t, n) {
var d, c;
if (!(0,
i.kc)().dt_dev_mode_workflows || "fullscreen" !== t.view)
return;
let u = r.D.getState();
(null == (d = u.selectedView) ? void 0 : d.showOverview) && "overview_search_clicked" === n && (0,
l.ds)("Dev Mode Overview Pages Search Clicked", null == (c = u.openFile) ? void 0 : c.key, u, {
pageId: t.nodeId
}),
"editorType"in t && t.editorType === s.nT.Design && (0,
a.Ym)(u, s.nT.Design, n),
e(o.$T({
...t,
showOverview: !1
}))
}
}
,
964881: (e,t,n)=>{
"use strict";
n.d(t, {
US: ()=>E,
Wl: ()=>h,
X0: ()=>b,
ZI: ()=>y,
hA: ()=>g,
l7: ()=>_,
s4: ()=>f
});
var r = n(411855)
, i = n(188507)
, a = n(900956)
, o = n.n(a)
, l = n(966712)
, s = n(17604)
, d = n(852800)
, c = n(493862)
, u = n(29680)
, p = n(100197)
, m = n(507956);
function _() {
return (0,
i.d4)(e=>h(e.selectedView))
}
function h(e) {
return !!e && (null == e ? void 0 : e.view) === "fullscreen" && (null == e ? void 0 : e.showOverview) === !0
}
function g() {
return (0,
i.d4)(e=>f(e.selectedView) ?? null)
}
function f(e) {
if (e)
return (0,
m.$A)(e) ? e.devModeFocusId : void 0
}
function E() {
let e = (0,
u.aV)()
, t = (0,
p.J2)(d.Ez5.currentSceneState().nodesWithStatusLoaded);
return (0,
r.useEffect)(()=>{
if (e || t)
return;
let n = d.w3z.getAllNodesWithStatusesByPage()
, r = new Set;
n.forEach(e=>{
e.forEach(e=>{
r.add(e)
}
)
}
),
(0,
c.Tj)(r, d.dPJ.DEV_HANDOFF_STATUS).then(()=>{
d.w3z.onAllNodesWithStatusesLoaded(n)
}
)
}
, [e, t]),
t
}
function y() {
let e = (0,
p.J2)(d.Ez5.currentSceneState().pageToNumNodesWithStatus);
return (0,
r.useMemo)(()=>o()([...e.values()]), [e])
}
function b() {
let e = (0,
s.D)()
, t = y();
return (0,
l.kc)().dt_dev_mode_workflows && e && t > 0
}
}
,
203264: (e,t,n)=>{
"use strict";
n.d(t, {
BJ: ()=>u,
E1: ()=>s,
L: ()=>c,
Uy: ()=>d,
ei: ()=>l
});
var r = n(794272)
, i = n(966712)
, a = n(29680)
, o = n(601607);
function l(e, t=!1, n) {
return (0,
o.Fk)((e,t,r)=>t && u(n ?? e, t, r) || null, e, t)
}
function s() {
let {lastViewedStamp: e, lastEditedStamp: t} = (0,
r.R)(e=>{
var t;
return {
fileKey: null == (t = e.openFile) ? void 0 : t.key,
lastViewedStamp: e.versionHistory.lastViewed,
lastEditedStamp: e.versionHistory.lastEdited
}
}
);
return function(e, t) {
if (!e)
return t ? new Date(t) : void 0;
if (!t)
return e ? new Date(e) : void 0;
let n = new Date(e)
, r = new Date(t);
return n > r ? n : r
}(e, t)
}
var d = (e=>(e.NOT_RECENT = "NOT_RECENT",
e.RECENTLY_EDITED = "RECENTLY_EDITED",
e.RECENTLY_CREATED = "RECENTLY_CREATED",
e))(d || {});
function c(e, t, n) {
let r = (0,
a.eY)();
if (!e)
return "NOT_RECENT";
let i = u(r, e, !0);
if (!i)
return "NOT_RECENT";
let o = i.lastEditedAt;
if (!o || !t)
return "NOT_RECENT";
if (i.createdAt) {
let r = new Date(i.createdAt);
if (t < r && (!n[e] || n[e] < r))
return "RECENTLY_CREATED"
}
let l = new Date(o);
return l.setSeconds(0, 0),
t < l && (!n[e] || n[e] < l) ? "RECENTLY_EDITED" : "NOT_RECENT"
}
function u(e, t, n) {
var r, a;
let o = null == (r = e.get(t)) ? void 0 : r.editInfo;
return !o || n && o.userId === (null == (a = (0,
i.Ay)().user_data) ? void 0 : a.id) || 0 === o.lastEditedAt ? null : (o.lastEditedAt = 1e3 * o.lastEditedAt,
o.createdAt = 1e3 * o.createdAt,
o)
}
}
,
955066: (e,t,n)=>{
"use strict";
n.d(t, {
DF: ()=>h,
Jw: ()=>_,
TP: ()=>g,
Y3: ()=>E,
h0: ()=>y,
vv: ()=>m,
zE: ()=>f
});
var r = n(167249)
, i = n(776250)
, a = n(517333)
, o = n(374626)
, l = n(980820)
, s = n(738269)
, d = n(154823)
, c = n(788811)
, u = n(132367)
, p = n(691205);
let m = (0,
l.nF)(async(e,t)=>{
var n, r;
let a = null == (r = null == (n = e.getState()) ? void 0 : n.user) ? void 0 : r.id;
if (!a)
return;
let o = Object.keys(t);
await (0,
c.wI)(a, o),
u.hp.sendToAllTabs(u.c6, o),
(0,
i.sx)("Delete New Autosave Files", {
deletedCount: o.length
})
}
)
, _ = (0,
l.nF)(async e=>{
var t;
let n = null == (t = e.getState().user) ? void 0 : t.id;
if (!n)
return;
await (0,
c.JI)(n);
let r = await (0,
c.kl)(n);
e.dispatch(E({
filesWithChangesInIDB: r.unsyncedFiles,
filesCreatedOffline: r.newFiles
})),
e.dispatch(g(r.nextGarbageCollectionTimestamp))
}
)
, h = (0,
r.N)("SET_AUTOSAVE_ONBOARDING_TOOLTIP_VISIBLE")
, g = (0,
r.N)("SET_AUTOSAVE_NEXT_GARBAGE_COLLECTION_TIMESTAMP")
, f = (0,
r.N)("SET_AUTOSAVE_SNOOZE")
, E = (0,
r.N)("SET_UNCLAIMED_FILES");
function y(e) {
u.hp.register(u.ec, ()=>(function(e) {
var t;
let n = (null == (t = e.getState().user) ? void 0 : t.id) ?? null;
p.M4.fetch((0,
c.OL)({
userId: n
}), {
policy: "networkOnly"
})
}
)(e)),
u.hp.register(u.c6, t=>(function(e, t) {
let n = o.zl.get(d.h);
n && t.includes(n) && (a.eD ? a.eD.close({
suppressReopening: !0,
shouldForceClose: !0
}) : e.dispatch(s.$T({
view: "recentFiles"
}))),
e.dispatch(_())
}
)(e, t)),
u.hp.register(u.m6, ({localFileKey: e, realFileKey: t})=>(0,
c.Gc)(e, t))
}
}
,
113853: (e,t,n)=>{
"use strict";
n.d(t, {
PI: ()=>I,
V8: ()=>v,
_E: ()=>y,
nx: ()=>b,
pI: ()=>S,
s6: ()=>w
});
var r = n(167249)
, i = n(1844)
, a = n(572206)
, o = n(27087)
, l = n(881388)
, s = n(939863)
, d = n(392592)
, c = n(980820)
, u = n(99403)
, p = n(902957)
, m = n(196495)
, _ = n(852800)
, h = n(931770)
, g = n(731078)
, f = n(56342);
let E = (e,t)=>{
let n = t / Math.min(e.width, e.height)
, r = e.width * n
, i = e.height * n;
return {
x: (t - r) / 2,
y: (t - i) / 2,
width: r,
height: i
}
}
;
function y(e, t, n, r) {
let i = document.createElement("canvas")
, a = i.getContext("2d");
return i.width = i.height = t,
a.fillStyle = "image/png" === r ? "transparent" : "#FFF",
a.fillRect(0, 0, t, t),
a.drawImage(i, 0, 0),
a.drawImage(e, n.x, n.y, n.width, n.height),
"image/png" === r ? i.toDataURL() : i.toDataURL("image/jpeg", .92)
}
function b(e) {
let t = atob(e.slice(e.indexOf(",") + 1))
, n = [];
for (let e = 0; e < t.length; e++)
n.push(t[e].charCodeAt(0));
return new Uint8Array(n)
}
async function v(e, t, n) {
let r = function() {
let t = e.originalImageWidth && e.originalImageHeight ? e.originalImageWidth / e.originalImageHeight : 1
, n = h.jS(e, new a.Mi(Math.max(g.Pf.LARGE, g.Pf.LARGE * t),Math.max(g.Pf.LARGE, g.Pf.LARGE / t)), {
r: 0,
g: 0,
b: 0,
a: 0
});
return n && n.pixels && n.pixelSize ? h.Pv(n.pixels, n.pixelSize) : ""
}();
if (r)
try {
let e = await function(e) {
let t = new Image;
return new Promise((n,r)=>{
t.onerror = e=>{
r(e)
}
,
t.onload = ()=>{
URL.revokeObjectURL(e),
n(t)
}
,
t.src = e
}
)
}(r);
if (!e) {
l.s.error((0,
s.t)("avatar_actions.editor_uploaded.an_error_occurred_while_setting_your_profile_photo"));
return
}
n(S({
entity: t,
entityType: g.ck.CURRENT_USER,
small: b(y(e, g.Pf.SMALL, E(e, g.Pf.SMALL))),
large: b(y(e, g.Pf.LARGE, E(e, g.Pf.LARGE))),
contentType: "image/jpeg"
}))
} catch (e) {
n(l.s.error((0,
s.t)("avatar_actions.editor_uploaded.an_error_occurred_while_setting_your_profile_photo"))),
console.error((0,
s.t)("avatar_actions.editor_uploaded.an_error_occurred_while_setting_your_profile_photo"), e)
}
}
let I = (0,
r.N)("AVATAR_EDITOR_RESET")
, T = (0,
c.nF)((e,t)=>{
if (t.entityType === g.ck.CURRENT_USER)
o.Ay.put("/api/user", {
img_url: t.smallUrl,
img_url_500_500: t.largeUrl
}).then(function({data: t}) {
var n;
let r = t.meta;
(null == r ? void 0 : r.img_url) && (null == (n = _.h3O) || n.setImgUrl(r.img_url)),
e.dispatch(m.yJ({
user: r,
userInitiated: !1
})),
e.dispatch(I())
}, t=>{
e.dispatch(l.s.error((0,
s.t)("avatar_actions.editor_uploaded.an_error_occurred_while_setting_your_profile_photo"))),
console.error((0,
s.t)("avatar_actions.editor_uploaded.an_error_occurred_while_setting_your_profile_photo"), t),
e.dispatch(I())
}
);
else if (t.entityType === g.ck.TEAM) {
let n = t.entity.id;
o.Ay.put(`/api/teams/${n}`, {
img_url: t.smallUrl,
img_url_500_500: t.largeUrl
}).then(function({data: t}) {
let n = t.meta;
e.dispatch(p.yJ({
team: n,
userInitiated: !1
})),
e.dispatch(I()),
e.dispatch(d.F.enqueue({
message: (0,
s.t)("avatar_actions.team_icon_updated")
}))
}, t=>{
e.dispatch(l.s.error((0,
s.t)("avatar_actions.an_error_occurred_while_setting_the_team_icon"))),
console.error((0,
s.t)("avatar_actions.an_error_occurred_while_setting_the_team_icon")),
e.dispatch(I())
}
)
} else if (t.entityType === g.ck.ORG) {
let n = t.entity.id;
o.Ay.put(`/api/orgs/${n}`, {
img_url: t.smallUrl,
img_url_500_500: t.largeUrl
}).then(function({data: t}) {
let n = t.meta;
e.dispatch(u.yJ({
org: n
})),
e.dispatch(I())
}, t=>{
var n;
e.dispatch(l.s.error((0,
s.t)("avatar_actions.an_error_occurred") + (null == (n = t.data) ? void 0 : n.message))),
console.error((0,
s.t)("avatar_actions.an_error_occurred_while_setting_the_organization_icon"), t),
e.dispatch(I())
}
)
} else if (t.entityType === g.ck.WORKSPACE) {
let n = t.entity.id;
f.u.updateImage({
workspaceId: n,
img_url: t.smallUrl,
img_url_500_500: t.largeUrl,
onfulfilled: ()=>{
e.dispatch(d.F.enqueue({
message: (0,
s.t)("avatar_actions.workspace_icon_updated")
}))
}
,
onrejected: t=>{
let n = (0,
s.t)("avatar_actions.an_error_occurred_while_setting_the_workspace_icon");
e.dispatch(l.s.error(n)),
console.error(n),
e.dispatch(I())
}
})
}
}
)
, S = (0,
c.T8)("AVATAR_EDITOR_UPLOAD", (e,t)=>{
Promise.all([(0,
i.Q)("profile", t.small, t.contentType), (0,
i.Q)("profile", t.large, t.contentType)]).then(function(n) {
let r = n[0].data.meta.url
, i = n[1].data.meta.url;
e.dispatch(T({
entity: t.entity,
entityType: t.entityType,
smallUrl: r,
largeUrl: i
}))
}, ()=>{
e.dispatch(l.s.error((0,
s.t)("avatar_actions.an_error_occurred_while_uploading_the_image"))),
e.dispatch(I())
}
)
}
)
, w = (0,
r.N)("AVATAR_EDITOR_INIT")
}
,
772167: (e,t,n)=>{
"use strict";
n.d(t, {
DI: ()=>s,
NY: ()=>d,
V2: ()=>a,
cL: ()=>c,
dY: ()=>o,
sV: ()=>i,
zx: ()=>l
});
var r = n(167249);
let i = (0,
r.N)("CANVAS_SEARCH_SET_MODE")
, a = (0,
r.N)("CANVAS_SEARCH_SET_SCOPE")
, o = (0,
r.N)("CANVAS_SEARCH_CLEAR_CATEGORY_FILTERS")
, l = (0,
r.N)("CANVAS_SEARCH_SWITCH_CATEGORY_FILTER_EXCLUSIVE")
, s = (0,
r.N)("CANVAS_SEARCH_TOGGLE_CATEGORY_FILTER")
, d = (0,
r.N)("CANVAS_SEARCH_SET_QUERY")
, c = (0,
r.N)("CANVAS_SEARCH_RESET")
}
,
923716: (e,t,n)=>{
"use strict";
n.d(t, {
Z: ()=>o,
i: ()=>a
});
var r = n(691205)
, i = n(28567);
let a = r.M4.Query({
fetch: async e=>(await i.c.getAll()).data.meta
})
, o = r.M4.Query({
fetch: async e=>(await i.c.getCategoryBySlug({
slug: e
})).data.meta
})
}
,
63397: (e,t,n)=>{
"use strict";
n.d(t, {
Ad: ()=>M,
Ai: ()=>ee,
Ch: ()=>O,
Dg: ()=>P,
Hx: ()=>W,
KF: ()=>H,
RS: ()=>k,
Rx: ()=>D,
X2: ()=>en,
Zj: ()=>U,
_8: ()=>j,
_F: ()=>G,
aP: ()=>X,
av: ()=>Z,
cO: ()=>F,
cR: ()=>R,
d6: ()=>er,
dL: ()=>Y,
e6: ()=>et,
eN: ()=>V,
h1: ()=>J,
ig: ()=>B,
oB: ()=>Q,
p4: ()=>z,
r1: ()=>x,
rO: ()=>L,
vQ: ()=>q,
vr: ()=>$
});
var r = n(167249)
, i = n(776250)
, a = n(183297)
, o = n(27087)
, l = n(881388)
, s = n(939863)
, d = n(123026)
, c = n(392592)
, u = n(837324)
, p = n(913270)
, m = n(980820)
, _ = n(738269)
, h = n(994988)
, g = n(99403)
, f = n(697551)
, E = n(782501)
, y = n(147206)
, b = n(320741)
, v = n(935757)
, I = n(440535)
, T = n(555328)
, S = n(66037)
, w = n(746058)
, A = n(270068)
, C = n(507877)
, N = n(651705);
let O = (0,
r.N)("COMMUNITY_HUB_SHOW_ADMIN_PROFILE_BANNER")
, L = (0,
r.N)("COMMUNITY_HUB_HIDE_ADMIN_PROFILE_BANNER")
, R = d.setAuthedActiveCommunityProfile
, P = (0,
m.nF)((e,t)=>{
var n;
let r;
let {user: a, authedUsers: o, orgUsersByOrgId: l, authedTeamsById: d, teamAdminRolesForAuthedUsers: u, authedProfilesById: m, selectedView: h, currentUserOrgId: g} = e.getState()
, E = t.profileId ? m[t.profileId] : null
, b = t.view && (!E || (0,
f.UK)(E, t.view)) ? t.view : {
view: "communityHub",
subView: "searchAndBrowse",
data: (0,
p.Gu)()
};
if (!E) {
e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.profile_not_found"),
type: "COMMUNITY_PROFILE_ERROR"
})),
e.dispatch(_.$T(b));
return
}
let I = g;
if (E.org_id) {
I = E.org_id;
let e = l.orgUsers[E.org_id];
r = Object.keys(o.byId).find(t=>{
let n = e[t];
if (n && (0,
y.Ay)(n.permission) >= S.jh.ADMIN)
return n.user_id
}
)
} else
E.team_id ? (I = (null == (n = d[E.team_id]) ? void 0 : n.org_id) || null,
r = Object.keys(o.byId).find(e=>{
var t;
let n = u[e];
return null == (t = null == n ? void 0 : n.find(e=>e.team_id === E.team_id)) ? void 0 : t.user_id
}
)) : r = E.primary_user_id === (null == a ? void 0 : a.id) ? null == a ? void 0 : a.id : o.orderedIds.find(e=>{
var t, n;
return null == (n = null == (t = E.associated_users) ? void 0 : t.find(t=>t.user_id === e)) ? void 0 : n.user_id
}
);
if ((0,
v.Il)(E.id),
(0,
i.sx)("Community profile IA switched", {
profileId: E.id,
view: h.view
}),
e.dispatch(R(E)),
e.dispatch(O()),
r && (r !== (null == a ? void 0 : a.id) || g !== I)) {
let t = {
userId: r,
orgId: I
};
e.dispatch(C._l({
workspace: t,
view: b
}))
} else
e.dispatch(_.$T(b))
}
)
, k = (0,
r.N)("COMMUNITY_HUB_ADD_FOLLOW")
, D = (0,
r.N)("COMMUNITY_HUB_DELETE_FOLLOW")
, M = (0,
r.N)("COMMUNITY_HUB_SAVE_PAGE_STATE")
, F = (0,
r.N)("COMMUNITY_HUB_RESET_COMMENT_STATE")
, x = (0,
r.N)("COMMUNITY_HUB_SET_COMMENTS")
, U = (0,
r.N)("COMMUNITY_HUB_SET_COMMENTS_ACTIVE_FEED_TYPE")
, B = (0,
r.N)("COMMUNITY_HUB_SET_COMMENT_REPLIES")
, V = (0,
r.N)("COMMUNITY_HUB_ADD_NEW_COMMENTS_QUEUE")
, H = (0,
r.N)("COMMUNITY_HUB_REMOVE_FROM_NEW_COMMENTS_QUEUE")
, G = (0,
r.N)("COMMUNITY_HUB_FLUSH_NEW_COMMENTS_QUEUE")
, W = (0,
r.N)("COMMENTS_INSERT_COMMUNITY_MENTION")
, K = (e,t)=>{
let n = /\?/.test(e) ? "&" : "?";
return e + `${n}${t}`
}
, z = (0,
m.nF)((e,t)=>{
var n;
if (!(0,
a.u9)(t))
return;
let r = `/api/${(0,
f.n)(t.resourceType)}/${t.resourceId}/comments`;
!t.selectedCommentId || t.selectedCommentId === I.hm || (null == (n = t.pagination) ? void 0 : n.selected_comment) || (r = K(r, `selected_comment_id=${t.selectedCommentId}`)),
t.activeFeedType === T.Qv.ME && (r = K(r, `feed_type=${t.activeFeedType}`),
void 0 === t.numCommentsForResource && (r = K(r, "include_total_count=true"))),
(0,
a.En)(r, t.pageSizeOverride ?? a.vs, t, a.AS).then(e=>{
let n = !e.selected_comment || e.comments.find(t=>{
var n;
return t.id === (null == (n = e.selected_comment) ? void 0 : n.id)
}
)
, {commentsById: r, authorsById: i, feed: a} = (0,
f.HR)(n ? e.comments : [...e.comments, e.selected_comment])
, o = e.pagination;
e.selected_comment && (o.selected_comment = e.selected_comment);
let l = {
...e,
pagination: e.pagination,
totalNumberOfComments: e.total_count,
commentsById: r,
authorsById: i,
feed: a,
activeFeedType: t.activeFeedType,
type: t.resourceType,
id: t.resourceId,
mentionedProfiles: e.mentioned_profiles
};
e.selected_comment && (l.selectedCommentId = e.selected_comment.id),
t.onSuccess && t.onSuccess(l)
}
).catch(n=>{
e.dispatch(l.s.error((0,
s.t)("community.actions.unable_to_fetch_comments"))),
t.onError && t.onError()
}
)
}
)
, j = (0,
m.T8)("COMMUNITY_HUB_RESTRICT_PROFILE", (e,{profileId: t, blockedProfileId: n, onSuccess: r})=>{
o.Ay.post(`/api/profile/${n}/block`, {
block_type: "restrict",
profile_id: t
}).then(()=>{
r && r()
}
).catch(t=>{
let n = (0,
s.Jv)(t);
n && e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.couldnt_restrict_profile_error", {
error: n
}),
type: "RESTRICT_PROFILE_ERROR"
}))
}
)
}
)
, Y = (0,
m.T8)("COMMUNITY_HUB_UNRESTRICT_PROFILE", (e,{profileId: t, blockedProfileId: n, onSuccess: r})=>{
o.Ay.del(`/api/profile/${n}/block`, {
block_type: "restrict",
profile_id: t
}).then(()=>{
r && r()
}
).catch(t=>{
let n = (0,
s.Jv)(t);
n && e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.couldnt_unrestrict_profile_error", {
error: n
}),
type: "UNRESTRICT_PROFILE_ERROR"
}))
}
)
}
)
, $ = (0,
m.T8)("COMMUNITY_HUB_SET_COMMENT_STATE", (e,t)=>{
let {id: n, type: r} = t;
(n !== e.getState().communityHub.comments.id || r !== e.getState().communityHub.comments.type) && e.dispatch(F()),
e.dispatch(x(t))
}
);
(0,
m.nF)((e,{profileId: t, on404Redirect: n},{loadingKey: r})=>{
let i = w.s.getProfile({
profileId: t
});
(0,
b.N)(i, e, r),
i.then(({data: t})=>{
e.dispatch(N.Oo(t.meta.profile)),
e.dispatch(_.$T(e.getState().selectedView))
}
).catch(t=>(404 === t.status && n ? n() : e.dispatch(l.s.error((0,
s.t)("community.actions.error_fetching_profile_information"))),
null))
}
);
let Z = (0,
m.T8)("COMMUNITY_HUB_GET_PROFILE_BY_HANDLE", (e,{handle: t, on404Redirect: n},{loadingKey: r})=>{
let i = e.getState().currentUserOrgId
, a = w.s.getHandle({
currentOrgId: i || void 0,
handle: t
});
(0,
b.N)(a, e, r),
a.then(({data: t})=>{
e.dispatch(N.Oo(t.meta.profile))
}
).catch(({data: t})=>{
(null == t ? void 0 : t.status) === 404 && n && n(),
e.dispatch(l.s.error((0,
s.t)("community.actions.error_fetching_profile_information")))
}
)
}
, ({handle: e})=>`COMMUNITY_HUB_GET_PROFILE_BY_HANDLE_${e}`)
, q = (0,
m.T8)("COMMUNITY_HUB_CREATE_PROFILE", (e,t,{loadingKey: n})=>{
let {website: r, description: i, location: a, profileHandle: d, onSuccess: c, userId: u, teamId: p, orgId: m} = t
, _ = o.Ay.post("/api/profile", {
website: r,
description: i,
location: a,
profile_handle: d,
primary_user_id: u,
team_id: p,
org_id: m
});
(0,
b.N)(_, e, n),
_.then(({data: t})=>{
e.dispatch(N.HZ(t.meta)),
e.dispatch(N.Oo(t.meta));
let {currentUserOrgId: n, orgById: r} = e.getState()
, i = n && r[n];
n && i && n === m && e.dispatch(g.F6({
id: n,
community_profile_handle: t.meta.profile_handle,
community_profile_id: t.meta.id
})),
c && c(e)
}
).catch(t=>{
let n = (0,
s.Jv)(t);
n && e.dispatch(l.s.error(n))
}
)
}
, ({userId: e})=>`COMMUNITY_HUB_CREATE_PROFILE_${e}`)
, J = (0,
m.nF)((e,t)=>{
o.Ay.post("/api/profile/generate_handle").then(({data: n})=>{
e.dispatch(N.HZ(n.meta)),
e.dispatch(N.Oo(n.meta)),
t.onSuccess && t.onSuccess(e)
}
).catch(({data: t})=>{
e.dispatch(l.s.error(t.message))
}
)
}
)
, X = (0,
m.T8)("COMMUNITY_HUB_UPDATE_PROFILE", (e,t,{loadingKey: n})=>{
var r;
let {website: i, twitter: a, instagram: d, pronouns: p, description: m, location: h, profileId: E, profileHandle: y, onSuccess: v} = t
, I = e.getState().communityHub.currentProfile;
if (E === (null == I ? void 0 : I.id) && Object.entries(t).every(([e,t])=>void 0 === t || e in I && I[e] === t))
return;
let T = null == a ? void 0 : a.trim()
, S = null == d ? void 0 : d.trim();
if (T && (null == I ? void 0 : I.twitter) !== T && !u.HD.test(T)) {
e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.your_twitter_handle_is_not_valid", {
handle: T
}),
error: !0
}));
return
}
if (S && (null == I ? void 0 : I.instagram) !== S && !u.Co.test(S)) {
e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.your_instagram_handle_is_not_valid", {
handle: S
}),
error: !0
}));
return
}
let w = o.Ay.put(`/api/profile/${E}`, {
website: i,
twitter: T,
instagram: S,
pronouns: p,
description: m,
location: h,
profile_handle: y
});
(0,
b.N)(w, e, n);
let A = null == (r = e.getState().user) ? void 0 : r.community_profile_handle;
w.then(({data: n})=>{
var r;
let {communityHub: i, currentUserOrgId: a, orgById: o} = e.getState();
(null == (r = i.currentProfile) ? void 0 : r.id) === n.meta.id && e.dispatch(N.Oo(n.meta));
let l = o[a];
if (l && "string" == typeof l.id && l.id === n.meta.org_id && e.dispatch(g.F6({
id: n.meta.org_id,
community_profile_handle: n.meta.profile_handle
})),
y) {
let t = e.getState().selectedView;
(0,
f.Cj)(t) && (null == t ? void 0 : t.handle) === A && e.dispatch(_.$T({
view: "communityHub",
subView: "handle",
handle: y
})),
n.meta.primary_user_id ? e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.your_profile_handle_was_set_to_profile_handle", {
profileHandle: y
}),
type: "profile-handle"
})) : n.meta.team_id ? e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.your_team_s_handle_was_set_to_profile_handle", {
profileHandle: y
}),
type: "team-handle"
})) : n.meta.org_id && e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.your_organization_s_handle_was_set_to_profile_handle", {
profileHandle: y
}),
type: "org-handle"
}))
}
["twitter", "location", "instagram", "website", "description"].forEach(r=>{
if (r in n.meta && r in t) {
let t = {
twitter: (0,
s.t)("community.actions.your_twitter_handle_was_updated"),
location: (0,
s.t)("community.actions.your_location_was_updated"),
instagram: (0,
s.t)("community.actions.your_instagram_handle_was_updated"),
website: (0,
s.t)("community.actions.your_website_url_was_updated"),
description: (0,
s.t)("community.actions.your_description_was_updated")
};
e.dispatch(c.F.enqueue({
message: t[r],
type: "profile-updated"
}))
}
}
),
v && v(e)
}
).catch(t=>{
let n = (0,
s.Jv)(t);
n && e.dispatch(l.s.error(n))
}
)
}
, ({profileId: e})=>`COMMUNITY_HUB_UPDATE_PROFILE_${e}`)
, Q = (0,
m.nF)((e,t,{loadingKey: n})=>{
let {profileId: r, handle: i} = t;
o.Ay.del(`/api/profile/${r}`).then(()=>{
e.dispatch(N.cr(i));
let {currentUserOrgId: t, orgById: n} = e.getState()
, a = t && n[t];
t && a && a.community_profile_id === r && e.dispatch(g.F6({
id: t,
community_profile_handle: void 0,
community_profile_id: void 0
})),
e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.profile_deleted")
}))
}
).catch(()=>{
e.dispatch(l.s.error((0,
s.t)("community.actions.unable_to_delete_profile_please_try_again_later")))
}
)
}
)
, ee = (0,
m.T8)("COMMUNITY_HUB_UPLOAD_PROFILE_COVER_IMAGE", async(e,{file: t, profileId: n, onSuccessCallback: r},{loadingKey: i})=>{
let a = (0,
E.ck)(t).then(e=>(function(e, t, n, r) {
return t ? o.Ay.post(e).then(({data: e})=>e.meta).then(async({cover_image_path: e, signature: t, fields: n})=>{
let i = new FormData;
return n && Object.entries(n).forEach(([e,t])=>i.append(e, t)),
i.set("content-type", r.type),
i.append("file", r),
await fetch(e, {
method: "POST",
body: i
}),
{
cover_image_path: e,
signature: t
}
}
) : Promise.resolve({
cover_image_path: "",
signature: ""
})
}
)(`/api/profile/${n}/upload`, e, t.type, t));
(0,
b.N)(a, e, i),
await a.then(({signature: e})=>o.Ay.put(`/api/profile/${n}`, {
signature: e
})).then(({data: t})=>{
e.dispatch(N.Oo(t.meta)),
r()
}
).catch(t=>{
e.dispatch(l.s.error(t ? (0,
s.t)("community.actions.an_error_occurred_with_error", {
error: t
}) : (0,
s.t)("community.actions.an_error_occurred")))
}
)
}
, ({profileId: e})=>`COMMUNITY_HUB_UPLOAD_PROFILE_COVER_IMAGE_${e}`)
, et = (0,
m.T8)("COMMUNTY_HUB_FOLLOW_ENTITY", async(e,t,{loadingKey: n})=>{
let r = o.Ay.put("/api/follows", {
followed_profile_id: t
});
(0,
b.N)(r, e, n),
await r.then(({data: n})=>{
var r, i;
(null == (r = e.getState().user) ? void 0 : r.community_profile_id) && (e.dispatch(k({
followedProfileId: t,
currentUserProfileId: null == (i = e.getState().user) ? void 0 : i.community_profile_id
})),
e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.followed_profile_name", {
profileName: n.meta.followed_profile.name
}),
type: "COMMUNITY_HUB_FOLLOW"
})))
}
).catch(t=>{
let n = (0,
s.Jv)(t);
n && e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.unable_to_follow_this_profile_profile_name", {
profileName: n
}),
type: "COMMUNITY_HUB_FOLLOW_FAILED",
error: !0
}))
}
)
}
, e=>`COMMUNTY_HUB_FOLLOW_ENTITY_${e}`)
, en = (0,
m.T8)("COMMUNTY_HUB_UNFOLLOW_ENTITY", (e,t,{loadingKey: n})=>{
let r = o.Ay.del("/api/follows", {
followed_profile_id: t
});
(0,
b.N)(r, e, n),
r.then(()=>{
var n, r;
(null == (n = e.getState().user) ? void 0 : n.community_profile_id) && (e.dispatch(D({
followedProfileId: t,
currentUserProfileId: null == (r = e.getState().user) ? void 0 : r.community_profile_id
})),
e.dispatch(c.F.enqueue({
message: (0,
s.t)("community.actions.unfollowed_profile"),
type: "COMMUNITY_HUB_UNFOLLOW"
})))
}
).catch(t=>{
let n = (0,
s.Jv)(t);
n && e.dispatch(c.F.enqueue({
message: `Unable to unfollow this profile: ${n}`,
type: "COMMUNITY_HUB_UNFOLLOW_FAILED",
error: !0
}))
}
)
}
, e=>`COMMUNTY_HUB_UNFOLLOW_ENTITY_${e}`);
function er(e) {
return {
updateStatus: (0,
r.N)(`${e}_UPDATE_PUBLISH_STATUS`),
updateMetadata: (0,
r.N)(`${e}_UPDATE_PUBLISH_METADATA`),
clearMetadata: (0,
r.N)(`${e}_CLEAR_PUBLISH_METADATA`),
clearMetadataAndStatus: (0,
r.N)(`${e}_CLEAR_PUBLISHING`)
}
}
(0,
m.nF)(async(e,t)=>{
var n;
let r;
let {thread: i, resolved: a} = t
, l = e.getState();
a && (null == (n = l.comments.activeThread) ? void 0 : n.id) === i.id && !l.comments.showResolved && e.dispatch(A.UU()),
r = a ? o.Ay.put(`/api/community_comments/${i.id}/resolve`) : o.Ay.put(`/api/community_comments/${i.id}/unresolve`),
await r.then(({data: t})=>{
e.dispatch(h.kE({
comment: {
id: i.id,
resolved_at: t.meta.resolved_at
}
}))
}
).catch(t=>{
e.dispatch(c.F.enqueue({
error: !0,
message: a ? (0,
s.t)("community.actions.failed_to_resolve_comment") : (0,
s.t)("community.actions.failed_to_unresolve_comment")
}))
}
)
}
)
}
,
609219: (e,t,n)=>{
"use strict";
n.d(t, {
M2: ()=>_,
Sp: ()=>p,
k3: ()=>m,
oQ: ()=>u
});
var r = n(167249)
, i = n(776621)
, a = n(286640)
, o = n(466636)
, l = n(980820)
, s = n(320741)
, d = n(596578);
(0,
l.nF)((e,t)=>{
var n, r, l;
let {payments: s, source: d} = t
, u = null == (n = e.getState().user) ? void 0 : n.id;
if (!u || !s)
return;
let p = s.filter(o.QQ)
, m = `${c}_${u}`
, _ = null == (r = (0,
a.TQ)()) ? void 0 : r.getItem(m);
if (_) {
let e = JSON.parse(_);
if (Array.isArray(e)) {
let t = new Set(p.map(e=>e.monetized_resource_metadata_id))
, n = e.map(e=>e.monetized_resource_metadata_id).filter(e=>!t.has(e));
n.length && (0,
i.x1)("community", "[ActivePayments] mismatch detected", {
source: d,
userId: u,
revoked: n,
previousPayments: e,
currentPayments: s
}, {
reportAsSentryError: !0
})
}
}
let h = JSON.stringify(p);
null == (l = (0,
a.TQ)()) || l.setItem(m, h)
}
);
let c = "debug_succeeded_payments"
, u = (0,
l.nF)((e,t,{loadingKey: n})=>{
let r = d.C.getBuyerActivePayments();
(0,
s.N)(r, e, n),
r.then(({data: t})=>{
e.dispatch(_(t.meta))
}
).catch(()=>{}
)
}
)
, p = (0,
r.N)("M10N_DEL_ACTIVE_USER_PAYMENT")
, m = (0,
r.N)("M10N_REALTIME_ACTIVE_USER_PAYMENT")
, _ = (0,
r.N)("M10N_SET_ACTIVE_USER_PAYMENTS")
}
,
384162: (e,t,n)=>{
"use strict";
n.d(t, {
Dw: ()=>_,
sz: ()=>m,
wJ: ()=>p
});
var r = n(167249)
, i = n(776621)
, a = n(868389)
, o = n(84336)
, l = n(697551)
, s = n(320741)
, d = n(555328)
, c = n(222085)
, u = n(980820);
let p = (0,
r.N)("COMMUNITY_SET_SHELVES_FOR_SHELF_TYPE")
, m = (0,
u.T8)("COMMUNITY_FETCH_SHELVES_FOR_SHELF_TYPE", (e,{shelfType: t, limit: n},{loadingKey: r})=>{
let a = {
shelfType: t,
limitShelfContent: n
}
, o = c.A.getCommunityShelves(a);
(0,
s.N)(o, e, r),
o.then(({data: n})=>{
let r = n.meta;
r.forEach(t=>h(e.dispatch, t.shelf_content)),
e.dispatch(p({
shelfType: t,
shelves: r
}))
}
).catch(e=>{
(0,
i.x1)("collections", "error fetching collections", {
...a,
error: e.toString()
})
}
)
}
, ({shelfType: e, limit: t})=>`COMMUNITY_FETCH_SHELVES_FOR_SHELF_TYPE_${e}_${t}`)
, _ = (0,
u.T8)("COMMUNITY_FETCH_SHELVES_FOR_SHELF_TYPE_AND_FILTER_LABEL", (e,{shelfType: t, filterLabel: n, limit: r},{loadingKey: i})=>{
let a = c.A.getCommunityShelves({
shelfType: t,
filterLabel: n,
limitShelfContent: r
});
(0,
s.N)(a, e, i),
a.then(({data: n})=>{
let r = n.meta;
r.forEach(t=>h(e.dispatch, t.shelf_content)),
e.dispatch(p({
shelfType: t,
shelves: r
}))
}
)
}
, ({shelfType: e, filterLabel: t, limit: n})=>`COMMUNITY_FETCH_SHELVES_FOR_SHELF_TYPE_AND_FILTER_LABEL_${e}_${t}_${n}`);
function h(e, t) {
let n = []
, r = []
, i = [];
t.forEach(e=>{
let t = (0,
l.x1)(e);
t === d.Ug.HUB_FILE ? n.push(e) : t === d.Ug.PLUGIN ? r.push(e) : t === d.Ug.WIDGET && i.push(e)
}
),
e((0,
a.Sb)({
hubFiles: n,
src: "fetchShelvesForShelfType"
})),
e((0,
o.Qi)({
publishedPlugins: [...r, ...i],
src: "fetchShelvesForShelfType"
}))
}
}
,
410424: (e,t,n)=>{
"use strict";
n.d(t, {
Af: ()=>eo,
D3: ()=>T.D3,
FO: ()=>el,
L1: ()=>T.L1,
N4: ()=>ew,
QA: ()=>es,
Qi: ()=>eO,
Ri: ()=>ea,
Sb: ()=>T.Sb,
VS: ()=>ef,
ax: ()=>eA,
bk: ()=>eb,
eq: ()=>ec,
i9: ()=>ev,
k8: ()=>eP,
oO: ()=>ey,
p7: ()=>ep,
rH: ()=>eh,
rL: ()=>em,
sW: ()=>ek,
ts: ()=>e_,
vr: ()=>eL,
wO: ()=>eg,
yh: ()=>eC,
zm: ()=>eN
});
var r = n(167249)
, i = n(776250)
, a = n(511617)
, o = n(354703)
, l = n(737947)
, s = n(404843)
, d = n(966712)
, c = n(374626)
, u = n(309225)
, p = n(563706)
, m = n(776621)
, _ = n(881396)
, h = n(304783)
, g = n(27087)
, f = n(761870)
, E = n(881388)
, y = n(939863)
, b = n(392592)
, v = n(848680)
, I = n(987051)
, T = n(868389)
, S = n(980820)
, w = n(63397)
, A = n(944682)
, C = n(738269)
, N = n(662275)
, O = n(986270)
, L = n(107877)
, R = n(988022)
, P = n(697551)
, k = n(782501)
, D = n(852800)
, M = n(661060)
, F = n(820642)
, x = n(132135)
, U = n(99506)
, B = n(320741)
, V = n(973131)
, H = n(284321)
, G = n(984968)
, W = n(813408)
, K = n(809073)
, z = n(637590)
, j = n(851363)
, Y = n(596578)
, $ = n(955617)
, Z = n(301400)
, q = n(577198)
, J = n(897925)
, X = n(953289)
, Q = n(662268)
, ee = n(837900)
, et = n(876401)
, en = n(936500)
, er = n(651705);
let ei = n(876401).ZS
, ea = (0,
r.N)("PUT_FIG_FILE_PUBLISHED_AS_HUB_FILE")
, eo = (0,
r.N)("UPDATE_HUB_FILE_PAGE_TITILE")
, el = (0,
r.N)("DEL_FIG_FILE_PUBLISHED_AS_HUB_FILE")
, es = (0,
r.N)("PUT_FIG_FILE_DUPLICATE_FROM_HUB_FILE")
, ed = (0,
r.N)("DEL_FIG_FILE_DUPLICATE_FROM_HUB_FILE")
, ec = (0,
r.N)("HUB_FILE_PUT_HUB_FILE_REMIX")
, eu = e=>{
let t = (0,
y.t)("community.actions.log_in_or_create_an_account_to_duplicate_this_file");
if (p.rr) {
window.location.href = "/login";
return
}
e.dispatch(f.I.init({
origin
})),
e.dispatch(N.to({
type: q.x,
data: {
headerText: t
}
}))
}
, ep = (0,
S.T8)("DUPLICATE_HUB_FILE", (e,t,{loadingKey: n})=>{
let r = e.getState();
if (!r.user) {
eu(e);
return
}
let o = (0,
v.Z)(r)
, s = {
headers: {
...g.Ay.defaults.headers,
"X-Figma-User-ID": t.workspace.userId
}
}
, d = g.Ay.post(`/api/hub_files/v2/${t.hubFileId}/copy`, {
org_id: t.workspace.orgId
}, s);
(0,
B.N)(d, e, n),
d.then(({data: n})=>{
let r = n.meta;
(0,
i.sx)(L.M5.HUB_FILE_DUPLICATED, {
hubFileId: t.hubFileId,
figFileKey: r.key,
...o
}),
"whiteboard" === r.editor_type && e.dispatch(O.Hx({
storeInRecentsKey: K.$A.FigJam,
id: t.hubFileId,
type: K.vt.CommunityResource
}));
let s = (0,
x.to)(r);
s = (0,
a.dR)(s, {
[F.pt.KEY]: F.pt.VALUE,
fuid: t.workspace.userId
}),
l.Ay.redirect(s, p.rr ? void 0 : "_blank"),
e.dispatch(C.oB())
}
).catch(t=>{
e.dispatch(b.F.enqueue({
error: !0,
message: (0,
y.t)("community.actions.failed_to_duplicate_file_error", {
error: (0,
y.Jv)(t, (0,
y.t)("community.actions.try_again_or_contact_support_figma_com"))
})
}))
}
)
}
, ({hubFileId: e})=>`DUPLICATE_HUB_FILE_${e}`)
, em = (0,
S.nF)((e,t)=>{
var n;
let {canRetry: r=!0} = t
, i = e.getState()
, a = i.currentUserOrgId
, o = (0,
d.kc)().ps_benchmark ? i.currentTeamId : null;
if (t.folderId) {
let r = null == (n = i.folders[t.folderId]) ? void 0 : n.team_id
, a = r ? i.teams[r] : null
, o = i.hubFiles[t.hubFileId].viewer_mode === U.y4.WHITEBOARD ? U._Y.WHITEBOARD : U._Y.DESIGN
, l = "whiteboard" === o ? {
type: G.sK.ADD_FIGJAM_FILE
} : {
type: G.sK.ADD_DESIGN_FILE
};
if (a && !(0,
G.rR)(a, l)) {
e.dispatch(N.to({
type: J.Y,
data: {
teamId: a.id,
createInDrafts: ()=>{
e.dispatch(em({
...t,
folderId: void 0
}))
}
,
teamName: a.name,
editorType: o,
dispatch: e.dispatch,
action: j.ZN.CREATE_FILE_FROM_TEMPLATE
}
}));
return
}
}
return g.Ay.post(`/api/hub_files/template/${t.hubFileId}/copy`, {
folder_id: t.folderId,
org_id: a,
team_id: o || void 0
}).then(({data: n})=>{
let r = n.meta;
(0,
R.f5)("File Created", r, {
selectedView: i.selectedView
}, {
source: t.source
}),
t.callback && t.callback(null == r ? void 0 : r.key),
"whiteboard" === r.editor_type && e.dispatch(O.Hx({
storeInRecentsKey: K.$A.FigJam,
id: t.hubFileId,
type: K.vt.CommunityResource
}));
let a = (0,
x.to)(r);
l.Ay.redirect(a, t.openInNewTab && !p.rr ? "_blank" : void 0)
}
).catch(n=>{
let i = {
error: !0,
message: (0,
y.t)("community.actions.failed_to_create_a_new_file_from_hub_file_name", {
hubFileName: t.hubFileName
})
};
r && (i.button = {
text: (0,
y.t)("community.actions.retry"),
action: ()=>e.dispatch(em({
...t,
canRetry: !1
}))
}),
e.dispatch(b.F.enqueue(i))
}
)
}
)
, e_ = (0,
S.T8)("HUB_FILE_GET_VERSIONS", async(e,{hubFileId: t, callback: n},{loadingKey: r})=>{
let i = null
, a = Promise.resolve(null)
, o = Z.H.getVersions({
id: t
});
a = o;
try {
i = (await o).data.meta
} catch (e) {
return
}
(0,
B.N)(a, e, r);
let {fig_file_metadata: l, remixed_from_metadata: s, ...d} = i
, c = d.related_content
, u = d.remixed_to_metadata
, p = [...c ? c.content : u || [], d];
s && p.push(s),
e.dispatch((0,
T.Sb)({
hubFiles: p,
src: "getHubFileVersions"
})),
l && (e.dispatch(ea({
hubFileId: d.id,
fileKey: l.key
})),
l.file && e.dispatch(A.yJ({
file: l.file
})),
l.roles && e.dispatch(en.uo({
roles: l.roles
}))),
e.dispatch(eo({
hubFileId: d.id
}));
let m = new Set(null == u ? void 0 : u.map(e=>e.id));
e.dispatch(ec({
hubFileId: d.id,
from: s ? s.id : null,
to: m
})),
null == n || n(d)
}
, ({hubFileId: e})=>`HUB_FILE_GET_VERSIONS_${e}`)
, eh = (0,
S.nF)((e,{fileKey: t})=>{
(0,
d.Ay)().user_data && $.D.getHubFileMetadata({
fileKey: t
}).then(({data: n})=>{
let r = n.meta.published_as;
(null == r ? void 0 : r.id) ? e.dispatch(ea({
hubFileId: r.id,
fileKey: t
})) : e.dispatch(el({
fileKey: t
}));
let i = n.meta.remixed_from_metadata
, a = n.meta.is_preview;
(null == i ? void 0 : i.id) ? e.dispatch(es({
hubFileId: i.id,
fileKey: t,
isPreview: !!a
})) : e.dispatch(ed({
fileKey: t
}));
let o = [r, i].filter(e=>!!e);
o.length > 0 && e.dispatch((0,
T.Sb)({
hubFiles: o,
src: "getHubFileMetadata"
}))
}
).then(()=>{
(0,
d.kc)().ce_new_missing_fonts_logging && (0,
M.DI)()
}
).catch(e=>{
console.error(e)
}
).finally(()=>{
c.zl.set(s.x, !0)
}
)
}
)
, eg = (0,
w.d6)("HUB_FILE")
, {updateMetadata: ef, updateStatus: eE, clearMetadataAndStatus: ey, clearMetadata: eb} = eg
, ev = (0,
S.nF)((e,t)=>{
let n = t.onSuccess
, r = t.viewerMode === U.y4.SLIDE_TEMPLATE && (0,
I._)();
delete t.onSuccess;
let a = [];
if (r && X.UM) {
a = (0,
H.AC)(e.getState());
let n = (0,
H.x6)(e.getState());
if (!t.hubFileId && 0 === a.length || (0,
et.aB)(Object.values(n), new Set(a))) {
(0,
Q.Dl)(e.dispatch);
return
}
c.zl.set(X.UM, {
state: X.F4.PUBLISH_HUB_FILE_INITIATED
})
}
e.dispatch(eE({
id: t.fileKey,
status: {
code: W.aP.UPLOADING
}
})),
eT(e, t).then(({hubFile: r, actingProfile: a, profileCreated: o})=>(e.dispatch((0,
T.Sb)({
hubFiles: [r],
src: "createHubFile"
})),
e.dispatch(ea({
hubFileId: r.id,
fileKey: t.fileKey
})),
o && (a.profile_created = o,
e.dispatch(er.HZ(a))),
e.dispatch(er.Oo(a)),
e.dispatch(eE({
id: t.fileKey,
status: {
code: W.aP.SUCCESS
}
})),
t.suggestedCategory && (0,
i.sx)("community_category_suggestion", {
resourceType: "hub_file",
resourceId: r.id,
categoryId: r.category_id,
suggestedCategory: t.suggestedCategory
}, {
forwardToDatadog: !0
}),
null == n || n(r),
{
hubFile: r
})).then(({hubFile: n})=>{
if (!r || null === ei)
return;
let i = (0,
H.AC)(e.getState())
, a = Object.values((0,
H.x6)(e.getState())).map(e=>e.node_id)
, o = D.Ez5.slideThemeLibBindings().renameThemeForTemplatePublish(t.name) ? a : i;
if (o.length > 0) {
let {onPublishSuccess: t, onPublishProgress: r, onPublishError: i} = (0,
ee.u)(U._Y.SLIDES);
requestAnimationFrame(()=>{
e.dispatch(ei({
savepointDescription: "Community slide template publish",
itemsToPublish: new Set(o),
hubFileId: n.id,
onPublishSuccess: t,
onPublishProgress: r,
onPublishError: i
}))
}
)
} else
c.zl.set(X.UM, {
state: X.F4.PUBLISH_HUB_FILE_COMPLETED
})
}
).catch(n=>{
r && X.UM && c.zl.set(X.UM, {
state: X.F4.PUBLISH_HUB_FILE_ERRORED
}),
e.dispatch(b.F.enqueue({
message: n.message,
type: "hub-file-created-error",
error: !0
})),
e.dispatch(eE({
id: t.fileKey,
status: {
code: W.aP.FAILURE,
error: n.message
}
}))
}
)
}
);
function eI(e, t) {
if (!t)
return -1;
let n = t.buffer;
return n ? e.findIndex(e=>e.sha1 === (0,
_.Et)(n)) : t.sha1 ? e.findIndex(e=>e.sha1 === t.sha1) : -1
}
async function eT(e, t) {
var n;
let r;
let {fileKey: i, name: a, description: o, categoryId: l, publisherIds: s, tags: d, creatorPolicy: c, thumbnailBuffer: u, viewerMode: p, scalingMode: _, authorOrgId: f, authorTeamId: E, hasCustomUploadedThumbnail: b, validPrototype: v, commentsSetting: I, agreedToTos: T, isPaid: S, price: w, supportContact: A, carouselMedia: C, customCarouselThumbnail: N} = t;
if (f && E)
throw Error((0,
y.t)("community.actions.attempting_to_set_both_author_org_id_and_author_team_id_while_publishing"));
if (p === U.y4.PROTOTYPE && D.X3B.firstPagePrototypeStatus() !== D.bOM.VALID)
throw Error((0,
y.t)("community.actions.attempting_to_publish_an_invalid_prototype_as_a_prototype"));
let O = await (0,
V.m)(i, "Published to Community hub", o, e.dispatch).then(e=>e.id).catch(e=>{
var t;
throw (0,
m.$D)(h.e.COMMUNITY, e),
Error((null == (t = e.data) ? void 0 : t.message) || (0,
y.t)("community.actions.could_not_connect_to_the_server"))
}
);
try {
r = await eS(u, C || [], O)
} catch (e) {
throw (0,
m.$D)(h.e.COMMUNITY, e),
Error((0,
y.t)("community.actions.error_uploading_images_e", {
error: (0,
y.Jv)(e, null == (n = e.data) ? void 0 : n.message)
}))
}
let L = eI((null == r ? void 0 : r.carousel_images) || [], N)
, R = {
file_version_id: O,
name: a,
description: o,
tags: d,
category_id: l,
creator_policy: c,
signature: null == r ? void 0 : r.cover_image.signature,
cover_image_uploaded: null == r ? void 0 : r.cover_image.cover_image_uploaded,
publisher_ids: s,
viewer_mode: p,
scaling_mode: _,
author_org_id: f,
author_team_id: E,
has_custom_uploaded_thumbnail: b,
valid_prototype: v,
comments_setting: I,
agreed_to_tos: T,
is_paid: S,
price: w,
support_contact: A,
carousel_images: null == r ? void 0 : r.carousel_images,
cover_image_carousel_image: null == r ? void 0 : r.carousel_images[L]
};
return g.Ay.post("/api/hub_files", R).then(({data: e})=>{
let t = e.meta;
return {
hubFile: t.hub_file,
actingProfile: t.acting_profile,
profileCreated: t.profile_created
}
}
).catch(e=>{
throw (0,
m.$D)(h.e.COMMUNITY, e),
Error((0,
y.Jv)(e, (0,
y.t)("community.actions.could_not_publish_hub_file", {
error: e.message
})))
}
)
}
async function eS(e, t, n, r) {
let i, a, l, s;
let {uploadImages: d, allMedia: c} = (0,
k.Kg)(t);
if (!(null == e ? void 0 : e.length) && !(null == d ? void 0 : d.length))
return {
cover_image: {
cover_image_uploaded: !1,
signature: null
},
carousel_images: c
};
try {
let e = await g.Ay.post("/api/hub_files/upload", {
file_version_id: n,
hub_file_id: r,
images_sha1: d
});
({cover_image: {cover_image_upload_url: i, signature: a, fields: l}, carousel_images: s} = e.data.meta)
} catch (e) {
throw (0,
m.$D)(h.e.COMMUNITY, e),
Error((0,
y.Jv)(e, (0,
y.t)("community.actions.could_not_connect_to_the_server")))
}
let u = s.map(({url: e, fields: n, carousel_position: r})=>{
let i = t[r];
if (!i || !i.buffer)
return;
let a = new FormData;
return Object.entries(n).forEach(([e,t])=>a.append(e, t)),
a.set("content-type", (0,
o.i)(i.buffer) ?? "image/png"),
a.append("file", new Blob([i.buffer])),
fetch(e, {
method: "POST",
body: a
})
}
);
if (null == e ? void 0 : e.length) {
let t = new FormData;
Object.entries(l).forEach(([e,n])=>t.append(e, n)),
t.set("content-type", (0,
o.i)(e) ?? "image/png"),
t.append("file", new Blob([e])),
u.push(fetch(i, {
method: "POST",
body: t
}))
}
try {
return await Promise.all(u),
{
cover_image: {
cover_image_uploaded: null != e && !!e.length,
signature: a
},
carousel_images: c
}
} catch (e) {
throw (0,
m.$D)(h.e.COMMUNITY, e),
Error((0,
y.Jv)(e, (0,
y.t)("community.actions.error_connecting_to_server_to_upload_file_images")))
}
}
let ew = (0,
S.nF)(async(e,{payload: t, onSuccess: n})=>{
let r;
let {hubFileId: a, name: o, description: l, categoryId: s, suggestedCategory: d, creatorPolicy: c, publisherIds: u, tags: p, viewerMode: _, scalingMode: f, commentsSetting: v, price: I, supportContact: S, carouselMedia: w, customCarouselThumbnail: A, hasCustomUploadedThumbnail: C, thumbnailBuffer: N} = t;
try {
r = await eS(N, w || [], void 0, a)
} catch (t) {
throw (0,
m.$D)(h.e.COMMUNITY, t),
e.dispatch(b.F.enqueue({
message: (0,
y.t)("community.actions.error_uploading_images_publish_update_from_editor"),
type: "hub-file-updated-error",
error: !0
})),
Error(t)
}
let O = eI((null == r ? void 0 : r.carousel_images) || [], A)
, L = {
name: o,
description: l,
category_id: s,
creator_policy: c,
publisherIds: u,
tags: p,
viewer_mode: _,
scaling_mode: f,
comments_setting: v,
price: I,
support_contact: S,
carousel_images: null == r ? void 0 : r.carousel_images,
cover_image_carousel_image: null == r ? void 0 : r.carousel_images[O],
has_custom_uploaded_thumbnail: C,
cover_image_uploaded: null == r ? void 0 : r.cover_image.cover_image_uploaded,
signature: null == r ? void 0 : r.cover_image.signature
};
await g.Ay.put(`/api/hub_files/${a}`, L).then(({data: t})=>{
let r = t.meta;
e.dispatch((0,
T.Sb)({
hubFiles: [r],
src: "updateHubFile"
})),
d && (0,
i.sx)("community_category_suggestion", {
resourceType: "hub_file",
resourceId: r.id,
categoryId: r.category_id,
suggestedCategory: d
}, {
forwardToDatadog: !0
}),
null == n || n(r)
}
).catch(t=>{
let n = (0,
y.Jv)(t, (0,
y.t)("community.actions.an_error_occurred_while_updating_please_refresh_and_try_again"));
throw e.dispatch(E.s.error(n)),
(0,
m.$D)(h.e.COMMUNITY, t),
Error(`Error updating file ${t}`)
}
)
}
)
, eA = (0,
S.nF)((e,{hubFileId: t, redirectLink: n, onSuccess: r, onError: i})=>{
g.Ay.del(`/api/hub_files/${t}`).then(({data: t})=>{
let n = t.meta;
e.dispatch((0,
T.Sb)({
hubFiles: [n],
src: "unpublishHubFile"
}))
}
).then(()=>{
n && l.Ay.redirect(n),
null == r || r()
}
).catch(e=>{
(0,
m.$D)(h.e.COMMUNITY, e),
console.error(Error(`Error unpublishing file ${e}`)),
null == i || i()
}
)
}
)
, eC = (0,
S.MM)("OPTIMISTIC_DUPLICATE_HUB_FILE", (e,{hubFileId: t, viewContext: n},{optimistId: r})=>{
g.Ay.post(`/api/hub_files/v2/${t}/copy`).then(({data: o})=>{
e.dispatch(S.hp.commit(r));
let s = o.meta
, d = (0,
x.to)(s);
d = (0,
a.dR)(d, {
[F.pt.KEY]: F.pt.VALUE
}),
l.Ay.redirect(d, p.rr ? void 0 : "_blank");
let c = (0,
v.Z)(e.getState());
(0,
i.sx)(L.M5.HUB_FILE_DUPLICATED, {
hubFileId: t,
figFileKey: s.key,
viewContext: n,
...c
})
}
).catch(t=>{
e.dispatch(S.hp.revert(r)),
e.dispatch(b.F.enqueue({
message: (0,
y.t)("community.actions.unable_to_duplicate", {
error: (0,
y.Jv)(t, t.data.message)
}),
type: "HUB_FILE_DUPLICATE_FAILED",
error: !0
}))
}
)
}
)
, eN = (0,
S.nF)((e,{hubFileId: t},{loadingKey: n})=>{
let r = g.Ay.post(`/api/hub_files/${t}/like`);
(0,
B.N)(r, e, n),
r.catch(t=>{
var n;
e.dispatch(b.F.enqueue({
message: (0,
y.t)("community.actions.unable_to_like_this_file_error", {
error: (0,
y.Jv)(t, null == (n = t.data) ? void 0 : n.message)
}),
type: "HUB_FILE_LIKE_FAILED",
error: !0
}))
}
);
let i = e.getState().user
, a = i && (0,
P.sD)(i, e.getState().authedProfilesById);
(null == i ? void 0 : i.id) && a && (0,
u.WB)().optimisticallyCreate({
CommunityHubLike: {
[`optimistic-${t}-${a.id}`]: {
pluginId: null,
hubFileId: t,
profileId: a.id,
hiddenAt: null,
createdAt: new Date,
updatedAt: new Date,
canRead: !0
}
}
}, r)
}
, e=>`LIKE_HUB_FILE_${e}`)
, eO = (0,
S.T8)("UNLIKE_HUB_FILE", (e,{hubFileId: t, likeId: n},{loadingKey: r})=>{
var i;
let a = g.Ay.del(`/api/hub_files/${t}/like`);
(0,
B.N)(a, e, r),
a.catch(t=>{
e.dispatch(b.F.enqueue({
message: (0,
y.t)("community.actions.unable_to_unlike_this_file_error", {
error: (0,
y.Jv)(t, t.data.message)
}),
type: "HUB_FILE_UNLIKE_FAILED",
error: !0
}))
}
),
(null == (i = e.getState().user) ? void 0 : i.id) && n && (0,
u.WB)().optimisticallyDelete({
CommunityHubLike: {
[n]: null
}
}, a)
}
, e=>`UNLIKE_HUB_FILE_${e}`)
, eL = (0,
S.nF)((e,{hubFileId: t})=>g.Ay.post(`/api/hub_files/${t}/view`, {
hubFileId: t
}))
, eR = {}
, eP = (0,
S.nF)(async(e,{hubFileId: t})=>{
var n, r;
let a = null == (n = e.getState().user) ? void 0 : n.id;
a && ((0,
i.sx)(L.M5.SLIDE_TEMPLATE_USED, {
hubFileId: t
}),
null != (r = eR[a]) && r.includes(t) || await Y.C.updateSlideTemplateCommunityUsageCount({
hubFileId: t
}).then(()=>{
eR[a] || (eR[a] = []),
eR[a].includes(t) || eR[a].push(t)
}
).catch(e=>{
(0,
m.x1)("Error updating Community Slide Template usage count", e, {
hubFileId: t
}, {
reportAsSentryError: !0
})
}
))
}
)
, ek = (0,
S.nF)((e,t)=>{
(t === z.G4.FULLSCREEN || t === z.G4.FULLSCREEN_WITH_COMMENTS) && ((0,
i.sx)("Context Viewed", {
name: "hub-file-canvas-enter-fullscreen"
}),
t === z.G4.FULLSCREEN_WITH_COMMENTS && (0,
i.sx)("CTA Clicked", {
name: "community_hub_preview_comments_viewed"
}));
let n = {
...e.getState().selectedView,
fullscreenState: t
};
t === z.G4.FULLSCREEN && n.commentThreadId && delete n.commentThreadId,
e.dispatch(C.$T(n))
}
)
}
,
71425: (e,t,n)=>{
"use strict";
n.d(t, {
JZ: ()=>y,
QF: ()=>b,
qR: ()=>v
});
var r = n(776250)
, i = n(939863)
, a = n(392592)
, o = n(986270)
, l = n(441088)
, s = n(4564)
, d = n(215822)
, c = n(555328)
, u = n(809073)
, p = n(707033)
, m = n(867795)
, _ = n(76158)
, h = n(980820)
, g = n(164185)
, f = n(74021);
let E = (0,
s.M)()
, y = (0,
h.nF)(async(e,{resourceType: t, localFileIdToRemove: n})=>{
let s = null;
if (!E)
return;
let {added: h, existed: f} = await E.createMultipleNewLocalFileExtensions({
title: (0,
i.t)("community.actions.pick_extension_manifest_file"),
filters: [{
name: "Manifests",
extensions: ["json"]
}],
properties: ["openFile"]
}, 0);
if (null != (s = h && h[0] || f && f[0]))
try {
let h = await (0,
d.c2)(s, {
resourceType: t,
isPublishing: !1
});
if ("unknown" === t && (t = h.containsWidget ? "widget" : "plugin"),
(0,
r.sx)("Added new plugin", {
how: "loaded",
pluginId: h.id,
version: h.api,
isWidget: "widget" === t,
productType: "figma" === (0,
d.T)() ? "design" : "whiteboard",
isVsCode: (0,
l.T)()
}),
e.dispatch(b({
localFileId: s,
resourceType: t
})),
e.dispatch(a.F.enqueue({
message: h.name ? (0,
i.t)("community.actions.manifest_name_has_been_imported", {
manifestName: h.name
}) : "widget" === t ? (0,
i.t)("community.actions.widget_has_been_imported") : (0,
i.t)("community.actions.plugin_has_been_imported")
})),
(0,
g.s)({
initialX: 0,
initialY: 0,
initialTab: "figjam" === (0,
d.T)() ? "widget" === t ? m.p.WIDGETS : m.p.PLUGINS : void 0,
initialFdResourceTab: "figma" === (0,
d.T)() ? "widget" === t ? _.s.WIDGET : _.s.PLUGIN : void 0,
initialFdView: "figma" === (0,
d.T)() ? "development" : void 0,
scrollDevelopmentSectionIntoView: "figjam" === (0,
d.T)()
}),
n) {
let t = e.getState().localPlugins[n]
, r = (null == t ? void 0 : t.lastKnownPluginId) ?? t.plugin_id ?? t.manifest.id;
r !== h.id && r || e.dispatch(v(n))
}
let f = h.editorType;
null == f || f.forEach(n=>{
let r = "figjam" === n ? u.$A.FigJam : u.$A.Design;
t === c.bD.PLUGIN ? e.dispatch(o.gU({
storeInRecentsKey: r,
id: h.id || "",
version: "",
isDevelopment: !0,
currentUserId: (0,
p.o8)()
})) : t === c.bD.WIDGET && e.dispatch(o.RH({
storeInRecentsKey: r,
id: h.id || "",
version: "",
isDevelopment: !0,
currentUserId: (0,
p.o8)()
}))
}
)
} catch (t) {
e.dispatch(a.F.enqueue({
message: t.message,
error: !0
}))
}
}
)
, b = (0,
h.nF)(async(e,{localFileId: t, resourceType: n})=>{
let r = await (0,
d.t3)(t, {
resourceType: n
});
e.dispatch((0,
f.Po)(r))
}
)
, v = (0,
h.nF)((e,t)=>{
void 0 != t && (E && E.removeLocalFileExtension(t),
e.dispatch((0,
f.Zy)(t)))
}
)
}
,
74021: (e,t,n)=>{
"use strict";
n.d(t, {
Ob: ()=>E,
Po: ()=>y,
Zy: ()=>b,
_J: ()=>T
});
var r = n(167249)
, i = n(297666)
, a = n(881388)
, o = n(980820)
, l = n(113237)
, s = n(4564)
, d = n(428467)
, c = n(215822)
, u = n(384792)
, p = n(254527)
, m = n(561004)
, _ = n(376485)
, h = n(249436)
, g = n(742777)
, f = n(941381);
let E = (0,
r.N)("PLUGIN_INITIALIZE_LOCAL")
, y = (0,
r.N)("PLUGIN_UPDATE_LOCAL")
, b = (0,
r.N)("PLUGIN_DELETE_LOCAL")
, v = !1
, I = (0,
s.M)()
, T = (0,
o.nF)(async e=>{
if (I) {
if (I.isCompatibleWith({
desktopVersion: 59
})) {
let t = await I.getLocalManifestFileExtensionIdsToCachedMetadataMap() ?? {}
, n = Object.keys(t).map(e=>parseInt(e))
, r = await Promise.all(n.map(e=>(0,
c.t3)(e, {
resourceType: "unknown"
})))
, i = {};
r.forEach(e=>{
e.cachedContainsWidget = !!t[e.localFileId].cachedContainsWidget,
e.lastKnownPluginId = t[e.localFileId].lastKnownPluginId || "",
i[e.localFileId] = e
}
),
e.dispatch(E(i))
} else if (I.isCompatibleWith({
desktopVersion: 58
})) {
let t = await I.getLocalManifestFileExtensionIdsToCachedContainsWidgetMap()
, n = Object.keys(t).map(e=>parseInt(e))
, r = await Promise.all(n.map(e=>(0,
c.t3)(e, {
resourceType: "unknown"
})))
, i = {};
r.forEach(e=>{
e.cachedContainsWidget = !!t[e.localFileId],
i[e.localFileId] = e
}
),
e.dispatch(E(i))
} else {
let t = await I.getAllLocalFileExtensionIds()
, n = await Promise.all(t.map(e=>(0,
c.t3)(e, {
resourceType: "unknown"
})))
, r = {};
n.forEach(e=>{
r[e.localFileId] = e
}
),
e.dispatch(E(r))
}
if (!v) {
v = !0,
I.registerManifestChangeObserver(t=>{
var n;
if ("added" === t.type || "changed" === t.type) {
let r;
let i = t.id
, o = (0,
c.mm)(i, t.localLoadResult, {
resourceType: "unknown"
})
, l = null == (n = e.getState().localPlugins[i]) ? void 0 : n.plugin_id;
e.dispatch(y(o));
let s = e.getState()
, {publishingPlugins: u, localPlugins: p, publishedPlugins: m, publishedWidgets: _, currentUserOrgId: h, authedProfilesById: E, modalShown: b} = s
, v = u[i];
o.plugin_id !== l && (null == b ? void 0 : b.type) !== g.o.type && e.dispatch((0,
f.Ij)({
id: i
}));
try {
r = (0,
c.mI)({
...(0,
d.getPermissionsState)(s),
currentUserOrgId: h,
localPlugins: p,
publishedPlugins: m,
publishedWidgets: _,
authedProfilesById: E
}, i)
} catch (t) {
e.dispatch(a.s.error(t.message));
return
}
v && v.metadata && (0,
c.L1)(v.metadata) && !o.error && e.dispatch((0,
f.fy)({
id: i,
metadata: r
}))
} else
"removed" === t.type && e.dispatch(b(t.id))
}
);
let t = (0,
i.s)(t=>{
var n, r, i, a;
if ("added" === t.type || "changed" === t.type) {
let o = null == (r = null == (n = e.getState().mirror) ? void 0 : n.selectionProperties) ? void 0 : r.selectedWidgetInfo;
o && o.pluginID && l.x.mountWidget(o.pluginID, o.widgetID, "hot-reloading re-render");
let s = null == (i = (0,
u.SH)()) ? void 0 : i.plugin
, d = null == (a = (0,
u.SH)()) ? void 0 : a.triggeredFrom
, c = e.getState();
"manifestFileId"in t && s && (0,
_.ZQ)(s) && c.mirror.appModel.hotReloadPluginDev && t.manifestFileId === s.localFileId && (0,
p.hM)() && (async()=>{
await (0,
m.wY)(),
"codegen" !== d && (0,
p.A9)({
newTriggeredFrom: null
}),
(0,
h.c)()
}
)()
}
}
);
I.registerCodeChangeObserver(t),
I.registerManifestChangeObserver(t),
I.registerUiChangeObserver(t)
}
}
}
)
}
,
941381: (e,t,n)=>{
"use strict";
n.d(t, {
$Z: ()=>H,
Cf: ()=>z,
Dl: ()=>er,
GV: ()=>m.GV,
Ij: ()=>et,
KJ: ()=>X,
L4: ()=>k,
LP: ()=>$,
O8: ()=>K,
Qi: ()=>m.Qi,
R8: ()=>eo,
Vp: ()=>ei,
Vx: ()=>m.Vx,
W9: ()=>G,
a8: ()=>Z,
af: ()=>es,
b6: ()=>x,
et: ()=>el,
f1: ()=>W,
fd: ()=>F,
fs: ()=>B,
fy: ()=>Q,
gD: ()=>ee,
kA: ()=>Y,
l7: ()=>m.l7,
pZ: ()=>j,
pm: ()=>en,
se: ()=>M,
uF: ()=>D,
uV: ()=>m.uV,
uX: ()=>U,
uw: ()=>V,
wx: ()=>ed,
zn: ()=>ea
});
var r = n(167249)
, i = n(776250)
, a = n(38329)
, o = n(717037)
, l = n(776621)
, s = n(304783)
, d = n(27087)
, c = n(881388)
, u = n(939863)
, p = n(392592)
, m = n(84336)
, _ = n(545941)
, h = n(980820)
, g = n(63397)
, f = n(651705)
, E = n(182976)
, y = n(697551)
, b = n(782501)
, v = n(691205)
, I = n(428467)
, T = n(272794)
, S = n(215822)
, w = n(320741)
, A = n(303454)
, C = n(555328)
, N = n(813408)
, O = n(93623)
, L = n(492330)
, R = n(415408)
, P = n(56714);
let k = (0,
r.N)("PLUGIN_REPLACE_FEATURED")
, D = (0,
h.nF)((e,t,{loadingKey: n})=>{
if (!e.getState().user)
return;
let r = O.V.getPlugins()
, i = L.U.getWidgets();
r.then(({data: t})=>{
let n = t.meta;
e.dispatch((0,
m.Qi)({
publishedPlugins: n,
src: "initializeUserPublishedPlugins"
}))
}
),
i.then(({data: t})=>{
let n = t.meta;
e.dispatch((0,
m.Qi)({
publishedPlugins: n,
src: "initializeUserPublishedWidgets"
}))
}
),
(0,
w.N)(i, e, n)
}
)
, M = v.M4.Query({
fetch: async e=>(await O.V.getUnpublishedPlugins()).data.meta,
output: ({data: e})=>{
let t = {};
if (e)
for (let n of e)
t[n.id] = n;
return t
}
})
, F = v.M4.Query({
fetch: async e=>(await L.U.getUnpublishedWidgets()).data.meta,
output: ({data: e})=>{
let t = {};
if (e)
for (let n of e)
t[n.id] = n;
return t
}
})
, x = (0,
h.nF)((e,{widgetIDToVersions: t})=>{
let {publishedCanvasWidgetVersions: n, currentUserOrgId: r} = e.getState();
for (let[e,i] of Object.entries(t))
i.forEach(i=>{
var a;
let o = null == (a = n[e]) ? void 0 : a[i];
o && new Set(t[e]).forEach(e=>{
T.F.getAndCache({
...o,
id: e
}, r ?? void 0)
}
)
}
)
}
)
, U = (0,
h.nF)(async(e,{resourceId: t, resourceType: n})=>{
let r = n === C.bD.WIDGET ? L.U.getWidgets({
id: t
}) : O.V.getPlugins({
id: t
})
, {data: i} = await r
, a = i.meta.find(e=>e.id === t);
a && e.dispatch((0,
m.Qi)({
publishedPlugins: [a],
src: "getPublishedResource"
}))
}
)
, B = (0,
r.N)("UPDATE_PUBLISHED_CANVAS_WIDGET_VERSIONS")
, V = (0,
r.N)("UPDATE_FETCHED_CANVAS_WIDGET_VERSIONS");
async function H(e, t, n) {
var r;
return null == (r = (await G({
[e]: [t]
}, n))[e]) ? void 0 : r[t]
}
async function G(e, t) {
var n, r;
let i = null == (n = a.D.getState().openFile) ? void 0 : n.key
, o = await d.Ay.post("/api/widgets/v2/versions", {
ids_to_versions: e,
org_id: t,
file_key: i
})
, l = (null == (r = null == o ? void 0 : o.data) ? void 0 : r.meta) || {};
return a.D.dispatch(B(l)),
a.D.dispatch(V(Object.fromEntries(Object.entries(e).map(([e,t])=>[e, Object.fromEntries(t.map(e=>[e, !0]))])))),
l
}
let W = (0,
h.nF)(async(e,{pluginIds: t})=>{
var n;
let {currentUserOrgId: r, publishedPlugins: i} = e.getState()
, o = t.filter(e=>!i[e]);
if (o.length)
try {
let e = await O.V.postPluginsBatch(o, r)
, t = (null == (n = e.data) ? void 0 : n.meta) ?? [];
a.D.dispatch((0,
m.Qi)({
publishedPlugins: t,
src: "fetchPublishedPlugins",
overrideInstallStatus: !0
}))
} catch {
return
}
}
)
, K = (0,
h.nF)(async(e,{widgetIds: t})=>{
var n;
let {currentUserOrgId: r, publishedWidgets: i} = e.getState()
, o = t.filter(e=>!i[e]);
if (o.length)
try {
let e = await d.Ay.post("/api/widgets/batch", {
ids: o,
org_id: r
})
, t = (null == (n = e.data) ? void 0 : n.meta) ?? [];
a.D.dispatch((0,
m.Qi)({
publishedPlugins: t,
src: "fetchPublishedWidgets",
overrideInstallStatus: !0
}))
} catch {
return
}
}
)
, z = (0,
h.nF)(async(e,{widgetIDAndVersions: t})=>{
let {currentUserOrgId: n} = e.getState()
, r = []
, i = {};
t.forEach(({widgetID: e, widgetVersionID: t})=>{
i[e] ? i[e].includes(t) || i[e].push(t) : (r.push(e),
i[e] = [t])
}
),
0 !== r.length && (await G(i, n),
e.dispatch(x({
widgetIDToVersions: i
})),
e.dispatch(K({
widgetIds: Object.keys(i)
})))
}
)
, j = (0,
h.T8)("GET_COMMUNITY_PROFILE_PLUGINS", (e,t,{loadingKey: n})=>{
let r = O.V.getProfile({
profileId: t.profileId,
currentOrgId: e.getState().currentUserOrgId || void 0
})
, i = (0,
P.UM)(t.profileId);
return (0,
w.N)(r, e, n),
r.then(async({data: t})=>{
let n = [...await i, ...t.meta];
return e.dispatch((0,
m.Qi)({
publishedPlugins: n,
src: "getCommunityProfilePlugins"
})),
n
}
)
}
, ({profileId: e})=>`GET_COMMUNITY_PROFILE_PLUGINS_${e}`)
, Y = (0,
h.T8)("GET_COMMUNITY_PROFILE_WIDGETS", (e,t,{loadingKey: n})=>{
let r = L.U.getProfile({
profileId: t.profileId,
currentOrgId: e.getState().currentUserOrgId || void 0
})
, i = (0,
P.Jr)(t.profileId);
return (0,
w.N)(r, e, n),
r.then(async({data: t})=>{
let n = [...await i, ...t.meta];
return e.dispatch((0,
m.Qi)({
publishedPlugins: n,
src: "getCommunityProfileWidgets"
})),
n
}
)
}
, ({profileId: e})=>`GET_COMMUNITY_PROFILE_WIDGETS_${e}`)
, $ = (0,
h.T8)("GET_ORG_PUBLISHED_PLUGINS", (e,t,{loadingKey: n})=>{
let r = O.V.getOrg({
orgId: t
});
return (0,
w.N)(r, e, n),
r.then(({data: t})=>{
let n = t.meta;
return e.dispatch((0,
m.Qi)({
publishedPlugins: n,
src: "getOrgPublishedPlugins"
})),
n
}
)
}
, e=>`GET_ORG_PUBLISHED_PLUGINS_${e}`)
, Z = (0,
h.T8)("GET_ORG_PUBLISHED_WIDGETS", async(e,t,{loadingKey: n})=>{
var r;
try {
e.dispatch(E.Cx({
key: n
}));
let i = await L.U.getOrg({
orgId: t
})
, a = (null == (r = null == i ? void 0 : i.data) ? void 0 : r.meta) || [];
return e.dispatch((0,
m.Qi)({
publishedPlugins: a,
src: "getOrgPublishedWidgets"
})),
e.dispatch(E.x2({
key: n
})),
a
} catch (t) {
return c.s.flash(t.message || (0,
u.t)("community.actions.an_error_occurred_while_trying_to_fetch_the_org_widgets_list")),
e.dispatch(E.of({
key: n
})),
[]
}
}
, e=>`GET_ORG_PUBLISHED_WIDGETS_${e}`);
async function q(e, t, n) {
if (null === e.current_plugin_version_id || !e.id)
throw Error((0,
u.t)("community.actions.resource_is_invalid"));
let r = 0;
t.iconBlob && (r = (0,
S.wf)(t.iconBlob));
let a = 0;
t.coverBlob && (a = (0,
S.oD)(t.coverBlob));
let o = t.carouselMedia
, {uploadImages: c, uploadVideos: p, allMedia: m} = (0,
b.Kg)(o)
, _ = (await d.Ay.post(`/api/${(0,
y.KH)(e, {
pluralized: !0
})}/${e.id}/images/upload`, {
images_sha1: c
})).data.meta
, h = Promise.resolve(!1)
, g = t.iconBlob;
void 0 !== g && (h = (0,
b.ck)(g).then(e=>d.Ay.crossOriginPut(_.icon_path, e, {
raw: !0,
headers: {
...d.Ay.defaults.headers,
"Content-Type": g.type
}
})).then(()=>!0).catch(t=>{
(0,
l.$D)(s.e.COMMUNITY, t);
let n = (0,
u.Jv)(t, (0,
u.t)("community.actions.could_not_connect_to_the_server"));
throw Error((0,
C.xQ)(e) ? (0,
u.t)("community.actions.error_uploading_widget_icon_error", {
error: n
}) : (0,
u.t)("community.actions.error_uploading_plugin_icon_error", {
error: n
}))
}
));
let f = Promise.resolve(!1)
, E = t.coverBlob;
void 0 !== E && (f = (0,
b.ck)(E).then(e=>d.Ay.crossOriginPut(_.cover_image_path, e, {
raw: !0,
headers: {
...d.Ay.defaults.headers,
"Content-Type": E.type
}
})).then(()=>!0).catch(t=>{
var n, r;
throw (0,
l.$D)(s.e.COMMUNITY, t),
Error((0,
C.xQ)(e) ? (0,
u.t)("community.actions.error_uploading_widget_artwork_image_error", {
error: (0,
u.Jv)(t, (null == (n = t.data) ? void 0 : n.message) || "unknown error")
}) : (0,
u.t)("community.actions.error_uploading_plugin_artwork_image_error", {
error: (0,
u.Jv)(t, (null == (r = t.data) ? void 0 : r.message) || "unknown error")
}))
}
));
let {snapshotBlob: v} = t
, I = Promise.resolve(!1);
void 0 !== v && (I = (0,
b.ck)(v).then(e=>d.Ay.crossOriginPut(_.snapshot_path, e, {
raw: !0,
headers: {
...d.Ay.defaults.headers,
"Content-Type": v.type
}
})).then(()=>!0).catch(e=>{
var t;
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error((0,
u.t)("community.actions.error_uploading_widget_snapshot_image_error", {
error: (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "unknown error")
}))
}
));
let T = (0,
b.Rd)(_.carousel_images, o)
, [w,N,O] = await Promise.all([h, f, I, T])
, L = p.map(t=>(0,
A.Gf)((0,
y.KH)(e, {
pluralized: !0
}), e.id, {
sha1: t.sha1,
bytes: t.bytes
}, t.video_thumbnail_buffer, t.video_thumbnail_sha1).then(e=>{
m.push({
carousel_position: t.carousel_position,
sha1: e.sha1,
video_file_uuid: e.videoFileUuid,
video_thumbnail_sha1: e.videoThumbnailSha1
})
}
).then(()=>!0).catch(e=>{
var t;
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error((0,
u.t)("community.actions.error_uploading_plugin_video_error", {
error: (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "unknown error")
}))
}
));
await Promise.all(L);
let {data: R} = await d.Ay.put(`/api/${(0,
y.KH)(e, {
pluralized: !0
})}/${e.id}/versions/${t.id}`, {
icon_uploaded: w,
cover_image_uploaded: N,
snapshot_uploaded: O,
carousel_media: m,
name: t.name,
description: t.description,
tagline: t.tagline,
creator_policy: t.creatorPolicy,
release_notes: t.releaseNotes,
comments_setting: e.comments_setting,
category_id: e.category_id,
image_upload_nonce: _.image_upload_nonce,
playground_fig_file_key: t.playground_fig_file_key,
playground_file_publish_type: n
}).catch(e=>{
var t;
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error((0,
u.t)("community.actions.error_finalizing_plugin_error", {
error: (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "unknown error")
}))
}
)
, P = R.meta;
P.plugin.redirect_thumbnail_url = _.cover_image_path.split("?")[0];
let k = P.plugin;
if (k.id !== e.id)
throw Error((0,
u.t)("community.actions.the_published_resource_i_ds_do_not_match"));
return (0,
i.sx)("Hub Plugin Update Version", {
pluginId: e.id,
isWidget: e.is_widget,
iconFileSize: r,
coverFileSize: a
}),
{
publishedPlugin: k,
profile: P.profile
}
}
async function J(e, t, n, r, a, o, c, p, m, _) {
var h;
let g;
if (!e)
throw Error((0,
u.t)("community.actions.plugin_id_is_invalid"));
let[f,E] = await Promise.all([(0,
S.c2)(t, {
resourceType: (0,
y.nF)(m),
isPublishing: !0
}), (0,
S.MB)(t)])
, v = (0,
S.ZT)(E)
, I = 0;
n.iconBlob && (I = (0,
S.wf)(n.iconBlob));
let T = 0;
n.coverBlob && (T = (0,
S.oD)(n.coverBlob));
let w = o.tokens.map(e=>e.content)
, C = n.carouselMedia
, {uploadImages: N, uploadVideos: O, allMedia: L} = (0,
b.Kg)(C)
, R = {
manifest: f,
release_notes: n.releaseNotes,
name: n.name,
description: n.description,
tagline: n.tagline,
creator_policy: n.creatorPolicy,
tags: w,
category_id: a,
images_sha1: N
};
g = m ? d.Ay.post(`/api/widgets/${e}/upload`, R) : d.Ay.post(`/api/plugins/${e}/upload`, R);
let {codeUploadUrl: P, iconUploadUrl: k, coverImageUploadUrl: D, snapshotUploadUrl: M, signature: F, versionId: x, imageUploadNonce: U, carouselImageUrls: B} = await g.then(({data: e})=>({
codeUploadUrl: e.meta.code_upload_url,
iconUploadUrl: e.meta.icon_upload_url,
coverImageUploadUrl: e.meta.cover_image_upload_url,
snapshotUploadUrl: e.meta.snapshot_upload_url,
signature: e.meta.signature,
versionId: e.meta.version_id,
imageUploadNonce: e.meta.image_upload_nonce,
carouselImageUrls: e.meta.carousel_images
})).catch(e=>{
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error((0,
u.Jv)(e, (0,
u.t)("community.actions.could_not_connect_to_the_server")))
}
)
, V = e=>{
let t = e.data;
if (!t || "string" != typeof t)
return;
let n = new DOMParser().parseFromString(t, "text/xml").getElementsByTagName("Code");
if (n && n[0] && "EntityTooLarge" === n[0].textContent)
return (0,
u.t)("community.actions.file_too_large")
}
, H = Promise.resolve(!1);
E && (H = (e=>{
if (e.fields && e.code_path) {
let {fields: t, code_path: n} = e
, r = new FormData;
return Object.entries(t).forEach(([e,t])=>r.append(e, t)),
r.set("Content-Type", "text/javascript"),
r.append("file", E),
d.Ay.crossOriginPost(n, r, {
raw: !0,
headers: {
"Content-Type": "multipart/form-data",
"Cache-Control": "private, max-age=86400"
}
})
}
return "string" == typeof e ? d.Ay.crossOriginPut(P, E, {
headers: {
...d.Ay.defaults.headers,
"Content-Type": ""
}
}) : Promise.reject(Error("Invalid presigned_url"))
}
)(P).then(()=>!0).catch(e=>{
(0,
l.$D)(s.e.COMMUNITY, e);
let t = V(e) ?? (0,
u.Jv)(e, (0,
u.t)("community.actions.could_not_connect_to_the_server"));
throw Error(m ? (0,
u.t)("community.actions.error_uploading_widget_code_error", {
error: t
}) : (0,
u.t)("community.actions.error_uploading_plugin_code_error", {
error: t
}))
}
));
let G = (e,t,n)=>{
if (e.fields && e.image_path) {
let {fields: n, image_path: r} = e
, i = new FormData;
return Object.entries(n).forEach(([e,t])=>i.append(e, t)),
i.set("Content-Type", t.type),
i.append("file", t),
d.Ay.crossOriginPost(r, i, {
raw: !0,
headers: {
"Content-Type": t.type
}
})
}
return "string" == typeof e ? d.Ay.crossOriginPut(e, n, {
raw: !0,
headers: {
...d.Ay.defaults.headers,
"Content-Type": t.type
}
}) : Promise.reject(Error("Invalid presigned_url"))
}
, W = Promise.resolve(!1)
, K = n.iconBlob;
null != K && (W = (0,
b.ck)(K).then(e=>G(k, K, e)).then(()=>!0).catch(e=>{
var t;
(0,
l.$D)(s.e.COMMUNITY, e);
let n = V(e) ?? (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "unknown error");
throw Error(m ? (0,
u.t)("community.actions.error_uploading_widget_icon_error", {
error: n
}) : (0,
u.t)("community.actions.error_uploading_plugin_icon_error", {
error: n
}))
}
));
let z = Promise.resolve(!1)
, j = n.coverBlob;
null != j && (z = (0,
b.ck)(j).then(e=>G(D, j, e)).then(()=>!0).catch(e=>{
(0,
l.$D)(s.e.COMMUNITY, e);
let t = V(e) ?? (0,
u.Jv)(e, (0,
u.t)("community.actions.could_not_connect_to_the_server"));
throw Error(m ? (0,
u.t)("community.actions.error_uploading_widget_artwork_image_error", {
error: t
}) : (0,
u.t)("community.actions.error_uploading_plugin_artwork_image_error", {
error: t
}))
}
));
let {snapshotBlob: Y} = n
, $ = Promise.resolve(!1);
null != Y && ($ = (0,
b.ck)(Y).then(e=>G(M, Y, e)).then(()=>!0).catch(e=>{
var t;
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error((0,
u.t)("community.actions.error_uploading_widget_snapshot_image_error", {
error: V(e) ?? (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "unknown error")
}))
}
));
let Z = (0,
b.Rd)(B, C)
, [q,J,X,Q] = await Promise.all([H, W, z, $, Z])
, ee = O.map(t=>(0,
A.Gf)(m ? "widgets" : "plugins", e, {
sha1: t.sha1,
bytes: t.bytes
}, t.video_thumbnail_buffer, t.video_thumbnail_sha1).then(e=>{
L.push({
carousel_position: t.carousel_position,
sha1: e.sha1,
video_file_uuid: e.videoFileUuid,
video_thumbnail_sha1: e.videoThumbnailSha1
})
}
).then(()=>!0).catch(e=>{
var t;
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error((0,
u.t)("community.actions.error_uploading_plugin_video_error", {
error: (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "unknown error")
}))
}
));
await Promise.all(ee);
let {data: et} = await d.Ay.put(`/api/${(0,
y.nF)(!!m, {
pluralized: !0
})}/${e}/versions/${x}`, {
icon_uploaded: J,
cover_image_uploaded: X,
snapshot_uploaded: Q,
carousel_media: L,
code_uploaded: q,
comments_setting: r,
category_id: a,
signature: F,
image_upload_nonce: U,
agreed_to_tos: c,
org_id: p,
playground_fig_file_key: n.playground_fig_file_key,
playground_file_publish_type: _
}).catch(e=>{
var t, n;
throw (0,
l.$D)(s.e.COMMUNITY, e),
Error(m ? (0,
u.t)("community.actions.error_finalizing_widget_error", {
error: (0,
u.Jv)(e, (null == (t = e.data) ? void 0 : t.message) || "")
}) : (0,
u.t)("community.actions.error_finalizing_plugin_error", {
error: (0,
u.Jv)(e, (null == (n = e.data) ? void 0 : n.message) || "")
}))
}
)
, en = et.meta
, er = en.plugin;
if (er.id !== e)
throw Error((0,
u.t)("community.actions.the_published_resource_i_ds_do_not_match"));
return (0,
i.sx)("Hub Plugin Publish Version", {
pluginId: e,
hasUI: !!f.ui,
apiVersion: f.api,
codeLength: v,
iconFileSize: I,
coverFileSize: T,
isWidget: m,
editorType: null == (h = f.editorType) ? void 0 : h.sort().join(", ")
}),
{
publishedPlugin: er,
profile: en.profile
}
}
(0,
h.T8)("GET_PUBLIC_PROFILE_PLUGINS", (e,{handle: t, orgId: n},{loadingKey: r})=>{
let i = O.V.getProfile({
profileId: t,
currentOrgId: n || void 0
});
(0,
w.N)(i, e, r),
i.then(({data: t})=>{
let n = t.meta;
e.dispatch((0,
m.Qi)({
publishedPlugins: n,
src: "getPublicProfilePlugins"
}))
}
)
}
, ({handle: e})=>`GET_PUBLIC_PROFILE_PLUGINS_${e}`);
let X = (0,
g.d6)("PLUGIN")
, {updateMetadata: Q, updateStatus: ee, clearMetadataAndStatus: et, clearMetadata: en} = X
, er = (0,
h.nF)(async(e,t)=>{
let {pluginVersion: n, localFileId: r, pluginId: i, commentsSetting: a, categoryId: d, callback: c, agreedToTos: _, orgId: h, isWidget: g, playgroundFilePublishType: E, tags: y} = t;
e.dispatch(ee({
id: r,
status: {
code: N.aP.UPLOADING
}
}));
try {
let {publishedPlugin: t, profile: o} = await J(i, r, n, a, d, y, _, h, g, E);
e.dispatch((0,
m.Qi)({
publishedPlugins: [t],
src: "publishPluginVersion"
})),
o && (e.dispatch(f.HZ(o)),
e.dispatch(f.Oo(o))),
e.dispatch(ee({
id: r,
status: {
code: N.aP.SUCCESS
}
})),
e.dispatch(en({
id: r
})),
c()
} catch (n) {
e.dispatch(ee({
id: r,
status: {
code: N.aP.FAILURE,
error: n.message
}
}));
let t = (0,
u.t)("community.actions.could_not_publish_plugin_error", {
error: (0,
u.Jv)(n, n.message)
});
throw n instanceof o.q ? (0,
R.MZ)(e.dispatch, (0,
u.t)("check_network_compatibility.error_bell.video_upload.message")) : n.message.includes("invalid word") || e.dispatch(p.F.enqueue({
message: t,
error: !0
})),
(0,
l.$D)(s.e.COMMUNITY, n),
Error(t)
}
}
)
, ei = (0,
h.nF)(async(e,t)=>{
let {resource: n, pluginVersion: r, callback: i, playgroundFilePublishType: a, localFileIdOrPluginId: d} = t;
try {
e.dispatch(ee({
id: d,
status: {
code: N.aP.UPLOADING
}
}));
let {profile: t, publishedPlugin: o} = await q(n, r, a);
e.dispatch((0,
m.Qi)({
publishedPlugins: [o],
src: "updatePublishedPluginRole"
})),
t && e.dispatch(f.Oo(t)),
e.dispatch(ee({
id: d,
status: {
code: N.aP.SUCCESS
}
})),
i()
} catch (n) {
let t = (0,
u.Jv)(n, n.message);
throw n instanceof o.q ? (0,
R.MZ)(e.dispatch, (0,
u.t)("check_network_compatibility.error_bell.video_upload.message")) : e.dispatch(p.F.enqueue({
message: t,
error: !0
})),
e.dispatch(ee({
id: d,
status: {
code: N.aP.FAILURE,
error: t
}
})),
(0,
l.$D)(s.e.COMMUNITY, n),
Error(`Failed plugin patchVersion: ${n.message}`)
}
}
)
, ea = (0,
h.nF)(async(e,{pluginId: t, role: n, agreedToTos: r, isWidget: a})=>{
let o;
let c = {
org_id: n.org ? n.org.id : void 0,
is_public: n.is_public,
agreed_to_tos: r
};
o = a ? d.Ay.put(`/api/widgets/${t}/roles`, c) : d.Ay.put(`/api/plugins/${t}/roles`, c),
await o.then(({data: n})=>{
let r = n.meta;
(0,
i.sx)("Hub Plugin Publish Role", {
pluginId: t,
toPublic: r.roles.is_public,
toOrg: !!r.roles.org,
needApproval: (0,
_.AC)(r),
isWidget: a
}),
e.dispatch((0,
m.Qi)({
publishedPlugins: [r],
src: "updatePublishedPluginRole"
}))
}
).catch(t=>{
var n;
e.dispatch(p.F.enqueue({
message: (0,
u.t)("community.publishing.could_not_publish_plugin_error", {
error: (0,
u.Jv)(t, null == (n = t.data) ? void 0 : n.message)
}),
error: !0
})),
(0,
l.$D)(s.e.COMMUNITY, t)
}
)
}
)
, eo = (0,
h.nF)(async(e,t)=>{
let n;
if (t.authorOrgId && t.authorTeamId) {
console.error("Attempting to set both authorOrgId and authorTeamId while publishing");
return
}
let {isWidget: r, pluginId: i} = t
, a = {
tags: t.tags,
support_contact: t.supportContact,
author_org_id: t.authorOrgId,
author_team_id: t.authorTeamId,
publisher_ids: t.publisherIds,
hide_related_content_by_others: t.hideRelatedContentByOthers,
agreed_to_tos: t.agreedToTos,
is_paid: t.isPaid,
is_subscription: t.isSubscription,
price: t.price,
has_freemium_code: t.hasFreemiumCode,
category_id: t.categoryId,
is_public: t.isPublic,
annual_discount_percentage: t.annualDiscount,
is_annual_discount_active: t.isAnnualDiscountActive
};
n = r ? d.Ay.put(`/api/widgets/${i}`, a) : d.Ay.put(`/api/plugins/${i}`, a),
await n.then(({data: n})=>{
var r;
let i = n.meta;
e.dispatch((0,
m.Qi)({
publishedPlugins: [i],
src: "updatePublishedPlugin"
})),
null == (r = t.onSuccess) || r.call(t)
}
).catch(t=>{
var n;
e.dispatch(p.F.enqueue({
message: (0,
u.t)("community.publishing.could_not_publish_plugin_error", {
error: (0,
u.Jv)(t, null == (n = t.data) ? void 0 : n.message)
}),
error: !0
})),
(0,
l.$D)(s.e.COMMUNITY, t)
}
)
}
)
, el = (0,
h.nF)((e,{resource: t})=>{
d.Ay.del(`/api/${(0,
y.KH)(t, {
pluralized: !0
})}/${t.id}`).then(({data: n})=>{
let r = n.meta;
e.dispatch((0,
m.Qi)({
publishedPlugins: [r],
src: "unpublishPublishedPlugin"
})),
(0,
i.sx)("Hub Unpublish Plugin", {
pluginId: t.id,
...(0,
S.L8)(t)
})
}
).catch(n=>{
var r, i;
e.dispatch(p.F.enqueue({
message: (0,
C.xQ)(t) ? (0,
u.t)("community.actions.could_not_publish_widget_error", {
error: (0,
u.Jv)(n, null == (r = n.data) ? void 0 : r.message)
}) : (0,
u.t)("community.actions.could_not_publish_plugin_error", {
error: (0,
u.Jv)(n, null == (i = n.data) ? void 0 : i.message)
}),
error: !0
})),
(0,
l.$D)(s.e.COMMUNITY, n)
}
)
}
)
, es = (0,
h.T8)("GET_PLUGIN_VERSIONS", (e,{id: t, resourceType: n},{loadingKey: r})=>{
let i = t=>e.dispatch((0,
m.Qi)({
publishedPlugins: [t],
src: "getResourceVersions",
overrideInstallStatus: !0
}))
, a = n === C.bD.WIDGET ? L.U.getVersions({
widgetId: t
}) : O.V.getVersions({
pluginId: t
});
(0,
w.N)(a, e, r),
a.then(({data: e})=>{
i(e.meta.plugin)
}
).catch(e=>{
var r;
console.log(`Versions of ${n} with id ${t} cannot be fetched at this time:`, null == (r = e.data) ? void 0 : r.message)
}
)
}
, ({id: e})=>`GET_PLUGIN_VERSIONS_${e}`)
, ed = (0,
h.nF)(async(e,t)=>{
let {role: n, userId: r, resource: i} = t;
try {
let t = (i.is_widget ? await d.Ay.put(`/api/widgets/${i.id}/publishers/${r}`, {
role: n
}) : await d.Ay.put(`/api/plugins/${i.id}/publishers/${r}`, {
role: n
})).data.meta.plugin
, a = e.getState().user;
n === N.kM.NONE && r === (null == a ? void 0 : a.id) && (t.plugin_publishers = {
accepted: [],
pending: []
}),
e.dispatch((0,
m.Qi)({
publishedPlugins: [t],
src: "setPluginPublisherRole"
}));
let o = e.getState()
, {publishingPlugins: l, localPlugins: s, publishedPlugins: c, publishedWidgets: u, currentUserOrgId: p, authedProfilesById: _} = o
, h = Object.values(s).find(e=>e.plugin_id === i.id)
, g = (null == h ? void 0 : h.localFileId) ?? i.id
, f = (0,
S.mI)({
...(0,
I.getPermissionsState)(o),
currentUserOrgId: p,
localPlugins: s,
publishedPlugins: c,
publishedWidgets: u,
authedProfilesById: _
}, null == h ? void 0 : h.localFileId)
, E = {
...l[g].metadata,
author: f.author,
publishers: f.publishers,
creators: f.creators,
blockPublishingOnToS: f.blockPublishingOnToS
};
e.dispatch(Q({
id: g,
metadata: E
}))
} catch (t) {
throw e.dispatch(p.F.enqueue({
message: (0,
u.Jv)(t, t.message),
error: !0
})),
(0,
l.$D)(s.e.COMMUNITY, t),
Error(t.message)
}
}
)
}
,
727749: (e,t,n)=>{
"use strict";
n.d(t, {
d6: ()=>C,
g3: ()=>S,
oj: ()=>R,
s1: ()=>N,
uR: ()=>A,
zI: ()=>w
});
var r = n(167249)
, i = n(776250)
, a = n(966712)
, o = n(309225)
, l = n(743282)
, s = n(27087)
, d = n(939863)
, c = n(392592)
, u = n(980820)
, p = n(941381)
, m = n(662275)
, _ = n(107877)
, h = n(756085)
, g = n(988022)
, f = n(697551)
, E = n(555328)
, y = n(813408)
, b = n(93623)
, v = n(492330)
, I = n(395750)
, T = n(479296);
let S = (0,
r.N)("SET_SAVED_PLUGIN_VERSIONS")
, w = (0,
u.T8)("SET_SAVED_WIDGET_VERSIONS", (e,t)=>{
let n = {};
Object.keys(t).forEach(e=>{
n[e] = [t[e].id]
}
),
e.dispatch(p.b6({
widgetIDToVersions: n
}))
}
);
var A = (e=>(e.COMMUNITY_HUB = "community_hub",
e.INSERTS_MODAL = "inserts_modal",
e.DESIGN_ONBOARDING = "design_editor_onboarding",
e))(A || {});
let C = (0,
T.n)((0,
u.MM)("SAVE_EXTENSION", (e,{id: t, resourceType: n, versionId: r, orgId: m, communityProfile: g, onSuccess: b, hideSuccessVisualBell: v, onFail: I, source: T, optimisticData: S},{optimistId: w})=>{
var A;
let C = e.getState()
, N = {
plugin_version_id: r,
org_id: m,
current_org_id: C.currentUserOrgId
};
N.can_handle_first_time_install = !0,
N.use_upgraded_version = !0,
N.profile_id = null == (A = e.getState().authedActiveCommunityProfile) ? void 0 : A.id,
n === E.vt.WIDGET && (N.current_org_id = void 0);
let O = `/api/${(0,
f.n)(n)}/${t}/install`
, L = s.Ay.post(O, N);
if (C.user && (null == S ? void 0 : S.resource)) {
let e = `optimistic-plugin-install-${(0,
l.g)()}`
, t = (0,
h.N3)(S.resource, {
userId: m ? null : C.user.id,
orgId: m ?? null
});
t && (0,
o.WB)().optimisticallyCreate({
PluginInstall: {
[e]: t
}
}, L)
}
L.then(({data: t})=>{
e.dispatch(u.hp.commit(w));
let r = t.meta
, o = n === E.vt.WIDGET ? {
publishedPlugins: [r],
src: "installResource",
isWidget: !0
} : {
publishedPlugins: [r],
src: "installResource"
};
if (e.dispatch(p.Qi({
...o,
overrideInstallStatus: !0
})),
null == b || b(),
!v) {
let t = (()=>{
var t;
if ("inserts_modal" === T)
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_saved") : (0,
d.t)("community.saves.widget_saved");
if ((0,
a.kc)().cmty_deprecate_browse_as_admin) {
if (m) {
let t = Object.values(e.getState().authedProfilesById).find(e=>e.org_id === m);
return (0,
d.t)(n === E.vt.PLUGIN ? "community.saves.plugin_saved_for_everyone_at" : "community.saves.widget_saved_for_everyone_at", {
orgName: (null == t ? void 0 : t.name) || "your org"
})
}
if (null == (t = e.getState().user) ? void 0 : t.community_profile_id)
return (0,
d.t)(n === E.vt.PLUGIN ? "community.saves.plugin_saved_for_your_account_and_profile" : "community.saves.widget_saved_for_your_account_and_profile")
} else {
if ((null == g ? void 0 : g.entity_type) === y.o1.ORG)
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_saved_for_everyone_at", {
orgName: g.name
}) : (0,
d.t)("community.saves.widget_saved_for_everyone_at", {
orgName: g.name
});
if (null == g ? void 0 : g.public_at)
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_saved_for_your_account_and_profile") : (0,
d.t)("community.saves.widget_saved_for_your_account_and_profile")
}
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_saved_for_your_account") : (0,
d.t)("community.saves.widget_saved_for_your_account")
}
)();
e.dispatch(c.F.enqueue({
message: t,
type: "plugin-installed"
}))
}
(0,
i.sx)((0,
E.xQ)(r) ? _.M5.WIDGET_INSTALLED : _.M5.PLUGIN_INSTALLED, {
communityHubEntity: (0,
E.xQ)(r) ? _.ZO.WIDGETS : _.ZO.PLUGINS,
communityHubEntityId: r.id,
source: T
})
}
).catch(t=>{
var r, i;
null == I || I(),
e.dispatch(u.hp.revert(w)),
403 === t.data.status ? e.dispatch(c.F.enqueue({
message: n === E.vt.PLUGIN ? (0,
d.t)("community.actions.unable_to_save_plugin_error", {
error: (0,
d.Jv)(t, null == (r = t.data) ? void 0 : r.message)
}) : (0,
d.t)("community.actions.unable_to_save_widget_error", {
error: (0,
d.Jv)(t, null == (i = t.data) ? void 0 : i.message)
}),
type: "PLUGIN_INSTALL_FAILED",
error: !0
})) : e.dispatch(c.F.enqueue({
message: n === E.vt.PLUGIN ? (0,
d.t)("community.actions.unable_to_save_plugin_please_try_again") : (0,
d.t)("community.actions.unable_to_save_widget_please_try_again"),
type: "PLUGIN_INSTALL_FAILED",
error: !0
}))
}
)
}
))
, N = (0,
u.MM)("UNSAVE_EXTENSION", (e,{id: t, resourceType: n, orgId: r, communityProfile: l, hideSuccessVisualBell: m, source: h, optimisticData: g},{optimistId: b})=>{
var v;
let I = {
org_id: r,
current_org_id: e.getState().currentUserOrgId
};
I.use_upgraded_version = !0,
I.profile_id = null == (v = e.getState().authedActiveCommunityProfile) ? void 0 : v.id,
n === E.vt.WIDGET && (I.current_org_id = void 0);
let T = `/api/${(0,
f.n)(n)}/${t}/install`
, S = s.Ay.del(T, I);
(null == g ? void 0 : g.pluginInstallId) && (0,
o.WB)().optimisticallyDelete({
PluginInstall: {
[g.pluginInstallId]: null
}
}, S),
S.then(({data: o})=>{
let s = o.meta
, g = n === E.vt.WIDGET ? {
publishedPlugins: [s],
src: "uninstallResource",
isWidget: !0
} : {
publishedPlugins: [s],
src: "uninstallResource"
};
if (e.dispatch(p.Qi({
...g,
overrideInstallStatus: !0
})),
e.dispatch(u.hp.commit(b)),
!m) {
let i = {
message: (()=>{
var t;
if ("inserts_modal" === h)
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_removed_from_your_account") : (0,
d.t)("community.saves.widget_removed_from_your_account");
if ((0,
a.kc)().cmty_deprecate_browse_as_admin) {
if (r) {
let t = Object.values(e.getState().authedProfilesById).find(e=>e.org_id === r);
return (0,
d.t)(n === E.vt.PLUGIN ? "community.saves.plugin_removed_for_everyone_at" : "community.saves.widget_removed_for_everyone_at", {
orgName: (null == t ? void 0 : t.name) || "your org"
})
}
if (null == (t = e.getState().user) ? void 0 : t.community_profile_id)
return (0,
d.t)(n === E.vt.PLUGIN ? "community.saves.plugin_removed_from_your_account_and_profile" : "community.saves.widget_removed_from_your_account_and_profile")
} else {
if ((null == l ? void 0 : l.entity_type) === y.o1.ORG)
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_removed_for_everyone_at", {
orgName: l.name
}) : (0,
d.t)("community.saves.widget_removed_for_everyone_at", {
orgName: l.name
});
if (null == l ? void 0 : l.public_at)
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_removed_from_your_account_and_profile") : (0,
d.t)("community.saves.widget_removed_from_your_account_and_profile")
}
return n === E.vt.PLUGIN ? (0,
d.t)("community.saves.plugin_removed_from_your_account") : (0,
d.t)("community.saves.widget_removed_from_your_account")
}
)(),
type: "PLUGIN_UNINSTALL_SUCCESS",
button: {
text: (0,
d.t)("community.undo"),
action: ()=>{
e.dispatch(c.F.dequeue({
matchType: "PLUGIN_UNINSTALL_SUCCESS"
})),
e.dispatch(C({
id: t,
resourceType: n,
orgId: r,
communityProfile: l,
hideSuccessVisualBell: !0,
source: h
}))
}
}
};
e.dispatch(c.F.enqueue(i))
}
(0,
i.sx)((0,
E.xQ)(s) ? _.M5.WIDGET_UNINSTALLED : _.M5.PLUGIN_UNINSTALLED, {
communityHubEntity: (0,
E.xQ)(s) ? _.ZO.WIDGETS : _.ZO.PLUGINS,
communityHubEntityId: s.id,
source: h
})
}
).catch(t=>{
e.dispatch(u.hp.revert(b)),
console.error(t)
}
)
}
)
, O = {
[E.bD.PLUGIN]: function(e) {
return b.V.getInstallStatus({
orgId: e
})
},
[E.bD.WIDGET]: function(e) {
return v.U.getInstallStatus({
orgId: e
})
}
}
, L = (0,
u.nF)((e,t)=>{
let n = {
plugin_id: t.id
};
t.orgId && (n.org_id = t.orgId);
let r = O[t.resourceType];
r && r(t.orgId).then(({data: e})=>{
t.callback(!e.meta.previously_installed_plugin)
}
).catch(n=>{
e.dispatch(c.F.enqueue({
type: "plugin-save-error",
message: t.resourceType === E.vt.PLUGIN ? (0,
d.t)("community.actions.unable_to_save_plugin_error", {
error: (0,
d.Jv)(n, n.data.message || "unknown error")
}) : (0,
d.t)("community.actions.unable_to_save_widget_error", {
error: (0,
d.Jv)(n, n.data.message || "unknown error")
}),
error: !0
}))
}
)
}
)
, R = (0,
u.nF)((e,t)=>{
let {orgId: n, id: r, resourceType: i, communityProfile: a} = t;
e.dispatch(L({
orgId: n,
id: r,
resourceType: i,
callback: t=>{
t ? ((0,
g.Cu)({
action: _.s0.PLUGIN_INSTALL_CONFIRMATION_MODAL_SHOWN,
communityHubEntity: _.ZO.PLUGINS,
communityHubEntityId: r
}),
e.dispatch((0,
m.to)({
type: I.c,
data: {
dispatch: e.dispatch,
id: r,
resourceType: i,
callback: ()=>{
e.dispatch(C({
id: r,
resourceType: i,
orgId: n,
communityProfile: a,
source: "community_hub"
}))
}
}
}))) : e.dispatch(C({
id: r,
resourceType: i,
orgId: n,
communityProfile: a,
source: "community_hub"
}))
}
}))
}
)
}
,
162895: (e,t,n)=>{
"use strict";
n.d(t, {
JA: ()=>K,
aI: ()=>j,
cx: ()=>G,
hx: ()=>W,
lx: ()=>z
});
var r = n(776250)
, i = n(966712)
, a = n(430370)
, o = n(563706)
, l = n(776621)
, s = n(304783)
, d = n(761870)
, c = n(939863)
, u = n(392592)
, p = n(934533)
, m = n(351226)
, _ = n(848680)
, h = n(291861)
, g = n(980820)
, f = n(662275)
, E = n(697551)
, y = n(655215)
, b = n(935308)
, v = n(411916)
, I = n(750668)
, T = n(428467)
, S = n(215822)
, w = n(935757)
, A = n(555328)
, C = n(239671)
, N = n(608902)
, O = n(809073)
, L = n(379791)
, R = n(237870)
, P = n(734309)
, k = n(488578)
, D = n(986270)
, M = n(372069)
, F = n(109226)
, x = n(685121);
let U = ()=>async e=>{
let t = "org-admin-team-creation";
e(u.F.enqueue({
message: (0,
c.t)("resources_tab.create_team_modal.team_creation_loading"),
type: t,
icon: p.zX.SPINNER
}));
try {
let n = (await L.G.createStarterTeam()).data.meta;
return e(u.F.dequeue({
matchType: t
})),
e(f.Lo()),
n
} catch (n) {
return e(u.F.dequeue({
matchType: t
})),
e(f.Lo()),
e(u.F.enqueue({
message: (0,
c.t)("general.an_error_occurred"),
error: !0
})),
Promise.reject()
}
}
, B = (0,
R.Ju)(k.Rw)
, V = (e,t,n)=>r=>{
r(f.to({
type: B,
data: {
confirmationTitle: (0,
c.t)("resources_tab.create_team_modal.modal_title", {
extensionName: e
}),
content: (0,
c.t)("resources_tab.create_team_modal.content", {
orgName: t
}),
confirmText: (0,
c.t)("general.continue"),
onConfirm: ()=>{
r(U()).then(n)
}
,
hideCancel: !0
}
}))
}
, H = (0,
g.nF)(async(e,t)=>{
let {workspaces: n, plans: r} = t
, i = e.getState()
, {authedUsers: a, orgById: o} = i
, l = n.map(e=>({
...e,
workspaceName: (0,
v.HE)(i, e),
user: a.byId[e.userId]
}))
, s = await Promise.all(l.map(async e=>{
let n = e.orgId && o[e.orgId]
, a = !0
, l = !0;
if (n && (a = await (0,
y.hb)(t.resource, n),
l = (0,
y.VT)(t.resource, n)),
(0,
S.Rt)(t.resource) && !(0,
T.canMemberOrg)(e.orgId, i, e.userId))
return;
let s = (0,
h.y)(e, (0,
C.wN)(t.editorType), i, r);
return s.publicPluginsOrWidgetDisabled = !a,
s.extensionRequestsAllowed = l,
s
}
))
, d = [];
if (s.forEach(e=>{
void 0 !== e && d.push(e)
}
),
d.length <= 1) {
let e = d.length ? d[0] : void 0;
t.onSelectWorkspace(e);
return
}
e.dispatch(f.to({
type: m._,
data: {
payload: {
extension: t.resource,
workspaces: d,
onSelectWorkspace: t.onSelectWorkspace,
mode: "new_file"
}
}
}))
}
)
, G = (0,
g.nF)((e,t)=>{
if (o.rr) {
window.location.href = "/login";
return
}
let n = t.isWidget ? (0,
c.t)("community.logged_out.sign_up_modal_widget_header") : (0,
c.t)("community.logged_out.sign_up_modal_plugin_header");
e.dispatch(d.I.init({
origin: "plugin_try_signed_out"
})),
e.dispatch(f.to({
type: P.l,
data: {
headerText: n,
icon: t.isWidget ? x.A : F.A,
dispatch: e.dispatch,
redirectPath: t.redirectPath
}
}))
}
)
, W = (0,
g.nF)((e,t)=>{
let n = e.getState().user
, r = !!t.extension.isWidget
, i = t.extension.currentPluginVersion;
if (!i || !n)
return;
let a = i.hasPlaygroundFile
, o = t.fullscreenEditorType === C.nT.DevHandoff
, l = {
fullscreenEditorType: t.fullscreenEditorType,
tryPluginId: t.extension.id,
tryPluginVersionId: i.id,
tryPluginName: i.name ?? "",
isWidget: r,
isPlaygroundFile: !!(a || o),
fuid: n.id,
tryPluginParams: void 0
};
(0,
w.Y9)(n.id, !1, null),
(0,
M.j)(l, null, null, n.id),
(()=>{
let a = {
storeInRecentsKey: t.fullscreenEditorType === C.nT.Whiteboard ? O.$A.FigJam : O.$A.Design,
id: t.extension.id,
version: i.id,
currentUserId: n.id
};
r ? e.dispatch(D.RH(a)) : e.dispatch(D.gU(a))
}
)()
}
)
, K = (0,
g.nF)((e,t)=>{
let n = e.getState()
, r = n.user
, i = !!t.extension.isWidget
, o = t.extension.currentPluginVersion;
if (!o || !r)
return;
let l = ()=>{
let n = {
storeInRecentsKey: t.fullscreenEditorType === C.nT.Whiteboard ? O.$A.FigJam : O.$A.Design,
id: t.extension.id,
version: o.id,
currentUserId: r.id
};
i ? e.dispatch(D.RH(n)) : e.dispatch(D.gU(n))
}
, s = o.hasPlaygroundFile
, d = t.fullscreenEditorType === C.nT.DevHandoff
, c = {
fullscreenEditorType: t.fullscreenEditorType,
tryPluginId: t.extension.id,
tryPluginVersionId: o.id,
tryPluginName: o.name ?? "",
isWidget: i,
isPlaygroundFile: !!(s || d),
fuid: r.id,
tryPluginParams: void 0
}
, u = n.plans.filter(e=>e.plan_type === N.O.TEAM).map(e=>{
let t = (0,
a.O)(e, r.id);
return {
...t,
workspaceName: (0,
v.HE)(n, t),
user: r
}
}
);
if (0 === u.length) {
e.dispatch(V(o.name, n.orgById[n.currentUserOrgId].name, e=>{
(0,
w.Y9)(r.id, !1, null, void 0, e.id),
(0,
M.j)(c, null, e.id, r.id),
l()
}
));
return
}
1 === u.length ? ((0,
w.Y9)(r.id, !1, null, void 0, u[0].teamId ?? null),
(0,
M.j)(c, null, u[0].teamId ?? null, r.id),
l()) : e.dispatch(f.to({
type: m._,
data: {
payload: {
workspaces: u,
onSelectWorkspace: e=>{
(0,
w.Y9)(r.id, !1, null, void 0, (null == e ? void 0 : e.teamId) ?? null),
(0,
M.j)(c, null, (null == e ? void 0 : e.teamId) ?? null, r.id),
l()
}
,
mode: "new_file"
}
}
}))
}
)
, z = (0,
g.nF)((e,t)=>{
let n = e.getState()
, r = n.user
, i = !!t.extension.isWidget
, a = t.extension.currentPluginVersion;
if (!a || !r)
return;
let o = a.hasPlaygroundFile
, l = t.fullscreenEditorType === C.nT.DevHandoff
, s = {
fullscreenEditorType: t.fullscreenEditorType,
tryPluginId: t.extension.id,
tryPluginVersionId: a.id,
tryPluginName: a.name ?? "",
isWidget: i,
isPlaygroundFile: !!(o || l),
fuid: r.id,
tryPluginParams: void 0
}
, d = n.plans.find(e=>e.plan_type === N.O.ORG && e.plan_id === n.currentUserOrgId);
(0,
w.Y9)(r.id, !1, d.plan_id, void 0, null),
(0,
M.j)(s, d.plan_id, null, r.id),
(()=>{
let n = {
storeInRecentsKey: t.fullscreenEditorType === C.nT.Whiteboard ? O.$A.FigJam : O.$A.Design,
id: t.extension.id,
version: a.id,
currentUserId: r.id
};
i ? e.dispatch(D.RH(n)) : e.dispatch(D.gU(n))
}
)()
}
)
, j = (0,
g.nF)(async(e,t)=>{
var n;
let a = e.getState()
, {user: o, authedActiveCommunityProfile: d} = a
, p = (0,
_.Z)(a)
, m = (0,
A.xQ)(t.resource)
, h = (0,
S.uF)(t.resource);
if (!o) {
e.dispatch(G({
isWidget: m
}));
return
}
let g = ()=>{
let n = {
storeInRecentsKey: t.fullscreenEditorType === C.nT.Whiteboard ? O.$A.FigJam : O.$A.Design,
id: t.resource.id,
version: h.id,
currentUserId: o.id
};
m ? e.dispatch(D.RH(n)) : e.dispatch(D.gU(n))
}
, f = (0,
E.Gg)(a).length > 1
, T = (0,
E.cs)(d)
, N = !!((null == o ? void 0 : o.id) && (0,
v.Tt)([o.id], a))
, L = []
, R = null;
if ((0,
i.kc)().ps_benchmark)
try {
R = await e.dispatch((0,
b.nm)(!0)),
L = (0,
I.F)(a, t.resource, R)
} catch (r) {
let t = (null == (n = null == r ? void 0 : r.data) ? void 0 : n.message) || (0,
c.t)("file_browser.error_try_again");
e.dispatch(u.F.enqueue({
message: t,
type: "error"
}))
}
else
L = (0,
I.F)(a, t.resource, {
plansByUserId: {},
teams: [],
orgs: []
});
let P = (f || N) && !T && !t.fileKey;
(0,
i.kc)().ps_benchmark && (P = L.length > 1 && !t.fileKey);
let k = {
fullscreenEditorType: t.fullscreenEditorType,
tryPluginId: t.resource.id,
tryPluginVersionId: h.id,
tryPluginName: h.name,
tryPluginEditorType: (0,
S.iz)(h.manifest.editorType),
isWidget: m,
isPlaygroundFile: !!t.isPlaygroundFile,
tryPluginParams: void 0,
fileKey: t.fileKey
};
if ((0,
r.sx)("CTA Clicked", {
name: "Try it out",
pluginId: t.resource.id,
isWidget: m,
editorType: t.fullscreenEditorType,
isMonetized: (0,
A.m3)(t.resource),
fileKey: t.fileKey,
...p
}),
P)
(0,
r.sx)("try_it_out_drafts_picker_menu_opened", {
pluginId: t.resource.id,
isWidget: m,
...p
}),
e.dispatch(H({
plans: R,
workspaces: L,
resource: t.resource,
editorType: (0,
C.oD)(t.fullscreenEditorType),
onSelectWorkspace: e=>{
e ? (k.fuid = e.userId,
(0,
w.Y9)(e.userId, !1, e.orgId, void 0, e.teamId ?? null),
(0,
M.j)(k, e.orgId, e.teamId ?? null, e.userId)) : (0,
M.j)(k, null, null, o.id),
g()
}
}));
else {
if ((0,
i.kc)().ps_benchmark) {
if (t.fileKey)
k.fuid = t.userId ?? o.id,
(0,
M.j)(k, null, null, k.fuid);
else if (1 === L.length) {
let n = L[0];
if (n.orgId && !(0,
y.VT)(t.resource, a.orgById[n.orgId]) && !await (0,
y.hb)(t.resource, a.orgById[n.orgId])) {
e.dispatch(V(h.name, (0,
v.HE)(a, n), e=>{
(0,
w.Y9)(o.id, !1, null, void 0, e.id),
(0,
M.j)(k, null, e.id, o.id),
g()
}
));
return
}
(0,
w.Y9)(n.userId, !1, n.orgId, void 0, n.teamId ?? null),
(0,
M.j)(k, n.orgId, n.teamId ?? null, n.userId)
} else
(0,
l.$D)(s.e.COMMUNITY, Error("No workspaces found")),
e.dispatch(u.F.enqueue({
message: (0,
c.t)("file_browser.error_try_again"),
error: !0
}))
} else
t.userId ? (k.fuid = t.userId,
(0,
w.Y9)(t.userId, !1),
(0,
M.j)(k, null, null, t.userId)) : (0,
M.j)(k, null, null, o.id);
g()
}
}
)
}
,
225266: (e,t,n)=>{
"use strict";
n.d(t, {
MZ: ()=>b,
Nn: ()=>g,
Xt: ()=>T,
aq: ()=>I,
bb: ()=>y,
dx: ()=>E,
gI: ()=>S,
z8: ()=>f
});
var r = n(27087)
, i = n(881388)
, a = n(939863)
, o = n(868389)
, l = n(980820)
, s = n(941381)
, d = n(988022)
, c = n(215822)
, u = n(772192)
, p = n(867795)
, m = n(76158)
, _ = n(164185)
, h = n(186642)
, g = (e=>(e.INVITE_TILE = "invite_tile",
e.COMMUNITY_PAGE = "community_page",
e))(g || {});
let f = (0,
l.nF)((e,t)=>{
r.Ay.put("/api/community_publishers/accept", t).then(({data: t})=>{
let n = v(t.meta);
n && e.dispatch(n)
}
).catch(t=>{
let n = (0,
a.Jv)(t);
throw e.dispatch(i.s.error((0,
a.t)("community.actions.an_error_occurred_accepting_invite_please_refresh_and_try_again"))),
Error(`Error updating resource ${n}`)
}
)
}
)
, E = (0,
l.nF)((e,t)=>{
let {src: n, plugin_id: o, widget_id: l} = t;
r.Ay.put("/api/plugin_publishers/accept", {
plugin_id: o,
widget_id: l
}).then(({data: t})=>{
var r;
let i = v(t.meta);
i && e.dispatch(i),
(0,
d.ye)("plugin_publisher_invite_accepted", {
src: n,
userId: null == (r = e.getState().user) ? void 0 : r.id,
pluginId: o ?? l,
isWidget: !!l
});
let a = (0,
c.T)();
o ? (0,
_.s)({
initialX: 0,
initialY: 0,
initialTab: "figjam" === a ? p.p.PLUGINS : void 0,
initialFdResourceTab: "figma" === a ? m.s.PLUGIN : void 0,
scrollDevelopmentSectionIntoView: "figjam" === a,
initialFdView: "figma" === a ? "development" : void 0
}) : l && (0,
_.s)({
initialX: 0,
initialY: 0,
initialTab: "figjam" === a ? p.p.WIDGETS : void 0,
initialFdResourceTab: "figma" === a ? m.s.WIDGET : void 0,
scrollDevelopmentSectionIntoView: "figjam" === a,
initialFdView: "figma" === a ? "development" : void 0
})
}
).catch(t=>{
let n = (0,
a.Jv)(t);
throw e.dispatch(i.s.error((0,
a.t)("community.actions.an_error_occurred_accepting_invite_please_refresh_and_try_again"))),
Error(`Error updating resource ${n}`)
}
)
}
)
, y = (0,
l.nF)((e,t)=>{
r.Ay.del("/api/community_publishers/remove", t).then(({data: t})=>{
let n = v(t.meta);
n && e.dispatch(n)
}
).catch(t=>{
let n = (0,
a.Jv)(t);
throw e.dispatch(i.s.error((0,
a.t)("community.actions.an_error_occurred_while_removing_publisher_please_refresh_and_try_again"))),
Error(`Error updating resource ${n}`)
}
)
}
)
, b = (0,
l.nF)((e,t)=>{
r.Ay.del("/api/plugin_publishers/remove", t).then(({data: n})=>{
var r;
let i = n.meta;
if (n.meta.plugin) {
let {plugin_publishers: e} = n.meta.plugin;
n.meta.plugin.plugin_publishers = e ?? {
accepted: [],
pending: []
}
} else if (n.meta.widget) {
let {plugin_publishers: e} = n.meta.widget;
n.meta.widget.plugin_publishers = e ?? {
accepted: [],
pending: []
}
}
let a = v(i);
a && e.dispatch(a),
(0,
d.ye)("plugin_publisher_invite_removed", {
src: t.src,
userId: null == (r = e.getState().user) ? void 0 : r.id,
pluginId: t.plugin_id || t.widget_id,
isWidget: !!t.widget_id
})
}
).catch(t=>{
let n = (0,
a.Jv)(t);
throw e.dispatch(i.s.error((0,
a.t)("community.actions.an_error_occurred_while_removing_publisher_please_refresh_and_try_again"))),
Error(`Error updating resource ${n}`)
}
)
}
);
function v(e) {
return e.hub_file ? (0,
o.Sb)({
hubFiles: [e.hub_file],
src: "removeCommunityPublisher"
}) : e.plugin ? s.Qi({
publishedPlugins: [e.plugin],
src: "removeCommunityPublisher"
}) : e.widget ? s.Qi({
publishedPlugins: [e.widget],
src: "removeCommunityPublisher"
}) : void 0
}
(0,
l.nF)((e,t)=>{
e.dispatch(s.pZ({
profileId: t
})),
e.dispatch(s.kA({
profileId: t
})),
e.dispatch((0,
h.H)(t))
}
);
let I = (0,
l.nF)(e=>{
u.R.loadPluginsPublishedByUser(e),
u.R.loadPluginsAuthoredByCurrentOrg(e)
}
)
, T = (0,
l.nF)(e=>{
u.R.loadPluginsAuthoredByCurrentOrg(e)
}
)
, S = (0,
l.nF)(async e=>{
await u.R.loadWidgetsAuthoredByCurrentOrg(e)
}
)
}
,
970516: (e,t,n)=>{
"use strict";
n.d(t, {
II: ()=>u,
S: ()=>_,
TH: ()=>p,
lW: ()=>c,
le: ()=>m
});
var r = n(686759)
, i = n(939863)
, a = n(392592)
, o = n(662275)
, l = n(707465)
, s = n(558356)
, d = n(980820);
let c = (0,
d.nF)((e,t)=>{
let n = t.stringToCopy
, o = {
withLineBreaks: !(t.ignoreLineBreaks ?? !0),
successText: t.successText
};
(0,
r.Dk)(n, o).then(()=>{
e.dispatch(a.F.enqueue({
type: "copied_to_clipboard",
message: o.successText ?? (0,
i.t)("fullscreen_actions.copied_to_clipboard")
}))
}
)
}
)
, u = (0,
d.nF)((e,t)=>{
let n = t.emailList
, o = n.length
, l = n.join("; ");
(0,
r.Dk)(l).then(()=>{
e.dispatch(a.F.enqueue({
message: (0,
i.t)("copy_to_clipboard.emails_copied_to_clipboard", {
numEmails: o,
emailText: l
}),
type: "emails-copied"
}))
}
)
}
);
function p(e) {
return (0,
d.nF)((e,t)=>{
let n = t.selector.selectedViewToPath(t.selectedView, t.data);
if (!n)
return;
let r = new URL(n,document.baseURI).href;
e.dispatch(_({
url: r
}))
}
)(e)
}
let m = (0,
d.nF)((e,t)=>{
let n = new URL((0,
l.Np)(e.getState(), t),document.baseURI).href;
e.dispatch(_({
url: n
}))
}
)
, _ = (0,
d.nF)((e,t)=>{
let n = t.url;
(0,
r.Dk)(n).then(()=>{
e.dispatch(a.F.enqueue({
type: "link_copied_to_clipboard",
message: (0,
i.t)("copy_to_clipboard.link_to_selection_copied_to_clipboard")
}))
}
).catch(()=>{
e.dispatch(o.to({
type: s.o,
data: {
link: n
}
}))
}
)
}
)
}
,
56691: (e,t,n)=>{
"use strict";
n.d(t, {
Gb: ()=>R,
I$: ()=>k,
Mx: ()=>P,
Ri: ()=>L,
c3: ()=>x,
gt: ()=>M,
ht: ()=>C,
j3: ()=>O,
mg: ()=>N,
on: ()=>F,
x3: ()=>D
});
var r = n(167249)
, i = n(776250)
, a = n(627776)
, o = n(297666)
, l = n(517333)
, s = n(737947)
, d = n(430370)
, c = n(738269)
, u = n(119198)
, p = n(974105)
, m = n(788811)
, _ = n(99506)
, h = n(623746)
, g = n(428467)
, f = n(707465)
, E = n(776615)
, y = n(239671)
, b = n(945020)
, v = n(967409)
, I = n(915306)
, T = n(637590)
, S = n(980820)
, w = n(445092);
let A = (0,
S.nF)((e,{viewport: t})=>{
var n, r;
let {selectedView: i} = e.getState();
if ("fullscreen" === i.view) {
e.dispatch(c.$T({
...i,
viewport: t
}));
let a = (null == (n = (0,
m.ZG)()) ? void 0 : n.fileKey) || i.fileKey;
a && (null == (r = l.eD) || r.updateViewport(a, t))
}
}
)
, C = (0,
S.nF)(e=>{
let t = e.getState()
, n = M(t);
e.dispatch(w.Rz({
query: t.desktopNewTab.searchQuery,
searchScope: n,
searchModelType: v.uH.FILES
})),
e.dispatch(w.r0({
entryPoint: "desktop_new_tab"
})),
t = e.getState();
let r = (0,
f.xS)(t, {
view: "search",
entryPoint: "desktop_new_tab",
previousView: t.selectedView && ((0,
T.QB)(t.selectedView) || (0,
T.bN)(t.selectedView)) ? t.selectedView : void 0
});
s.Ay.redirect(r)
}
)
, N = (0,
r.N)("DESKTOP_NEW_TAB_SET_LOADING_BACKGROUND_COLOR")
, O = (0,
r.N)("DESKTOP_NEW_TAB_SET_IS_SEARCH_BAR_FOCUSED")
, L = (0,
r.N)("DESKTOP_NEW_TAB_SET_SEARCH_QUERY")
, R = (0,
S.nF)((e,t)=>{
let n = e.getState()
, r = t.result
, i = r.model
, a = {
position: t.index,
resource_id: i.key,
resource_type: r.search_model_type.toString(),
matched_queries: r.matched_queries,
result: r
}
, o = {
plan: (0,
d.K)(n)
};
new I.vj.Analytics(n.search,a,o).click(r.search_model_type, n.selectedView, {
action: t.clickAction
}),
e.dispatch(w.ky()),
e.dispatch(c.$T({
view: "fullscreen",
fileKey: i.key,
editorType: (0,
y.wN)(i.editor_type ?? _._Y.DESIGN)
}))
}
)
, P = (0,
S.nF)(async(e,t,{liveStore: n})=>{
let r = await n.fetchFile(t.fileKey);
(0,
i.sx)("Desktop New Tab Open Recent", {
itemType: "prototype",
fileKey: r.key
}),
e.dispatch(c.$T({
view: "prototype",
file: (0,
h.ge)(r),
nodeId: t.pageId,
pageId: t.pageId
}))
}
)
, k = (0,
S.nF)(async(e,t,{liveStore: n})=>{
let r = await n.fetchFile(t.fileKey);
(0,
i.sx)("Desktop New Tab Open Recent", {
itemType: "file",
fileKey: r.key
}),
e.dispatch(c.$T({
view: "fullscreen",
fileKey: r.key,
editorType: (0,
y.wN)(r.editor_type ?? _._Y.DESIGN)
}))
}
)
, D = (0,
S.nF)((e,t)=>{
let n = e.getState();
if (!n.desktopNewTab.isCreatingFile) {
let r = (0,
a.ce)() ? b.ai.SAME_TAB : b.ai.NEW_TAB
, i = (0,
p.xA)(e.getState(), r, t.projectId ? {
folderId: t.projectId
} : "drafts", {
from: b.f6.DESKTOP_NEW_TAB_BUTTON,
selectedView: n.selectedView
}, t.editorType, void 0);
e.dispatch(u.uM(i))
}
}
);
function M(e) {
let t = (0,
g.getPermissionsStateMemoized)(e);
return t.currentUserOrgId ? (0,
g.canMemberOrg)(t.currentUserOrgId, t) ? v.Rx.ORG : v.Rx.ORG_GUEST : v.Rx.PERSONAL
}
function F(e, t) {
return t === _._Y.WHITEBOARD ? "#ffffff" : `#${(0,
E.w2)(e)}`
}
let x = (0,
o.s)((e,t)=>{
e.dispatch(A({
viewport: t
}))
}
, 1e3)
}
,
244673: (e,t,n)=>{
"use strict";
n.d(t, {
A3: ()=>K,
Dx: ()=>C,
HS: ()=>R,
L: ()=>Y,
MG: ()=>x,
N9: ()=>X,
Ni: ()=>G,
Np: ()=>q,
OJ: ()=>L,
Ox: ()=>U,
P1: ()=>P,
Pg: ()=>en,
Qv: ()=>eo,
UQ: ()=>S,
UX: ()=>$,
VV: ()=>el,
Vk: ()=>ed,
WA: ()=>O,
_1: ()=>es,
c$: ()=>k,
g6: ()=>N,
gH: ()=>ei,
g_: ()=>D,
jt: ()=>J,
k1: ()=>ee,
lV: ()=>et,
lm: ()=>w,
lu: ()=>er,
mF: ()=>M,
mI: ()=>ea,
n0: ()=>Q,
ne: ()=>ec,
ot: ()=>B,
pX: ()=>V,
qV: ()=>Z,
qW: ()=>z,
rF: ()=>T,
tk: ()=>H,
wk: ()=>W
});
var r = n(167249)
, i = n(157663)
, a = n(297666)
, o = n(966712)
, l = n(939863)
, s = n(392592)
, d = n(988022)
, c = n(974105)
, u = n(857766)
, p = n(355513)
, m = n(852800)
, _ = n(960628)
, h = n(518261)
, g = n(846456)
, f = n(587467)
, E = n(411189)
, y = n(728406)
, b = n(368702)
, v = n(980820);
function I(e) {
return e.multiplayer.allUsers.length
}
function T(e, t, n) {
if (!e)
return;
let r = new g.a().selectedViewNameHelper(e, t, void 0 !== n ? function(e) {
let t = Math.max(0, e)
, n = t % 60
, r = (0,
y.YI)((t - n) / 60);
return `${r}:${(0,
y.YI)(n)}`
}(n) : void 0);
(0,
p.pE)(r, e.editor_type)
}
function S(e) {
return e ? e.isPaused ? e.lastReceivedSongTimestampMs : e.lastReceivedSongTimestampMs + (performance.now() - e.timeOrigin) : 0
}
let w = "active-song-not-found";
async function A(e, t) {
let n = e;
return await (0,
E._s)({
songID: e,
onSuccess: ()=>{}
,
onNotFound: ()=>{
t.dispatch(Y({
selectedSongID: "",
musicStartTimeMs: 0
})),
n = "",
t.dispatch(Z()),
t.dispatch(s.F.enqueue({
message: (0,
l.t)("whiteboard.timer.song_not_available_error"),
error: !0,
type: w
}))
}
}),
n
}
let C = (0,
v.T8)("SET_SELECTED_SONG_ID_MUSIC", (e,t)=>{
let {music: n} = e.getState().music
, r = !t.dontTransmitWhenPaused;
if (n && !n.isStopped && (!n.isPaused || r)) {
let r = e.getState().music.activeSongs.find(e=>e.song_id === t.selectedSongID);
e.dispatch(x({
eventName: "update-music-song-id",
isPaused: !n || n.isPaused,
selectedSongID: t.selectedSongID,
lastReceivedSongTimestampMs: (null == r ? void 0 : r.start_at_ms) || 0,
isStopped: !n || n.isStopped
}))
}
}
)
, N = (0,
v.nF)(e=>{
e.dispatch(O()),
(0,
E.I8)(),
(0,
E.om)()
}
)
, O = (0,
r.N)("RESET_LOCAL_MUSIC")
, L = (0,
v.nF)((e,t)=>{
if (e.dispatch(R(t)),
t.isPaused || t.isStopped || !t.selectedSongID)
(t.isPaused || t.isStopped) && (0,
E.c4)() && (0,
E.I8)();
else {
let n = F(t.selectedSongID, e.getState().music.activeSongs);
(0,
E.$_)(n, ()=>{
e.dispatch(D())
}
)
}
}
)
, R = (0,
r.N)("SET_MUSIC_STATE")
, P = (0,
v.T8)("RESUME_MUSIC", async(e,t)=>{
var n;
let r = S(t)
, i = null == (n = e.getState().music.music) ? void 0 : n.selectedSongID;
i && (i = await A(i, e)),
e.dispatch(x({
eventName: "resume-music",
isPaused: !1,
selectedSongID: i || "",
lastReceivedSongTimestampMs: r,
isStopped: !1
}))
}
)
, k = (0,
v.nF)((e,t)=>{
var n;
let r = S(t)
, i = null == (n = e.getState().music.music) ? void 0 : n.selectedSongID;
e.dispatch(x({
eventName: "pause-music",
isPaused: !0,
selectedSongID: i || "",
lastReceivedSongTimestampMs: r,
isStopped: !1
}))
}
)
, D = (0,
v.nF)(e=>{
var t;
let n = null == (t = e.getState().music.music) ? void 0 : t.selectedSongID;
e.dispatch(x({
eventName: "stop-music",
isPaused: !0,
selectedSongID: n || "",
lastReceivedSongTimestampMs: 0,
isStopped: !0
}))
}
)
, M = (0,
v.T8)("START_MUSIC", async(e,{musicStartTimeMs: t=0})=>{
let {music: n} = e.getState().music
, r = "";
n && (r = n.selectedSongID),
r && (r = await A(r, e)),
e.dispatch(x({
eventName: "start-music",
isPaused: !1,
selectedSongID: r,
lastReceivedSongTimestampMs: t,
isStopped: !1
}))
}
)
, F = (e,t)=>t.find(t=>t.song_id === e)
, x = (0,
v.T8)("SEND_MUSIC_MESSAGE", (e,t)=>{
var n;
let r = e.getState().music;
m.h3O.sendMusic(t.isPaused, ((null == (n = null == r ? void 0 : r.music) ? void 0 : n.musicMessageID) || 0) + 1, t.selectedSongID || "", t.lastReceivedSongTimestampMs || 0, t.isStopped)
}
);
(0,
v.nF)((e,t)=>{
"open" === t.state && (0,
b.D)(()=>{
var t;
(null == (t = e.getState().music) ? void 0 : t.modalState) === "open" && e.dispatch(U({
state: "closed",
userInitiated: !1
}))
}
),
e.dispatch(U(t))
}
);
let U = (0,
r.N)("SET_MUSIC_MODAL")
, B = (0,
r.N)("RESET_LOCAL_TIMER")
, V = (0,
v.T8)("SET_MUSIC_STANDALONE_VOLUME", (e,t)=>{
j(e.getState(), t)
}
)
, H = (0,
v.T8)("SET_MUSIC_IS_MUTED", (e,{isMuted: t, userInitiated: n})=>{
n && (0,
f.ym)(e.getState(), t)
}
)
, G = (0,
v.T8)("SET_TIMER_AND_MUSIC_ARE_MUTED", (e,{isMuted: t, userInitiated: n})=>{
n && (0,
f.ym)(e.getState(), t)
}
)
, W = (0,
r.N)("SET_STANDALONE_MUSIC_PLAYER")
, K = (0,
r.N)("SET_MAIN_MUSIC_PLAYER")
, z = (0,
v.T8)("SET_MUSIC_VOLUME", (e,t)=>{
j(e.getState(), t)
}
)
, j = (0,
a.s)((e,t)=>(0,
f.qV)(e, t), 1e3, !1)
, Y = (0,
v.T8)("SET_SELECTED_SONG_ID", (e,t)=>{
let {time: n} = e.getState().timer;
if (n && n.totalTimeMs > 0) {
let r = (0,
y.P$)(n);
e.dispatch(ei({
eventName: "update-timer-song-id",
totalTimeMs: n.totalTimeMs,
timeRemainingMs: r,
isPaused: n.isPaused,
songID: t.selectedSongID,
lastReceivedSongTimestampMs: t.musicStartTimeMs
})),
_.d1.timerChange("timerupdatesongid")
}
}
)
, $ = (0,
r.N)("GET_ACTIVE_SONGS_SUCCESS")
, Z = (0,
v.nF)(async e=>{
try {
let t = await h.N.getSongs();
if (!t || 200 !== t.status || !t.data || !t.data.meta)
throw i.k.warn("Failed to fetch active songs"),
Error("Api error while fetching active songs");
e.dispatch($(t.data.meta))
} catch (e) {
throw i.k.warn("Failed to fetch active songs"),
e
}
}
)
, q = (0,
r.N)("GET_ALL_SONGS_SUCCESS")
, J = (0,
v.nF)(async e=>{
if (!(0,
o.kc)().figjam_more_tracks_listen)
throw Error("Fetching all songs disabled");
try {
let t = await h.N.getAllSongs();
if (!t || 200 !== t.status || !t.data || !t.data.meta)
throw i.k.warn("Failed to fetch all songs"),
Error("Api error while fetching all songs");
e.dispatch(q(t.data.meta))
} catch (e) {
throw i.k.warn("Failed to fetch all songs"),
e
}
}
)
, X = (0,
r.N)("SET_SHOWING_FILE_FOOTER")
, Q = (0,
r.N)("SET_SELECTED_TYPED_PROP_DEF_ID")
, ee = (0,
r.N)("SET_START_CHIME_PLAYED")
, et = (0,
r.N)("SET_TIMER_NOTIFICATION")
, en = (0,
r.N)("SET_TIMER_AUDIO_ENABLED")
, er = (0,
v.T8)("SET_TIMER_MODAL", (e,t)=>{
var n, r;
if ("open" === t.state && (0,
y.FR)() && (0,
b.D)(()=>{
var t;
let n = (0,
y.FR)();
(null == (t = e.getState().timer) ? void 0 : t.modalState) === "open" && n && e.dispatch(er({
state: "closed",
userInitiated: !1
}))
}
),
t.userInitiated) {
let i = e.getState()
, a = (null == (n = i.timer.time) ? void 0 : n.timeRemainingMs) > 0;
(0,
d.ds)(`timer-modal-${t.state}`, null == (r = i.openFile) ? void 0 : r.key, i, {
"multiplayer-users": I(i),
"timer-active": a,
source: t.source
})
}
}
)
, ei = (0,
v.T8)("SEND_TIMER", (e,t)=>{
var n, r, i;
let a = e.getState()
, l = a.timer
, s = l.setBy;
if ("start-timer" === t.eventName) {
let e = a.multiplayer.allUsers.find(e=>e.sessionID === a.multiplayer.sessionID);
s = e ? e.name : (null == (n = (0,
o.Ay)().user_data) ? void 0 : n.handle) || "anonymous user"
}
if (m.h3O.sendTimer(t.totalTimeMs || 0, t.timeRemainingMs || 0, !!t.isPaused, ((null == (r = null == l ? void 0 : l.time) ? void 0 : r.timerID) || 0) + 1, s, t.songID || "", t.lastReceivedSongTimestampMs || 0),
t.eventName) {
let e = {
"multiplayer-users": I(a)
};
if ("adjust-timer" === t.eventName) {
let n = Math.round((t.totalTimeMs - a.timer.time.totalTimeMs) / 1e3);
e["time-added-s"] = n
} else
"start-timer" === t.eventName && (e["duration-s"] = Math.round(t.totalTimeMs / 1e3));
(0,
d.ds)(t.eventName, null == (i = a.openFile) ? void 0 : i.key, a, e, {
forwardToDatadog: !0
})
}
}
)
, ea = (0,
v.T8)("SET_TIMER", (e,t)=>{
if (0 === t.totalTimeMs) {
let t = e.getState()
, n = (0,
c.d1)(t);
if (n) {
let e = (0,
u.L8)(n, t.repos);
T(n, e)
}
}
}
)
, eo = (0,
v.T8)("START_TIMER", async(e,{totalTimeMs: t, musicStartTimeMs: n=0})=>{
let r = e.getState().timer.selectedSongID;
r && (r = await A(r, e)),
e.dispatch(ei({
eventName: "start-timer",
totalTimeMs: t,
timeRemainingMs: t,
isPaused: !1,
songID: r,
lastReceivedSongTimestampMs: n
})),
_.d1.timerChange("timerstart")
}
)
, el = (0,
v.nF)((e,t)=>{
let n = e.getState().timer.selectedSongID;
e.dispatch(ei({
eventName: "adjust-timer",
totalTimeMs: t.timer.totalTimeMs + t.deltaMs,
timeRemainingMs: (0,
y.P$)(t.timer) + t.deltaMs,
isPaused: t.timer.isPaused,
songID: n,
lastReceivedSongTimestampMs: t.timer.lastReceivedSongTimestampMs
})),
_.d1.timerChange("timeradjust")
}
)
, es = (0,
v.nF)((e,t)=>{
let n = (0,
y.P$)(t)
, r = S(t)
, i = e.getState().timer.selectedSongID;
e.dispatch(ei({
eventName: "pause-timer",
totalTimeMs: t.totalTimeMs,
timeRemainingMs: n,
isPaused: !0,
songID: i,
lastReceivedSongTimestampMs: r
})),
_.d1.timerChange("timerpause")
}
)
, ed = (0,
v.nF)(e=>{
let t = e.getState().timer.selectedSongID;
e.dispatch(ei({
eventName: "stop-timer",
totalTimeMs: 0,
timeRemainingMs: 0,
isPaused: !0,
songID: t,
lastReceivedSongTimestampMs: 0
})),
_.d1.timerChange("timerstop")
}
)
, ec = (0,
v.T8)("RESUME_TIMER", async(e,t)=>{
let n = e.getState().timer.selectedSongID;
n && (n = await A(n, e)),
e.dispatch(ei({
eventName: "resume-timer",
totalTimeMs: t.totalTimeMs,
timeRemainingMs: t.timeRemainingMs,
isPaused: !1,
songID: n,
lastReceivedSongTimestampMs: t.lastReceivedSongTimestampMs
})),
_.d1.timerChange("timerresume")
}
)
}
,
54552: (e,t,n)=>{
"use strict";
n.d(t, {
DN: ()=>x,
EX: ()=>P,
Fb: ()=>H,
Ic: ()=>w,
Mv: ()=>k,
N9: ()=>O,
U6: ()=>b,
V1: ()=>A,
X7: ()=>U,
YI: ()=>N,
ZW: ()=>M,
de: ()=>S,
dy: ()=>L,
iN: ()=>B,
if: ()=>D,
jv: ()=>R,
lF: ()=>y,
ox: ()=>F,
pS: ()=>I,
qP: ()=>V,
to: ()=>v,
vg: ()=>T,
vr: ()=>z,
yH: ()=>C
});
var r = n(167249)
, i = n(935283)
, a = n(722138)
, o = n(309225)
, l = n(286098)
, s = n(547807)
, d = n(27087)
, c = n(881388)
, u = n(939863)
, p = n(392592)
, m = n(980820)
, _ = n(857766)
, h = n(723245)
, g = n(477782)
, f = n(99506)
, E = n(225868);
let y = (0,
r.N)("SET_FAVORITES_COUNT")
, b = (0,
r.N)("UPDATE_EXPANDED_CUSTOM_SECTIONS")
, v = (0,
r.N)("SET_MOVING_RESOURCE")
, I = (0,
r.N)("SET_NEW_SECTION_INDEX")
, T = (0,
m.nF)((e,t)=>{
let {name: n, orderedFavoriteIds: r} = t
, i = d.Ay.put(`/api/user_sidebar_sections/${t.sectionId}`, {
ordered_favorited_resource_ids: r,
name: n
}).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.data.message}`
}))
}
);
(0,
o.WB)().optimisticallyUpdate({
UserSidebarSection: {
[t.sectionId]: {
...n ? {
name: n
} : {},
...r ? {
orderedFavoritedResourceIds: r
} : {}
}
}
}, i),
t.name && (0,
a.K2)(t.sectionId, t.name)
}
)
, S = (0,
m.nF)((e,t)=>{
let n = d.Ay.del(`/api/user_sidebar_sections/${t.sidebarSectionId}`).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.msg}`
}))
}
);
(0,
a.Pe)(t.sidebarSectionId),
(0,
o.WB)().optimisticallyDelete({
UserSidebarSection: {
[t.sidebarSectionId]: null
}
}, n)
}
)
, w = (0,
m.nF)((e,t)=>{
let n = {
favorited_resource_ids: t.favoriteIds,
team_id: t.teamId
};
(0,
a.Dr)(t.favoriteIds, t.teamId),
d.Ay.put("/api/planless_favorited_resource_plan_id", n).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.data.message}`
}))
}
)
}
)
, A = (0,
m.nF)((e,t)=>{
let n = {
section_id: t.sectionId,
ordered_favorite_ids: t.orderedFavoriteIds
}
, r = d.Ay.put(`/api/favorited_resources/${t.favoriteId}`, n).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.data.message}`
}))
}
);
t.sectionId && (0,
o.WB)().optimisticallyUpdate({
UserSidebarSection: {
[t.sectionId]: {
orderedFavoritedResourceIds: t.orderedFavoriteIds
}
}
}, r);
let i = {
[t.favoriteId]: {
sidebarSectionId: t.sectionId
}
};
switch (t.resourceType) {
case f.bk.TEAM:
(0,
o.WB)().optimisticallyUpdate({
FavoritedTeam: i
}, r);
break;
case f.bk.FOLDER:
(0,
o.WB)().optimisticallyUpdate({
FavoritedProject: i
}, r);
break;
case f.bk.FILE:
(0,
o.WB)().optimisticallyUpdate({
FavoritedFile: i
}, r);
break;
case f.bk.PROTOTYPE:
(0,
o.WB)().optimisticallyUpdate({
FavoritedPrototype: i
}, r);
break;
case f.bk.WORKSPACE:
(0,
o.WB)().optimisticallyUpdate({
FavoritedWorkspace: i
}, r)
}
}
)
, C = (0,
m.MM)("CREATE_SIDEBAR_SECTION_FAVORITE", (e,t,{optimistId: n})=>{
var r, i, a, l, s, c, u;
let m = e.getState().currentUserOrgId ?? null
, _ = {
name: t.name,
org_id: m,
insert_at_index: t.insertAtIndex,
ordered_sections: t.currentOrderedSections
}
, h = d.Ay.post("/api/user_sidebar_sections", _).then(r=>{
if (!(null == r ? void 0 : r.data.meta)) {
e.dispatch(v({
movingResource: void 0
}));
return
}
W(e.dispatch, t.newResourceForSection.resourceType, t.newResourceForSection.isFavorited, t.newResourceForSection.resourceId, n, r.data.meta),
e.dispatch(v({
movingResource: void 0
}))
}
).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.msg}`
}))
}
);
if ((0,
o.WB)().optimisticallyCreate({
UserSidebarSection: {
[j]: {
userId: (null == (r = e.getState().user) ? void 0 : r.id) ?? "",
orgId: m,
teamId: "",
name: t.name,
createdAt: new Date,
orderedFavoritedResourceIds: []
}
}
}, h),
t.prefs && t.currentOrderedSections) {
let n = t.currentOrderedSections.length
, r = [...null == (i = t.currentOrderedSections) ? void 0 : i.slice(0, t.insertAtIndex), j, ...t.currentOrderedSections.slice(t.insertAtIndex, n)]
, o = {
id: null == (a = t.prefs) ? void 0 : a.id,
orderedFavoritedResourceIds: null == (l = t.prefs) ? void 0 : l.orderedFavoritedResourceIds,
orderedTeamIds: null == (s = t.prefs) ? void 0 : s.orderedTeamIds,
orderedLicenseGroupIds: null == (c = t.prefs) ? void 0 : c.orderedLicenseGroupIds,
orderedSidebarSections: r
};
(0,
E.ah)(o, null == (u = e.getState().user) ? void 0 : u.id, m, null, h)
}
}
)
, N = (0,
m.nF)((e,t)=>{
var n, r, i, l, s, c, u;
let m = e.getState().currentUserOrgId ?? null
, _ = {
name: t.name,
org_id: m,
insert_at_index: t.insertAtIndex,
ordered_sections: t.currentOrderedSections
}
, h = d.Ay.post("/api/user_sidebar_sections", _).then(e=>{
(0,
a.SX)(null == e ? void 0 : e.data.meta, t.name)
}
).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.msg}`
}))
}
)
, g = "optimistic-id-custom-section-id";
if ((0,
o.WB)().optimisticallyCreate({
UserSidebarSection: {
[g]: {
userId: (null == (n = e.getState().user) ? void 0 : n.id) ?? "",
orgId: m,
teamId: "",
name: t.name,
createdAt: new Date,
orderedFavoritedResourceIds: []
}
}
}, h),
t.prefs && t.currentOrderedSections) {
let n = t.currentOrderedSections.length
, a = [...null == (r = t.currentOrderedSections) ? void 0 : r.slice(0, t.insertAtIndex), g, ...t.currentOrderedSections.slice(t.insertAtIndex, n)]
, o = {
id: null == (i = t.prefs) ? void 0 : i.id,
orderedFavoritedResourceIds: null == (l = t.prefs) ? void 0 : l.orderedFavoritedResourceIds,
orderedTeamIds: null == (s = t.prefs) ? void 0 : s.orderedTeamIds,
orderedLicenseGroupIds: null == (c = t.prefs) ? void 0 : c.orderedLicenseGroupIds,
orderedSidebarSections: a
};
(0,
E.ah)(o, null == (u = e.getState().user) ? void 0 : u.id, m, null, h)
}
}
)
, O = (0,
m.MM)("BULK_RESOURCE_SET_FAVORITE", (e,t,{optimistId: n, liveStore: r})=>{
var i, s, u, _;
let {files: h, repos: g, prototypes: y, orgId: b, teamId: v, selectedView: I, entrypoint: T} = t
, S = e.getState().currentTeamId
, w = e.getState().currentUserOrgId
, A = S ?? w
, C = h.filter(e=>!e.is_favorited && (e.team_id === A || e.parent_org_id === A))
, N = C.map(e=>e.key)
, O = g.filter(e=>!e.is_favorited && (e.team_id === A || e.parent_org_id === A)).filter(Boolean)
, L = O.map(e=>e.default_file_key)
, R = y.filter(e=>{
var t, n;
return !e.is_favorited && ((null == (t = e.parent_team) ? void 0 : t.id) === A || (null == (n = e.parent_org) ? void 0 : n.id) === A)
}
)
, P = R.map(e=>e.file_key + "," + e.page_id)
, k = {
files: L.concat(N),
org_id: b,
team_id: v,
prototypes: P,
insert_at_index: t.insertAtIndex,
ordered_favorites: t.orderedFavorites,
section_id: t.sectionId
};
h.forEach(e=>{
(0,
a.gB)(e.key, I, T, f.bk.FILE, e.editor_type, !0)
}
),
g.forEach(e=>{
(0,
a.gB)(e.default_file_key ?? void 0, I, T, f.bk.FILE, "design", !0)
}
),
y.forEach(e=>{
(0,
a.gB)(e.file_key, I, T, f.bk.PROTOTYPE, "design", !0)
}
);
let D = d.Ay.put("/api/bulk_favorite_resources", k).then(()=>{
e.dispatch(m.hp.commit(n))
}
).catch(t=>{
e.dispatch(m.hp.revert(n));
try {
e.dispatch(p.F.enqueue({
message: t.message
}))
} catch (t) {
e.dispatch(c.s.error("An error occurred while favoriting these items"))
}
}
)
, M = null == (i = e.getState().user) ? void 0 : i.id;
if (!M)
return;
let F = {}
, x = {}
, U = [];
if (R.forEach(e=>{
U.push(`optimistic-id-${e.fig_file.key}`),
x[`optimistic-id-${e.fig_file.key}`] = (0,
l.XJ)(e, M, b, t.sectionId)
}
),
O.forEach(e=>{
let n = e.default_file_key;
if (n) {
let e = r.readCachedFile(n);
e && (U.push(`optimistic-id-${e.key}`),
F[`optimistic-id-${e.key}`] = (0,
l.f2)(e, M, b, t.sectionId))
}
}
),
C.forEach(e=>{
U.push(`optimistic-id-${e.key}`),
F[`optimistic-id-${e.key}`] = (0,
l.f2)(e, M, b, t.sectionId)
}
),
(0,
o.WB)().optimisticallyCreate({
FavoritedFile: F,
FavoritedPrototype: x
}, D),
null === t.insertAtIndex)
return;
let B = [...t.orderedFavorites.slice(0, t.insertAtIndex), ...U, ...t.orderedFavorites.slice(t.insertAtIndex)];
if (t.sectionId)
(0,
o.WB)().optimisticallyUpdate({
UserSidebarSection: {
[t.sectionId]: {
orderedFavoritedResourceIds: B
}
}
}, D);
else {
let e = {
id: (null == (s = t.fileBrowserPrefs) ? void 0 : s.id) || "optimistic-id",
orderedFavoritedResourceIds: B,
orderedTeamIds: null == (u = t.fileBrowserPrefs) ? void 0 : u.orderedTeamIds,
orderedLicenseGroupIds: null == (_ = t.fileBrowserPrefs) ? void 0 : _.orderedLicenseGroupIds
};
(0,
E.ah)(e, M, b, null, D)
}
}
)
, L = (0,
m.MM)("REMOVE_TILE_FAVORITE", async(e,t,{liveStore: n})=>{
let {tile: r, entrypoint: a, favoriteId: o, sectionId: l, fileBrowserEntryPoint: s} = t;
switch (r.type) {
case g.nb.FILE:
e.dispatch(V({
entrypoint: a,
favoriteId: o,
file: r.file,
fileBrowserEntryPoint: s
}));
return;
case g.nb.PINNED_FILE:
let d = await n.fetchFile(r.file.key);
e.dispatch(V({
entrypoint: a,
favoriteId: o,
file: d,
fileBrowserEntryPoint: s
}));
return;
case g.nb.PROTOTYPE:
e.dispatch(U({
entrypoint: a,
favoriteId: o,
prototype: r.prototype,
fileBrowserEntryPoint: s
}));
return;
case g.nb.REPO:
e.dispatch(V({
entrypoint: a,
favoriteId: o,
file: (0,
_.mr)(r.repo, r.branches, {}),
repoId: r.repo.id,
fileBrowserEntryPoint: s
}));
return;
case g.nb.PROJECT:
e.dispatch(R({
entrypoint: a,
favoriteId: o,
sectionId: l,
folder: r.folder
}));
return;
case g.nb.OFFLINE_FILE:
return;
default:
(0,
i.xb)(r)
}
}
)
, R = (0,
m.MM)("REMOVE_FOLDER_FAVORITE", (e,t,{optimistId: n})=>{
let {folder: r, sectionId: i} = t;
(0,
a.to)(r.id, e.getState().selectedView.view, t.entrypoint, f.bk.FOLDER);
let l = W(e.dispatch, f.bk.FOLDER, !1, r.id, n, i);
t.favoriteId && (0,
o.WB)().optimisticallyDelete({
FavoritedProject: {
[t.favoriteId]: null
}
}, l)
}
)
, P = (0,
m.MM)("ADD_TILE_FAVORITE", async(e,t,{liveStore: n})=>{
let {tile: r, entrypoint: a, favoriteId: o, sectionId: l, fileBrowserEntryPoint: s} = t;
switch (r.type) {
case g.nb.FILE:
e.dispatch(H({
entrypoint: a,
favoriteId: o,
sectionId: l,
file: r.file,
fileBrowserEntryPoint: s
}));
return;
case g.nb.PINNED_FILE:
let d = await n.fetchFile(r.file.key);
e.dispatch(H({
entrypoint: a,
favoriteId: o,
sectionId: l,
file: d,
fileBrowserEntryPoint: s
}));
return;
case g.nb.PROTOTYPE:
e.dispatch(B({
entrypoint: a,
favoriteId: o,
sectionId: l,
prototype: r.prototype,
fileBrowserEntryPoint: s
}));
return;
case g.nb.REPO:
e.dispatch(H({
entrypoint: a,
favoriteId: o,
sectionId: l,
file: (0,
_.mr)(r.repo, r.branches, e.getState().selectedBranchKeyByRepoId),
repoId: r.repo.id,
fileBrowserEntryPoint: s
}));
return;
case g.nb.PROJECT:
e.dispatch(k({
entrypoint: a,
favoriteId: o,
sectionId: l,
folder: r.folder
}));
return;
case g.nb.OFFLINE_FILE:
return;
default:
(0,
i.xb)(r)
}
}
)
, k = (0,
m.MM)("ADD_FOLDER_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let {folder: i, sectionId: s} = t;
(0,
a.gB)(i.id, e.getState().selectedView.view, t.entrypoint, f.bk.FOLDER);
let d = W(e.dispatch, f.bk.FOLDER, !0, i.id, n, s)
, c = null == (r = e.getState().user) ? void 0 : r.id
, u = e.getState().currentUserOrgId;
c && (t.favoriteId && t.sectionId && (0,
o.WB)().optimisticallyUpdate({
FavoritedProject: {
[t.favoriteId]: {
sidebarSectionId: t.sectionId
}
}
}, d),
"is_favorited"in i && (t.favoriteId || (0,
o.WB)().optimisticallyCreate({
FavoritedProject: {
[`optimistic-id-${i.id}`]: (0,
l.ad)(i, c, u, s)
}
}, d)))
}
)
, D = (0,
m.MM)("REMOVE_WORKSPACE_FAVORITE", (e,t,{optimistId: n})=>{
let {workspace: r} = t;
(0,
a.to)(r.id, e.getState().selectedView.view, t.entrypoint, f.bk.WORKSPACE);
let i = W(e.dispatch, f.bk.WORKSPACE, !1, r.id, n);
t.favoriteId && (0,
o.WB)().optimisticallyDelete({
FavoritedWorkspace: {
[t.favoriteId]: null
}
}, i)
}
)
, M = (0,
m.MM)("ADD_WORKSPACE_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let {workspace: i, sectionId: s} = t
, d = e.getState().currentUserOrgId;
(0,
a.gB)(i.id, e.getState().selectedView.view, t.entrypoint, f.bk.WORKSPACE);
let c = W(e.dispatch, f.bk.WORKSPACE, !0, i.id, n, s)
, u = null == (r = e.getState().user) ? void 0 : r.id;
u && (t.favoriteId && t.sectionId ? (0,
o.WB)().optimisticallyUpdate({
FavoritedWorkspace: {
[t.favoriteId]: {
sidebarSectionId: t.sectionId
}
}
}, c) : (0,
o.WB)().optimisticallyCreate({
FavoritedWorkspace: {
[`optimistic-id-${i.id}`]: (0,
l.Nc)(i, u, d, s)
}
}, c))
}
)
, F = (0,
m.MM)("REMOVE_TEAM_FAVORITE", (e,t,{optimistId: n})=>{
let {team: r} = t;
(0,
a.to)(r.id, e.getState().selectedView.view, t.entrypoint, f.bk.TEAM);
let i = W(e.dispatch, f.bk.TEAM, !1, r.id, n);
t.favoriteId && (0,
o.WB)().optimisticallyDelete({
FavoritedTeam: {
[t.favoriteId]: null
}
}, i)
}
)
, x = (0,
m.MM)("ADD_TEAM_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let {team: i, sectionId: s} = t
, d = e.getState().currentUserOrgId;
(0,
a.gB)(i.id, e.getState().selectedView.view, t.entrypoint, f.bk.TEAM);
let c = W(e.dispatch, f.bk.TEAM, !0, i.id, n, s)
, u = null == (r = e.getState().user) ? void 0 : r.id;
u && (t.favoriteId && t.sectionId ? (0,
o.WB)().optimisticallyUpdate({
FavoritedTeam: {
[t.favoriteId]: {
sidebarSectionId: t.sectionId
}
}
}, c) : (0,
o.WB)().optimisticallyCreate({
FavoritedTeam: {
[`optimistic-id-${i.id}`]: (0,
l.zb)(i, u, d, s)
}
}, c))
}
)
, U = (0,
m.MM)("REMOVE_PROTOTYPE_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let {prototype: i, entrypoint: l, fileBrowserEntryPoint: s} = t;
(0,
a.to)(i.file_key, e.getState().selectedView.view, l, f.bk.PROTOTYPE, void 0, s);
let d = W(e.dispatch, f.bk.PROTOTYPE, !1, i.file_key, n, void 0, i.page_id);
(null == (r = e.getState().user) ? void 0 : r.id) && t.favoriteId && (0,
o.WB)().optimisticallyDelete({
FavoritedPrototype: {
[t.favoriteId]: null
}
}, d)
}
)
, B = (0,
m.MM)("ADD_PROTOTYPE_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let {prototype: i, entrypoint: s, sectionId: d, fileBrowserEntryPoint: c} = t
, u = e.getState().currentUserOrgId;
(0,
a.gB)(i.file_key, e.getState().selectedView.view, s, f.bk.PROTOTYPE, "prototype", c);
let p = W(e.dispatch, f.bk.PROTOTYPE, !0, i.fig_file.key, n, d, i.page_id)
, m = null == (r = e.getState().user) ? void 0 : r.id;
m && (t.favoriteId && t.sectionId ? (0,
o.WB)().optimisticallyUpdate({
FavoritedPrototype: {
[t.favoriteId]: {
sidebarSectionId: t.sectionId
}
}
}, p) : (0,
o.WB)().optimisticallyCreate({
FavoritedPrototype: {
[`optimistic-id-${i.fig_file.key}`]: (0,
l.XJ)(i, m, u, d)
}
}, p))
}
)
, V = (0,
m.MM)("REMOVE_FILE_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let i = e.getState().selectedView.view
, {file: l, entrypoint: s, fileBrowserEntryPoint: d} = t;
(0,
a.to)(l.key, i, s, f.bk.FILE, l.editor_type ?? "design", d);
let c = "fullscreen" === i ? G(e.dispatch, f.bk.FILE, !1, l.key, (0,
h.D6)(e.getState().currentUserOrgId)) : W(e.dispatch, f.bk.FILE, !1, l.key, n);
(null == (r = e.getState().user) ? void 0 : r.id) && t.favoriteId && (0,
o.WB)().optimisticallyDelete({
FavoritedFile: {
[t.favoriteId]: null
}
}, c)
}
)
, H = (0,
m.MM)("ADD_FILE_FAVORITE", (e,t,{optimistId: n})=>{
var r;
let {file: i, entrypoint: s, sectionId: d, fileBrowserEntryPoint: c} = t;
(0,
a.gB)(i.key, e.getState().selectedView.view, s, f.bk.FILE, i.editor_type ?? "design", c);
let u = W(e.dispatch, f.bk.FILE, !0, i.key, n, d, void 0, (0,
h.D6)(e.getState().currentUserOrgId))
, p = null == (r = e.getState().user) ? void 0 : r.id;
if (p) {
if (t.favoriteId && t.sectionId)
(0,
o.WB)().optimisticallyUpdate({
FavoritedFile: {
[t.favoriteId]: {
sidebarSectionId: t.sectionId,
orgId: e.getState().currentUserOrgId ?? null,
resourceType: f.bk.FILE,
userId: p
}
}
}, u);
else if (e.getState().currentTeamId && e.getState().currentTeamId === t.file.team_id || e.getState().currentUserOrgId && t.file.parent_org_id) {
let n = (0,
l.h7)(i);
(0,
o.WB)().optimisticallyCreate({
FavoritedFile: {
[`optimistic-id-${i.key}`]: {
userId: p,
orgId: e.getState().currentUserOrgId ?? null,
teamId: e.getState().currentTeamId ?? null,
sidebarSectionId: t.sectionId ?? null,
createdAt: new Date,
updatedAt: new Date,
resourceId: i.key,
resourceType: f.bk.FILE,
readableFile: n
}
}
}, u)
}
}
}
)
, G = (e,t,n,r,i)=>d.Ay.put("/api/favorited_resources", {
resource_type: t,
is_favorited: n,
file_key: r
}).then(()=>{
let t = i ? (0,
u.t)("tile.favoriting.file_removed_from_sidebar") : (0,
u.t)("tile.favoriting.file_removed_from_favorites")
, r = i ? (0,
u.t)("tile.favoriting.file_added_to_sidebar") : (0,
u.t)("tile.favoriting.file_added_to_favorites");
e(p.F.enqueue({
message: n ? r : t
}))
}
).catch(t=>{
let n = (0,
u.Jv)(t);
if (n)
try {
e(p.F.enqueue({
message: n
}))
} catch (t) {
e(c.s.error("An error occurred while favoriting this item"))
}
}
)
, W = (e,t,n,r,i,a,o,l)=>d.Ay.put("/api/favorited_resources", {
resource_type: t,
is_favorited: n,
resource_id_or_key: r,
page_id: o,
section_id: a
}).then(()=>{
if (e(m.hp.commit(i)),
l || t !== f.bk.FILE) {
let t = n ? (0,
u.t)("sidebar.item_added_bell_message") : (0,
u.t)("sidebar.item_removed_bell_message");
e(p.F.enqueue({
message: t
}))
}
}
).catch(t=>{
let r = (0,
u.Jv)(t);
if (r) {
e(m.hp.revert(i));
try {
e(p.F.enqueue({
message: r
}))
} catch (r) {
let t = n ? "favoriting this item" : "removing this favorite";
e(c.s.error(`An error occurred while ${t}`))
}
}
}
)
, K = e=>((0,
a.j4)(e.favorited_resource_ids),
d.Ay.del("/api/favorited_resources", s.td.toAPIParameters(e)))
, z = (0,
m.nF)((e,t)=>{
K({
favorited_resource_ids: t.favoriteIds
}).catch(t=>{
e.dispatch(p.F.enqueue({
message: `${t.data.message}`
}))
}
)
}
)
, j = "optimistic-id-custom-section-id"
}
,
738274: (e,t,n)=>{
"use strict";
n.d(t, {
EG: ()=>l,
Ji: ()=>i,
lr: ()=>a,
qC: ()=>o
});
var r = n(167249);
let i = (0,
r.N)("FIGJAM_SET_IS_MAKE_SOMETHING_V2_ACTIVE")
, a = (0,
r.N)("FIGJAM_SET_DELIGHTFUL_TOOLBAR_OVERFLOW_MENU")
, o = (0,
r.N)("FIGJAM_SET_IMAGE_DIALOG")
, l = (0,
r.N)("FIGJAM_SET_QUICK_ACCESS_TOOL")
}
,
753643: (e,t,n)=>{
"use strict";
n.d(t, {
GU: ()=>m,
fC: ()=>_,
o2: ()=>u,
s7: ()=>p
});
var r = n(167249)
, i = n(980820)
, a = n(410424)
, o = n(941381)
, l = n(182976)
, s = n(336599)
, d = n(239671)
, c = n(288813);
let u = (0,
r.N)("UPDATE_FACE_STAMPS")
, p = (0,
r.N)("PUT_DEFAULT_FIGJAM_INSERT_ITEMS")
, m = (0,
i.nF)(e=>{
let t = e.getState().selectedView;
t && "fullscreen" === t.view && t.editorType === d.nT.Whiteboard && h(e)
}
)
, _ = "FETCH_FIGJAM_DEFAULT_INSERTS";
async function h(e) {
let t = e.getState();
if ((0,
s.Sc)(t.loadingState, _)) {
e.dispatch(l.Cx({
key: _
}));
try {
let n = await c.d.getDefaultInserts({
orgId: t.currentUserOrgId || void 0
})
, r = [...n.data.meta.plugins, ...function(e) {
let t = [];
for (let n of e)
for (let e of n.resources)
e && "is_widget"in e && !e.is_widget && t.push(e);
return t
}(n.data.meta.use_cases)]
, i = [...n.data.meta.widgets, ...function(e) {
let t = [];
for (let n of e)
for (let e of n.resources)
e && "is_widget"in e && e.is_widget && t.push(e);
return t
}(n.data.meta.use_cases)]
, s = [...n.data.meta.templates, ...function(e) {
let t = [];
for (let n of e)
for (let e of n.resources)
e && "viewer_mode"in e && e.viewer_mode && t.push(e);
return t
}(n.data.meta.use_cases)];
e.dispatch((0,
a.Sb)({
hubFiles: s,
src: "figjam-inserts"
})),
e.dispatch(p(n.data.meta)),
e.dispatch(o.Vx(r)),
e.dispatch(o.uV(i));
let d = {}
, u = {};
i.forEach(e=>{
var n;
let r = e.current_plugin_version_id;
!(r && (null == (n = t.publishedCanvasWidgetVersions[e.id]) ? void 0 : n[r])) && (d[e.id] = Object.keys(e.versions),
e.current_plugin_version_id && (u[e.id] = {
[e.current_plugin_version_id]: e.versions[e.current_plugin_version_id]
}))
}
),
e.dispatch((0,
o.fs)(u)),
e.dispatch((0,
o.b6)({
widgetIDToVersions: d
})),
e.dispatch(l.x2({
key: _
}))
} catch (t) {
e.dispatch(l.of({
key: _
}))
}
}
}
}
,
944682: (e,t,n)=>{
"use strict";
n.d(t, {
$m: ()=>j,
FE: ()=>U,
GZ: ()=>z,
Lk: ()=>eu,
Nw: ()=>en,
P6: ()=>J,
PB: ()=>eo,
PF: ()=>Q,
Rh: ()=>K,
S: ()=>et,
U2: ()=>ei,
VK: ()=>X,
YK: ()=>q,
YW: ()=>H,
Yn: ()=>ee,
Yp: ()=>er,
ZN: ()=>G,
bE: ()=>ea,
c3: ()=>ec,
iF: ()=>Z,
jO: ()=>x,
og: ()=>B,
rA: ()=>W,
sF: ()=>V,
tX: ()=>F,
uo: ()=>el,
xy: ()=>$,
yJ: ()=>es
});
var r = n(723069)
, i = n(167249)
, a = n(297666)
, o = n(517333)
, l = n(686759)
, s = n(737947)
, d = n(966712)
, c = n(309225)
, u = n(499737)
, p = n(752553)
, m = n(179940)
, _ = n(776621)
, h = n(27087)
, g = n(881388)
, f = n(939863)
, E = n(392592)
, y = n(980820)
, b = n(662275)
, v = n(988022)
, I = n(857766)
, T = n(852800)
, S = n(132135)
, w = n(892542)
, A = n(279453)
, C = n(623746)
, N = n(691205)
, O = n(401352)
, L = n(694517)
, R = n(754168)
, P = n(558356)
, k = n(479296)
, D = n(938908)
, M = n(31913);
let F = {
key: "showDiagramOnboarding",
value: "1"
};
function x(e) {
return void 0 !== e.file_repo
}
function U(e, t) {
return h.Ay.put(`/api/files/${e}/thumbnail_guid`, {
thumbnail_guid: t
}).then(()=>{
T.Ez5.canvasViewState().thumbnailNodeId.set(t)
}
)
}
let B = (0,
y.nF)((e,t)=>{
t.file.created_at && console.error("It looks like you are PUT-ting to the API with the entire file object; please only pass the key and file permission attributes");
let n = R.S.putFile(t).then(()=>{
var e;
null == (e = t.onSuccess) || e.call(t)
}
).catch(n=>{
var r;
if (null == (r = t.onError) || r.call(t),
e.dispatch(E.F.enqueue({
message: (0,
f.t)("file_permissions.generic_error"),
error: !0
})),
(0,
d.b5)())
throw n
}
)
, r = t.file
, i = {
...(0,
C.Ns)(r, r.key),
...(0,
C.yT)(r, t.linkExpirationConfigId, t.currentUser)
}
, a = (0,
C.TP)(r, t.linkExpirationConfigId, t.currentUser);
Object.keys(i).length > 0 && (0,
c.WB)().optimisticallyUpdate(i, n),
a && (0,
c.WB)().optimisticallyCreate(a, n)
}
)
, V = (0,
i.N)("FILE_PERMISSIONS_PUT")
, H = (0,
y.nF)(async(e,t)=>{
var n, i;
let a = e.getState()
, l = {}
, d = t.file
, p = d.folderId
, _ = !1;
if (p) {
let e = "design" === d.editorType ? A.RmP : A.JkW
, t = await (0,
c.Ek)(e, {
id: p
});
_ = "loaded" === t.status && !!(null == (i = (0,
u.oA)(null == (n = t.data) ? void 0 : n.project)) ? void 0 : i.hasPermission)
}
_ && (l.folder_id = p),
t.versionId && (l.version_id = t.versionId),
e.dispatch(E.F.enqueue({
type: "file_duplicating",
message: (0,
f.t)("visual_bell.duplicating")
})),
h.Ay.post(`/api/multiplayer/${d.key}/copy?${(0,
m.lF)(l)}`).then(n=>{
var i;
e.dispatch(E.F.dequeue({}));
let l = !!a.openFile;
if (!n.data.error && n.data.meta && l) {
let l = n.data.meta;
if ((0,
v.ds)("File Duplicated", d.key, e.getState(), {
duplicatedFileKey: l.key,
duplicatedContainingFolderId: l.folder_id,
duplicatedFileTeamId: l.team_id
}),
t.checkOssSalesExperiment && (0,
O.Lb)(l.key),
o.eD) {
o.eD.openFile({
fileKey: l.key,
title: l.name,
editorType: l.editor_type,
target: r.aw.FOCAL_TAB,
isBranch: (0,
I.Xm)(l),
isLibrary: !!l.last_published_at,
isTeamTemplate: !1,
userId: null == (i = a.user) ? void 0 : i.id
});
return
}
s.Ay.redirect((0,
S.to)(l), "_blank")
}
}
).catch(()=>{
e.dispatch(E.F.dequeue({})),
e.dispatch(g.s.error((0,
f.t)("file_browser.file_browser_actions.file_copy_error")))
}
)
}
)
, G = (0,
y.nF)((e,t)=>{
let n = t.file_key;
n && (e.getState().fileByKey[n] || R.S.getFiles({
fileKey: n
}).then(t=>e.dispatch(es({
file: t.data.meta
}))))
}
)
, W = (0,
y.nF)(async(e,t)=>{
try {
await h.Ay.del(`/api/files/${t.file_key}/workshop`)
} catch (e) {}
}
)
, K = (0,
y.nF)(async(e,t,{liveStore: n})=>{
var r;
let i = await n.fetchFile(t.fileKey)
, a = h.Ay.post(`/api/files/${t.fileKey}/workshop`).then(()=>{
e.dispatch(E.F.enqueue({
message: (0,
f.t)("whiteboard.open_sessions.open_session_started_notification"),
button: {
text: (0,
f.t)("whiteboard.open_sessions.open_session_started_notification_copy_link"),
action: ()=>{
e.dispatch(et({
fileKey: t.fileKey,
url: (0,
S.to)(i),
source: w.d.WORKSHOP_VISUAL_BELL
}))
}
}
}))
}
).catch(()=>{
e.dispatch(E.F.enqueue({
message: (0,
f.t)("whiteboard.open_sessions.open_session_start_failed_notification"),
error: !0
}))
}
)
, o = null == (r = e.getState().user) ? void 0 : r.id;
if (o) {
let e = new Date;
e.setDate(e.getDate() + 1),
(0,
c.WB)().optimisticallyCreate({
FigFileWorkshopMode: {
[`optimistic-${t.fileKey}`]: {
fileKey: t.fileKey,
expiresAt: e,
userId: o
}
}
}, a)
}
}
)
, z = (0,
y.nF)(async(e,t)=>{
await h.Ay.post(`/api/files/${t.fileKey}/view`).then(({data: n})=>{
let {last_view_at: r, last_edit_at: i} = n.meta;
e.dispatch(M.FB({
lastViewed: r,
lastEdited: i
})),
e.dispatch((0,
L.Ul)({
openFileKey: t.fileKey,
versionHistory: e.getState().versionHistory
}))
}
).catch(e=>{
(0,
_.x1)("recent files", "Error marking file view / retrieving last seen times", {
error: e
})
}
)
}
)
, j = (0,
y.nF)((e,t)=>{
U(t.file_key, t.thumbnail_guid).then(()=>{
let n = t.thumbnail_guid ? (0,
f.t)("file_browser.file_browser_actions.thumbnail_set") : (0,
f.t)("file_browser.file_browser_actions.default_thumbnail_restored");
e.dispatch(E.F.enqueue({
message: n
}))
}
).catch(()=>{
e.dispatch(E.F.enqueue({
message: (0,
f.t)("file_browser.error_try_again"),
error: !0
}))
}
)
}
)
, Y = N.M4.Mutation((e,{objects: t})=>{
e.forEach(e=>{
t.File.update(e, e=>{
e.trashed_at = null
}
)
}
)
}
)
, $ = (0,
i.N)("RESTORE_TRASHED_FILES")
, Z = (0,
y.nF)((e,t)=>{
e.dispatch($(t)),
e.dispatch((0,
D.xY)({
fileKeys: Object.keys(t.fileKeys)
})),
(0,
p.Jl)(Y)(Object.keys(t.fileKeys))
}
)
, q = (0,
i.N)("DELETE_FILES_PERMANENTLY")
, J = (0,
i.N)("DELETE_FILES")
, X = (0,
y.nF)((e,t)=>{
e.dispatch(J(t)),
e.dispatch((0,
D.sM)({
fileKeys: Object.keys(t.fileKeys)
}))
}
)
, Q = (0,
i.N)("FILE_RESTORE")
, ee = (0,
y.nF)((e,t)=>{
(0,
l.Dk)(t.embedCode).then(()=>{
(0,
v.ds)("Embed Code Copied", t.fileKey, e.getState()),
e.dispatch(E.F.enqueue({
type: "embeded_code_copied_to_clipboard",
message: (0,
f.t)("file_browser.file_browser_actions.embed_code_copied")
}))
}
).catch(()=>{
e.dispatch(g.s.error((0,
f.t)("file_browser.file_browser_actions.embed_code_copy_error")))
}
)
}
)
, et = (0,
k.n)((0,
y.nF)((e,t)=>{
let n;
let r = t.url
, i = t.label;
if (i) {
let e = document.createElement("a");
e.href = r,
e.innerText = i;
let t = e.outerHTML;
n = (0,
l.wY)(t, r)
} else
n = (0,
l.Dk)(r);
n.then(()=>{
(0,
v.ds)("File Share Link Copied", t.fileKey, e.getState(), {
copyLinkSource: w.d[t.source],
...t.trackingProperties
}),
t.skipVisualBell || e.dispatch(E.F.enqueue({
type: "link_copied_to_clipboard",
message: t.visualBellMessageOverride ?? (0,
f.t)("copy_to_clipboard.link_copied_to_clipboard"),
button: t.visualBellButton
}))
}
).catch(()=>{
e.dispatch(b.to({
type: P.o,
data: {
link: r
}
}))
}
)
}
))
, en = (0,
y.nF)((e,t)=>{
if (t.name.length <= 100) {
let n = {
key: t.file.key,
name: t.name,
updated_at: new Date().toISOString()
};
e.dispatch(es({
file: n,
userInitiated: !0
})),
(0,
v.ds)("File Renamed", n.key, e.getState(), {
fileName: n.name
})
}
}
)
, er = (0,
i.N)("FILE_REMOVE_FROM_PROJECT")
, ei = (0,
i.N)("FILE_MOVE")
, ea = (0,
i.N)("FILE_POST")
, eo = (0,
i.N)("FILE_BATCH_SUBSCRIBE_TO_REALTIME")
, el = (0,
i.N)("FILE_BATCH_PUT")
, es = (0,
i.N)("FILE_PUT")
, ed = (0,
a.s)((e,t)=>{
let n = t.getState();
n.activeFileUsers && (e = e.filter(e=>!(e in n.activeFileUsers))),
e.length && h.Ay.post("/api/active_file_users", {
keys: e
}).then(({data: e})=>{
!function(e, t, n=!1) {
let r = t.getState();
for (let i in e) {
if (n && r.activeFileUsers && i in r.activeFileUsers)
continue;
let a = e[i]
, o = [];
if (a)
for (let e in a) {
let t = JSON.parse(a[e]);
o.push(t)
}
t.dispatch(eu({
fileKey: i,
users: o
}))
}
}(e.meta.active_file_users, t, !0)
}
).catch(e=>{}
)
}
, 1e3);
(0,
y.nF)((e,t)=>{
ed(t.fileKeys, e)
}
);
let ec = (0,
i.N)("FILE_CLEAR_ACTIVE_USERS")
, eu = (0,
i.N)("FILE_SET_ACTIVE_USERS")
}
,
225868: (e,t,n)=>{
"use strict";
n.d(t, {
L5: ()=>i,
Sk: ()=>r,
ah: ()=>c
});
var r, i, a = n(966712), o = n(309225), l = n(27087), s = n(881388), d = n(980820);
function c(e, t, n, r, i) {
var a, l;
e.id && "optimistic-id" !== e.id ? null == (a = (0,
o.WB)()) || a.optimisticallyUpdate({
FileBrowserPreferences: {
[e.id]: {
orderedTeamIds: e.orderedTeamIds,
orderedFavoritedResourceIds: e.orderedFavoritedResourceIds,
orderedSidebarSections: e.orderedSidebarSections,
orgId: n,
teamId: r,
orderedLicenseGroupIds: e.orderedLicenseGroupIds
}
}
}, i) : null != t && (null == (l = (0,
o.WB)()) || l.optimisticallyCreate({
FileBrowserPreferences: {
"optimistic-id": {
userId: t,
migratedToSections: !0,
sidebarMigrationStatus: null,
orderedTeamIds: e.orderedTeamIds || null,
orderedFavoritedResourceIds: e.orderedFavoritedResourceIds || null,
orderedSidebarSections: e.orderedSidebarSections || null,
updatedAt: new Date,
createdAt: new Date,
orgId: n,
teamId: r,
orderedLicenseGroupIds: e.orderedLicenseGroupIds || null
}
}
}, i))
}
(e=>{
e.put = (0,
d.MM)("FILE_BROWSER_PREFERENCES_PUT", (e,t)=>{
var n;
let r = null == (n = e.getState().user) ? void 0 : n.id
, i = e.getState().currentUserOrgId
, o = (0,
a.kc)().ps_benchmark ? e.getState().currentTeamId : null
, s = l.Ay.put("/api/file_browser_preferences", {
ordered_team_ids: t.prefs.orderedTeamIds,
ordered_favorites: t.prefs.orderedFavoritedResourceIds,
org_id: i,
team_id: o,
ordered_license_group_ids: t.prefs.orderedLicenseGroupIds,
ordered_sidebar_sections: t.prefs.orderedSidebarSections
});
c(t.prefs, r, i, o, s)
}
),
e.createFileBrowserPreferencesForTeamUser = (0,
d.nF)((e,t)=>{
var n, r, i, a;
let o = null == (n = e.getState().user) ? void 0 : n.id
, s = e.getState().currentTeamId
, d = t.teamUser
, u = t.prefs.orderedFavoritedResourceIds
, p = [];
if (u)
for (var m of u)
((null == (r = d.favoritedFiles) ? void 0 : r.some(e=>e.id === m)) || (null == (i = d.favoritedPrototypes) ? void 0 : i.some(e=>e.id === m))) && p.push(m);
let _ = (null == (a = d.favoritedProjects) ? void 0 : a.filter(e=>t.orderedFolderSubscriptions.includes(e.resourceId)).map(e=>e.id)) ?? [];
p.push(..._);
let h = l.Ay.put("/api/file_browser_preferences", {
ordered_favorites: p,
team_id: s
});
c({
id: "optimistic-id",
orderedFavoritedResourceIds: p
}, o, null, s, h)
}
)
}
)(r || (r = {})),
(i || (i = {})).put = (0,
d.MM)("FILE_BROWSER_SECTION_PREFERENCES_PUT", (e,t)=>{
var n, r, i;
let a = null == (n = e.getState().user) ? void 0 : n.id
, d = e.getState().currentUserOrgId;
if (t.userInitiated) {
let n = l.Ay.put(`/api/file_browser_preferences/section/${t.prefs.section_type}`, {
...t.prefs,
org_id: d
}).catch(t=>{
var n;
e.dispatch(s.s.error((null == (n = t.data) ? void 0 : n.message) || "An error occurred.")),
console.error(t)
}
);
t.prefs.id ? null == (r = (0,
o.WB)()) || r.optimisticallyUpdate({
FileBrowserSectionPreferences: {
[t.prefs.id]: {
orderedFolderIds: t.prefs.ordered_folder_ids,
sectionType: t.prefs.section_type,
teamId: "team" === t.prefs.section_type ? t.prefs.team_id : null,
orgId: d
}
}
}, n) : null != a && (null == (i = (0,
o.WB)()) || i.optimisticallyCreate({
FileBrowserSectionPreferences: {
"optimistic-id": {
userId: a,
orderedFolderIds: t.prefs.ordered_folder_ids || null,
sectionType: t.prefs.section_type,
teamId: "team" === t.prefs.section_type ? t.prefs.team_id : null,
updatedAt: new Date,
createdAt: new Date,
orgId: d
}
}
}, n))
}
}
)
}
,
507877: (e,t,n)=>{
"use strict";
n.d(t, {
Dw: ()=>J,
Ef: ()=>j,
Fs: ()=>Y,
T5: ()=>K,
UN: ()=>z,
Uk: ()=>Z,
V3: ()=>H,
_l: ()=>x,
dm: ()=>W,
gN: ()=>G,
gR: ()=>V,
h3: ()=>q,
hm: ()=>M,
kg: ()=>$,
mT: ()=>B,
q0: ()=>F,
qj: ()=>D,
rq: ()=>U
});
var r = n(776250)
, i = n(511617)
, a = n(517333)
, o = n(737947)
, l = n(187623)
, s = n(218881)
, d = n(27087)
, c = n(939863)
, u = n(392592)
, p = n(349410)
, m = n(988022)
, _ = n(697551)
, h = n(369870)
, g = n(441088)
, f = n(691205)
, E = n(320741)
, y = n(707465)
, b = n(935757)
, v = n(349719)
, I = n(696915)
, T = n(622139)
, S = n(644344)
, w = n(637590)
, A = n(540351)
, C = n(52571)
, N = n(241136)
, O = n(464382)
, L = n(757406)
, R = n(980820)
, P = n(738269)
, k = n(662275);
let D = (0,
R.nF)((e,t)=>{
var n, r;
(null == (n = e.getState().modalShown) ? void 0 : n.type) != null && e.dispatch((0,
k.Ce)()),
(null == (r = e.getState().dropdownShown) ? void 0 : r.type) != null && e.dispatch((0,
P.oB)()),
e.dispatch((0,
P.DE)({
show: !0
})),
null == t || t.until.then(()=>{
e.dispatch((0,
P.DE)({
show: !1
}))
}
),
O.q.addDependency("FILE_BROWSER_SET_LOADING", (null == t ? void 0 : t.until) || "pending")
}
)
, M = (0,
R.nF)(e=>{
C.H.getState().then(t=>{
e.dispatch((0,
P.os)(t.data.meta)),
e.dispatch(F(t.data.meta))
}
).catch(t=>{
var n;
let r = (null == (n = t.data) ? void 0 : n.message) || (0,
c.t)("file_browser.file_browser_actions.error_on_data_update");
e.dispatch(u.F.enqueue({
error: !0,
message: r
}))
}
)
}
)
, F = (0,
R.nF)((e,t)=>{
new l.P().sendToOtherTabs(A.y, t)
}
)
, x = (0,
R.nF)((e,t)=>{
let n = e.getState()
, r = t.view || {
view: "recentFiles"
}
, l = (0,
y.Np)({
...n,
currentUserOrgId: t.workspace.orgId,
currentTeamId: t.workspace.teamId || null
}, r)
, s = !(0,
_.d9)(n.selectedView) && (0,
_.d9)(r);
if (a.eD && s) {
a.eD.openCommunity(l, t.workspace.userId);
return
}
function d() {
let e = (0,
_.d9)(n.selectedView) && !(0,
_.d9)(r);
a.eD && e && o.Ay.redirect((0,
i.dR)((0,
y.Np)({
...n,
currentUserOrgId: t.workspace.orgId,
currentTeamId: t.workspace.teamId || null
}, n.selectedView), {
fuid: t.workspace.userId
}))
}
if (e.dispatch(D()),
t.path) {
(0,
m.uE)("account_switched", n, {
newUserId: t.workspace.userId,
orgId: n.currentUserOrgId,
newOrgId: t.workspace.orgId,
teamId: n.currentTeamId,
newTeamId: t.workspace.teamId,
view: n.selectedView.view,
newPath: t.path
}),
o.Ay.redirect((0,
i.dR)(t.path, {
fuid: t.workspace.userId
})),
d();
return
}
(0,
m.uE)("account_switched", n, {
newUserId: t.workspace.userId,
orgId: n.currentUserOrgId,
newOrgId: t.workspace.orgId,
view: n.selectedView.view,
newView: r.view,
newTeamId: t.workspace.teamId,
teamId: n.currentTeamId
}),
(t.workspace.orgId && !l.includes(t.workspace.orgId) || t.workspace.teamId && !l.includes(t.workspace.teamId) || (0,
_.d9)(r) && !t.workspace.orgId && n.currentUserOrgId) && (0,
b.Y9)(t.workspace.userId, (0,
_.d9)(r), t.workspace.orgId, void 0, t.workspace.teamId),
(0,
h.ck)() ? L.m({
action: "reloadPage",
payload: {
fuid: t.workspace.userId
}
}) : (o.Ay.redirect((0,
i.dR)(l, {
fuid: t.workspace.userId
})),
d())
}
)
, U = (0,
R.nF)(e=>{
d.Ay.post("/api/session/app_auth", {
app_type: "desktop"
}).then(({data: t})=>{
var n;
let r = t.meta.id
, i = `/app_auth/${r}/grant`
, o = e.getState().authedUsers.orderedIds;
o.length > 0 && (i += `?authed_ids=${o.join(",")}`),
null == (n = a.eD) || n.startAppAuth(i),
e.dispatch(u.F.enqueue({
message: (0,
c.t)("file_browser.file_browser_actions.desktop_go_to_your_browser")
}))
}
).catch(t=>{
console.error(t),
e.dispatch(u.F.enqueue({
message: (0,
c.t)("file_browser.error_try_again"),
error: !0
}))
}
)
}
)
, B = (0,
R.nF)((e,t)=>{
e.getState().dropdownShown || e.dispatch((0,
P.j7)(t))
}
)
, V = (0,
R.nF)((e,t)=>{
let n = e.getState().dropdownShown;
(null == n ? void 0 : n.type) === t.type ? e.dispatch((0,
P.oB)()) : e.dispatch((0,
P.j7)(t))
}
)
, H = (0,
R.nF)((e,t)=>{
(0,
g.T)() ? (0,
v.Qn)(t.url) : o.Ay.redirect(t.url, "_blank")
}
);
function G(e, t={}, n) {
return (0,
P.$T)({
view: "folder",
folderId: e,
...t,
...n ? {
folderViewTab: n
} : {}
})
}
function W(e, t={}, n) {
return (0,
P.$T)({
view: "team",
teamId: e,
...t,
teamViewTab: n
})
}
let K = (0,
R.nF)((e,{index: t})=>{
(0,
r.sx)("Recent File Clicked", {
index: t
}, {
forwardToDatadog: !0
})
}
)
, z = (0,
R.nF)((e,{fileKey: t, entrypoint: n, currentPlanFilter: r, currentSharedByFilter: i, viewMode: a})=>{
(0,
m.k1)(t, {
state: e.getState(),
entrypoint: n,
planFilterId: null == r ? void 0 : r.planId,
planFilterType: null == r ? void 0 : r.planType,
sharedByFilter: i,
viewMode: a
})
}
)
, j = (0,
R.nF)(e=>{
(0,
m.uE)("Font Installer Downloaded", e.getState())
}
)
, Y = (0,
R.nF)(e=>{
(0,
m.uE)("Font Uninstaller Downloaded", e.getState())
}
)
, $ = (0,
R.nF)((e,{clickedResourceType: t, resourceIdOrKey: n})=>{
(0,
m.uE)("File Browser Nav Tree Clicked", e.getState(), {
clickedResourceType: t,
resourceIdOrKey: n
})
}
)
, Z = f.M4.Query({
fetch: async e=>(await N.p.getTrashedFilesV2(e)).data.meta,
schema: e=>e.object({
files: e.array(I.L.nullable()),
repos: e.array(e.object({
repo: S.z.nullable(),
main_file: I.L.nullable()
}))
}),
output: ({data: e})=>({
files: e.files.filter(e=>!!e && !!e.trashed_at && !e.deleted_at).sort((e,t)=>new Date(e.trashed_at) < new Date(t.trashed_at) ? 1 : -1),
repos: e.repos.filter(e=>!!e.repo && !!e.repo.trashed_at && !e.repo.deleted_at).sort((e,t)=>new Date(e.repo.trashed_at) < new Date(t.repo.trashed_at) ? 1 : -1)
})
})
, q = (0,
R.nF)((e,{orgId: t, teamId: n},{loadingKey: r})=>{
let i = N.p.getTrashedFilesV2({
orgId: t || "",
teamId: n || ""
});
(0,
E.N)(i, e, r),
i.then(t=>{
let n = JSON.parse(t.response);
e.dispatch((0,
P.pB)({
deletedFiles: n.meta.files
})),
e.dispatch((0,
P.pg)({
deletedRepos: n.meta.repos
}))
}
)
}
)
, J = (0,
R.nF)(async(e,{previousView: t, openInNewTab: n, onSubmitReturnToPrevView: r, isEduTeam: i, ignoreCurrentPlan: a})=>{
let o = e.getState();
if (n) {
let t = (0,
y.xS)(o, {
view: "teamCreation",
ignoreCurrentPlan: a
});
e.dispatch(H({
url: t
}));
return
}
let l = (0,
s.hW)("starter_team_loophole_experiment_m0")
, d = (0,
s.hW)("starter_team_loophole_experiment_m1")
, [c,u] = await Promise.all([l, d]);
o.user && (0,
p.e5)({
userId: o.user.id,
teams: Object.values(o.teams),
rolesByTeamId: o.roles.byTeamId,
getM0Config: ()=>c,
getM1Config: ()=>u
}) ? e.dispatch((0,
P.$T)({
view: "teamUpgrade",
teamFlowType: w.SC.CREATE_AND_UPGRADE,
teamId: null,
paymentStep: T.tn.PLAN_COMPARISON,
previousView: t,
isEduTeam: i,
ignoreCurrentPlan: a
})) : o.user && (0,
p.Mk)(o.user.id, Object.values(o.teams), o.roles.byTeamId) ? e.dispatch((0,
P.$T)({
view: "teamUpgrade",
teamFlowType: w.SC.CREATE,
teamId: null,
paymentStep: T.tn.CREATE_TEAM,
previousView: t,
isEduTeam: i,
ignoreCurrentPlan: a
})) : e.dispatch((0,
P.$T)({
view: "teamCreation",
previousView: t,
onSubmitReturnToPrevView: r,
isEduTeam: i,
ignoreCurrentPlan: a
}))
}
)
}
,
270056: (e,t,n)=>{
"use strict";
n.d(t, {
$l: ()=>F,
B7: ()=>P,
HA: ()=>A,
Hh: ()=>R,
IU: ()=>N,
Kc: ()=>D,
MR: ()=>w,
TI: ()=>U,
WC: ()=>B,
ZJ: ()=>L,
bE: ()=>x,
gO: ()=>S,
ub: ()=>I,
vt: ()=>O,
y2: ()=>k,
yH: ()=>C,
yJ: ()=>M,
z6: ()=>T,
zL: ()=>V
});
var r = n(167249)
, i = n(966712)
, a = n(309225)
, o = n(790724)
, l = n(27087)
, s = n(881388)
, d = n(939863)
, c = n(392592)
, u = n(738269)
, p = n(662275)
, m = n(988022)
, _ = n(875847)
, h = n(99506)
, g = n(416618)
, f = n(392830)
, E = n(668860)
, y = n(344950)
, b = n(980820)
, v = n(936500);
let I = (0,
b.MM)("FOLDER_DESCRIPTION_UPDATE", (e,t,{optimistId: n})=>{
l.Ay.put(`/api/folders/${t.folderId}/description`, {
description: t.description
}).then(({data: t})=>{
e.dispatch(b.hp.commit(n)),
e.dispatch(M({
folder: t.meta
}))
}
).catch(t=>{
e.dispatch(b.hp.commit(n)),
console.error(t),
e.dispatch(s.s.error((0,
d.t)("file_browser.file_browser_actions.update_subscription_error")))
}
)
}
)
, T = (0,
b.MM)("FOLDER_UNPIN_FILE", (e,t,{optimistId: n})=>{
l.Ay.del(`/api/folders/${t.fileKey}/pin`).then(t=>{
e.dispatch(b.hp.commit(n))
}
).catch(()=>{
e.dispatch(b.hp.revert(n)),
e.dispatch(s.s.error((0,
d.t)("file_browser.file_browser_actions.file_unpin_error")))
}
)
}
)
, S = (0,
b.MM)("FOLDER_PIN_FILE", async(e,t,{optimistId: n})=>{
(0,
m.xr)("file_browser_folder_pin_file", t.folderId, null, e.getState(), {
fileKey: t.fileKey
}),
await l.Ay.post(`/api/folders/${t.fileKey}/pin`).then(t=>{
e.dispatch(b.hp.commit(n)),
e.dispatch(c.F.enqueue({
error: !1,
message: (0,
d.t)("file_browser.file_browser_actions.file_pinned_to_project")
}))
}
).catch(()=>{
e.dispatch(b.hp.revert(n)),
e.dispatch(s.s.error((0,
d.t)("file_browser.file_browser_actions.file_pin_error")))
}
)
}
)
, w = (0,
r.N)("FOLDER_SET_PINNED_FILE")
, A = (0,
r.N)("FOLDER_DELETE_LG_SHIM")
, C = (0,
r.N)("FOLDER_DELETE")
, N = (0,
r.N)("FOLDER_CLEAR")
, O = (0,
b.nF)((e,t)=>{
let n = (0,
_.SS)(t.name);
if (n)
return e.dispatch(s.s.error(n)),
null;
e.dispatch(p.Lo()),
e.dispatch(u.bx());
let r = (0,
f.D)(t.teamId, t.orgId || null);
if (r && void 0 === t.isInviteOnly && void 0 === t.isViewOnly && void 0 === t.teamAccess)
return e.dispatch(s.s.error("inviteOnly and viewOnly fields or teamAccess field must be defined")),
null;
let i = {
id: (0,
_.d)(),
name: t.name,
description: null,
path: t.name,
team_id: t.teamId,
is_subscribed: !1,
is_favorited: !1,
created_at: `${new Date}`,
updated_at: `${new Date}`,
is_invite_only: !1,
is_view_only: !1,
settings: {
webhooks: {}
},
deleted_at: null,
sharing_audience_control: null,
team_access: null
}
, a = r ? t.sharingAudienceControl : null
, c = r ? t.teamAccess : null
, b = l.Ay.post("/api/folders", {
team_id: t.teamId,
path: t.name,
is_invite_only: t.isInviteOnly,
is_view_only: t.isViewOnly,
sharing_audience_control: a,
team_access: c
}).then(({data: n})=>{
var o;
e.dispatch(C({
folderIds: [i.id]
}));
let l = n.meta;
for (let n of l)
if (n.name === t.name) {
if (e.dispatch(x(n)),
r) {
(0,
m.xr)("Folder Created", n.id, n.team_id, e.getState(), {
sharingAudienceControl: a,
teamAccess: c
});
let r = e.getState().user;
(null == (o = t.inviteEmails) ? void 0 : o.length) && t.teamAccess && e.dispatch((0,
g.rq)({
emails: t.inviteEmails,
emailsToExclude: r ? new Set([r.email]) : void 0,
resourceType: h.vt.FOLDER,
resourceIdOrKey: n.id,
level: t.inviteLevel || E.e6.VIEWER,
source: "new_project_creation_modal"
})),
y.G.getRoles({
resourceId: n.id,
resourceType: h.vt.FOLDER
}).then(({data: t})=>{
for (let n of t.meta)
e.dispatch(v.bE({
role: n
}))
}
)
}
t.shouldRedirect && e.dispatch(u.$T({
view: "folder",
folderId: n.id
}));
break
}
return l
}
);
return (0,
o.Q)({
store: e,
requestPromise: b,
fallbackError: (0,
d.t)("file_browser.file_browser_actions.create_project_error"),
next: e.dispatch,
action: x(i)
})
}
)
, L = (0,
b.nF)((e,{folderId: t, folderName: n, teamId: r, isSubscribed: s})=>{
let c = s ? "Folder Subscriber Added" : "Folder Subscriber Deleted";
(0,
m.xr)(c, t, r, e.getState());
let u = l.Ay.put(`/api/folders/${t}`, {
is_subscribed: s
});
if (s)
(0,
a.WB)().optimisticallyCreate({
ProjectSubscription: {
[`optimistic-${t}`]: {
folderId: t,
userId: (0,
i.Ay)().user_data.id,
projectV2: {
id: t,
path: n,
updatedAt: new Date,
createdAt: new Date,
deletedAt: null,
viewOnlyAt: null,
inviteOnlyAt: null,
orgId: (0,
i.Ay)().org_id || null,
teamId: r,
canRead: !0,
canEdit: !1
}
}
}
}, u);
else {
let e = (0,
a.WB)();
H[t] && e.optimisticallyDelete({
ProjectSubscription: {
[H[t]]: null
}
}, u)
}
(0,
o.Q)({
store: e,
requestPromise: u,
fallbackError: (0,
d.t)("file_browser.file_browser_actions.update_project_error"),
next: e.dispatch,
action: M({
folder: {
id: t,
is_subscribed: s
}
})
})
}
)
, R = (0,
r.N)("FOLDER_LOAD")
, P = (0,
b.nF)(async(e,{folderId: t})=>{
try {
await l.Ay.post(`/api/folders/${t}/claim`),
e.dispatch(R({
folderId: t,
forceFetch: !0
}))
} catch (t) {
e.dispatch(s.s.error(t.message || (0,
d.t)("file_browser.file_browser_actions.claim_team_error")))
}
}
)
, k = (0,
r.N)("FOLDER_PUT_UPDATED_AT")
, D = (0,
r.N)("FOLDER_LOADED")
, M = (0,
r.N)("FOLDER_PUT")
, F = (0,
r.N)("FOLDER_BATCH_POST")
, x = (0,
r.N)("FOLDER_POST")
, U = (0,
r.N)("FOLDER_STOP_RENAME")
, B = (0,
r.N)("FOLDER_BEGIN_RENAME");
function V(e) {
H = e
}
let H = {}
}
,
994988: (e,t,n)=>{
"use strict";
n.d(t, {
BV: ()=>m,
HF: ()=>p,
QA: ()=>f,
TW: ()=>h,
Tu: ()=>E,
Zv: ()=>u,
eG: ()=>y,
eT: ()=>g,
kE: ()=>c,
mH: ()=>_,
tG: ()=>d
});
var r = n(167249)
, i = n(27087)
, a = n(939863)
, o = n(392592)
, l = n(980820)
, s = n(440535);
let d = (0,
r.N)("GENERIC_COMMENT_COMMIT_CREATED_COMMENT")
, c = (0,
r.N)("GENERIC_COMMENT_COMMIT_EDITED_COMMENT")
, u = (0,
r.N)("GENERIC_COMMENT_COM
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment