From d0a33950594483bcede77a04b4b67ca7545ca89f Mon Sep 17 00:00:00 2001 From: Marius Andra Date: Mon, 17 Jun 2024 11:07:32 +0200 Subject: [PATCH 1/2] feat(hog): generateUUIDv4 (#23006) --- hogvm/__tests__/__snapshots__/stl.hoge | 3 ++- hogvm/__tests__/__snapshots__/stl.stdout | 3 +++ hogvm/__tests__/stl.hog | 3 +++ hogvm/python/stl/__init__.py | 9 +++++++++ hogvm/typescript/package.json | 2 +- hogvm/typescript/src/stl/stl.ts | 7 +++++++ 6 files changed, 25 insertions(+), 2 deletions(-) diff --git a/hogvm/__tests__/__snapshots__/stl.hoge b/hogvm/__tests__/__snapshots__/stl.hoge index b55b0303ac63a..d9e6ec9c41f51 100644 --- a/hogvm/__tests__/__snapshots__/stl.hoge +++ b/hogvm/__tests__/__snapshots__/stl.hoge @@ -22,4 +22,5 @@ "print", 1, 35, 33, 0, 2, "tuple", 1, 2, "notEmpty", 1, 2, "print", 1, 35, 33, 2, 33, 1, 2, "tuple", 2, 2, "notEmpty", 1, 2, "print", 1, 35, 32, "", 2, "print", 1, 35, 32, "-- replaceAll, replaceOne --", 2, "print", 1, 35, 32, "L", 32, "l", 32, "hello world", 2, "replaceAll", 3, 2, "print", 1, 35, 32, "L", 32, "l", 32, "hello world", 2, "replaceOne", 3, -2, "print", 1, 35] +2, "print", 1, 35, 32, "", 2, "print", 1, 35, 32, "-- generateUUIDv4 --", 2, "print", 1, 35, 2, "generateUUIDv4", 0, 2, +"length", 1, 2, "print", 1, 35] diff --git a/hogvm/__tests__/__snapshots__/stl.stdout b/hogvm/__tests__/__snapshots__/stl.stdout index 5d85f96594bf7..d8c2ecb8d346a 100644 --- a/hogvm/__tests__/__snapshots__/stl.stdout +++ b/hogvm/__tests__/__snapshots__/stl.stdout @@ -50,3 +50,6 @@ true -- replaceAll, replaceOne -- heLLo worLd heLlo world + +-- generateUUIDv4 -- +36 diff --git a/hogvm/__tests__/stl.hog b/hogvm/__tests__/stl.hog index 7cb6c0fdba908..3fb041c261677 100644 --- a/hogvm/__tests__/stl.hog +++ b/hogvm/__tests__/stl.hog @@ -50,4 +50,7 @@ print('') print('-- replaceAll, replaceOne --') print(replaceAll('hello world', 'l', 'L')) print(replaceOne('hello world', 'l', 'L')) +print('') +print('-- generateUUIDv4 --') +print(length(generateUUIDv4())) diff --git a/hogvm/python/stl/__init__.py b/hogvm/python/stl/__init__.py index f61674dd3ed1a..33269285b1636 100644 --- a/hogvm/python/stl/__init__.py +++ b/hogvm/python/stl/__init__.py @@ -147,6 +147,14 @@ def replaceAll(name: str, args: list[Any], team: Optional["Team"], stdout: Optio return args[0].replace(args[1], args[2]) +def generateUUIDv4( + name: str, args: list[Any], team: Optional["Team"], stdout: Optional[list[str]], timeout: int +) -> str: + import uuid + + return str(uuid.uuid4()) + + STL: dict[str, Callable[[str, list[Any], Optional["Team"], list[str] | None, int], Any]] = { "concat": concat, "match": match, @@ -173,4 +181,5 @@ def replaceAll(name: str, args: list[Any], team: Optional["Team"], stdout: Optio "decodeURLComponent": decodeURLComponent, "replaceOne": replaceOne, "replaceAll": replaceAll, + "generateUUIDv4": generateUUIDv4, } diff --git a/hogvm/typescript/package.json b/hogvm/typescript/package.json index 53c5805ebe241..9232321bd00ac 100644 --- a/hogvm/typescript/package.json +++ b/hogvm/typescript/package.json @@ -1,6 +1,6 @@ { "name": "@posthog/hogvm", - "version": "1.0.13", + "version": "1.0.14", "description": "PostHog Hog Virtual Machine", "types": "dist/index.d.ts", "main": "dist/index.js", diff --git a/hogvm/typescript/src/stl/stl.ts b/hogvm/typescript/src/stl/stl.ts index 7966e58ff2d93..0e17553f72236 100644 --- a/hogvm/typescript/src/stl/stl.ts +++ b/hogvm/typescript/src/stl/stl.ts @@ -127,6 +127,13 @@ export const STL: Record replaceAll(args) { return args[0].replaceAll(args[1], args[2]) }, + generateUUIDv4() { + return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { + const r = (Math.random() * 16) | 0 + const v = c === 'x' ? r : (r & 0x3) | 0x8 + return v.toString(16) + }) + }, } export const ASYNC_STL: Record Promise> = { From 567be75819af7365b453602cb6917421000c7b4e Mon Sep 17 00:00:00 2001 From: Ben White Date: Mon, 17 Jun 2024 11:25:33 +0200 Subject: [PATCH 2/2] feat: More Hog templates (#22957) --- ...nel-top-to-bottom-breakdown-edit--dark.png | Bin 184785 -> 184787 bytes frontend/src/lib/components/CodeEditor.scss | 10 + frontend/src/lib/components/CodeEditors.tsx | 65 +++ .../hogfunctions/HogFunctionInputs.scss | 9 - .../hogfunctions/HogFunctionInputs.tsx | 335 +++++++++----- .../hogfunctions/HogFunctionInputsEditor.tsx | 116 ----- .../PipelineHogFunctionConfiguration.tsx | 436 ++++++++++-------- plugin-server/package.json | 2 +- plugin-server/pnpm-lock.yaml | 8 +- posthog/cdp/templates/__init__.py | 4 +- .../customerio/template_customerio.py | 106 +++++ .../customerio/test_template_customerio.py | 42 ++ posthog/cdp/templates/helpers.py | 24 +- .../cdp/templates/hubspot/template_hubspot.py | 97 ++++ .../hubspot/test_template_hubspot.py | 84 ++++ posthog/cdp/templates/slack/template_slack.py | 9 +- .../templates/slack/test_template_slack.py | 22 +- .../cdp/templates/webhook/template_webhook.py | 2 +- .../webhook/test_template_webhook.py | 8 +- posthog/cdp/validation.py | 9 +- 20 files changed, 908 insertions(+), 480 deletions(-) delete mode 100644 frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.scss delete mode 100644 frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputsEditor.tsx create mode 100644 posthog/cdp/templates/customerio/template_customerio.py create mode 100644 posthog/cdp/templates/customerio/test_template_customerio.py create mode 100644 posthog/cdp/templates/hubspot/template_hubspot.py create mode 100644 posthog/cdp/templates/hubspot/test_template_hubspot.py diff --git a/frontend/__snapshots__/scenes-app-insights--funnel-top-to-bottom-breakdown-edit--dark.png b/frontend/__snapshots__/scenes-app-insights--funnel-top-to-bottom-breakdown-edit--dark.png index 53a5c8db24622f933374b8cb0b90512b0d56f8ba..a3cf660f1ff027a93cbd9e1c93461e5aa9ef1e1f 100644 GIT binary patch delta 131555 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

S5x)_gjshWSVc-&fm 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¬U4oHha%=tEqb5dOVS#D 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

(^72Tp|%Md3X7TVIFKMgb0i zRw?k#lJ>#DGXRY&EtB6R4G{-`C$OA`t?QwPh`_UFU2yFNsudFOkT%h@_w;z|?wT`|6jyl+kA+>p)4Cgu!_oEZ*~7*LFu#svw!Ezj z*A_r)NH2a#+Mq3b6-!hAZ+L9iyuNc04>E-yE%x6_OVQH~pZaTw>BT% zu18amLha}k6QeG6X%oHGj=m&irr{&aGX|n_SP@ny;V}>TScWHaeo?#7dWtgQ;6Z-t zn0tjTC%YV-+1r?f3=sKdIcZ?-rMm&O`pM5*J>+N3@|gs0EeKvk?@gc=@>=>9L1pCn zZFPQoT9}1_B-JtF#WOy8V_7H?Y!B`0Gr2^S1J#3b;T_96J=Bcqc{X2j!{T z{S|Nk41%evpNa zPlY~&hy*TIQ>MrcK2b~lE{6lMSwnHG;TNaA|8q+{WfgRu)U>bZ3!C>%vu^ z(>$ednNfXrKO>sy`*1-hf*)(#_m(R?^a8*NRV?9>aMs{}wm3B)59{;vmzjq)7l)z% zpiwT;i`Q2MtrF#3EUrKKsMpviIixZ82tfVxCbOPGoz_}oEE<%1q!_4hUH10qcUMNm z#&hvZRjPt&@UThObtBl5^3AG(B$$QVH9CbG-xao=5wQD+*qQ1~;IB^1%$$YXCSkgT zx4OZWF{4O&^&4$(UcEe%`T;(U_)fm_tidP+$60al#RuHoA7$wYDx3M5d*Sd^!9Thtlm23kF1;PJUL-PY%rk&l4Q2t;j75iXmva z#frjY;TZwTpd2LUuG7v!%`heMxDUV#joGPYd9}&|Rt!gFjKq$4Om1;;Bj|9I6F6?H z?B;H+?ueu{-sInA_;XE}PByX$&D%a#2?GF(t~IL=_QZbMK2`KvXgf$kMx#OlcJwO{0yqb!J()W*L za^aykI@rTGO%(9BcM-Qu6Ujh5!H!AQ1p{+!XEFeGFPbyZ4I|*1qIq-^;&kv$}?x8Mo3DTY*%fdU#^? zEu&mpQ6!sA+8BgYHQ_i;(R?f=)z)<=A>F+zB5HAWYtdq! zdt4vAHD@l<_ZQ$(i*_ zLV{z_NKYvHe0^|`FY?n_IM2#7sHJ)5IT~#r(xwcwVZ5}pwH=(D!8AJ1e6Y-(3beoo z+(B3u1AfGhfJ5`mX)7{m>A|rmCYr~Qw0fPvqghYqa9?_JrPl+RHK1fY3H7}dxbm=Q zl%KHAQo}HMKfuF2OR-~i*9$n6NXyYUy`6Ulvox?qghA^oi7h8(e|j3|=V#oA zO0-%>pX9*d-{a%%={^Kv34(TZ%26J@dhEgB;rE~0a6;-hNSyH4T#nL_X8@7P8+W*W zQuy(d$B`(ruR}*vYYi}3fmUA7FTEqBA>$G3q~_kH)0i)ii0^f?RaPz?>o_ndy9e-~U zg#bQ2K4i`YsvrY%3Vd~%X2t($Qg{P4_f%SaHJrfye%{FLjfl)3sjb zK{}f73aiF&5Ca%fVcZR*Eyj{ZzBnQr7|6@M*)2Q08!E>#hPRKxcf8iNjyScLCTffW{OMSQOhyfjF^lQ`V8%M|P3KTefxPdAf=x;qs8> z<{X>xSV@TMPHaW0d6+sj<`r3cnSvLk$jkiFe(Rmzx& z*j9%;xk=9a|JkyOFh@34GENV35PVlZUK(w6uMq`>yEqWclB-nXEixaf*{ImJoNnpm zTqNh*RUkgv8XqPg9KqrVHxO0z69olU#4QFqjbG4-f254PxZ-`55tgjpYbl^^- z-?6*9`(==wKGB;tLP2vgzfm9X+4A*;)BfZ{pAGyL!Vzf$x9A;?IH@D{zt;}IY^^h9 zjTGp3-n0i*Z6fJBnz7Z7xMQGUdHV)2?Nl^vT z0Y`4$0#4-><$1%a99CgEigPJwhdyqTHyIoug?k-Uw7PK-?FjT3nOes}K1HJW z2>Qc_rg`wAN28>4ZIl8_=WK5=o$Xnr=X?lp*|!BJNOvOgfm0|TE8`YUj9l9)K~cf$^u;(M!H3& zBj$y!YmFarr&h<%%xm?LB)sr5^n%)A_m~q#ouZ~073obFZ>1xO*=T44tgd#4WA;U8 zv3c($x$Bpi3J)I}W4B`fQjIOOHObYPHUswBt*1=x!6(OBh zt2AfJ5WD5%5e_pHA28`RtF9mP1j(k+*^81g&Cuo?!fljhvm zf!vJ(%SLrFcUXwY@mJWNNx*VJfo$8w;aD?M*iaFCc0pK)kUP!Y`iua+abq$x%ZAt8 z48jWbPk%HQZkD2a@@uprFCm~UQgAi))^QxuuHlXbboIH?k+E3IOff%W9-aX>9s&Ab z;=T2^Kz*3k^)a4?{plU7TA3R;Mu}SqI>|44etCWU`jXC#6Q1dIqn;Lg&=3Y)Zl)nl zB<(h^KVATkhk^bg9UIl_0D9NZ3^$mFkqBYZc68-nYFm&v0s(AC$3GaAy@GKVYW*UO zm{2}uUwmOKm(CBgI|vp)-=MI!=O*RO2!NaduKp|dkclM(@)d?KHKl9J@i(pKE7iO~ z(~Fe@&l@JIqe8fPU*q(W13tm}AKSArGhp z@I=4HJqZX#y&gNxpZ1@fgLy`N)5jH{AgWzxe*d^qaZzcE_jidi?$6|{<)L&XNDfxq z5*2npUNk2^KLMt@I86uKMZE%YO!p)}E+SPi^QiSAtJ zAiR*7p|!9?;DTFOh2nu~A$7csUu4la%Ks3qd3fWrh|1snYV&u$!o!-<`C_LEj;SPI zoxSY-N(J)`x*fxDf3`-v^7BoS1C-_djoecYYQ=o1*}CeITElqV1TMhY+8WXY(w1KYpbvK6m)jY{8eJRNDS@onpIGg_|W1O69VZ(ZTZ>m#-dq5n3)PUIB#v z`%BI|Kz-3pU%}UZX#oMzkR&$CNWs98H#E2;Ls@1s*(RA=g^xFNodo(rfJX?^G*>Y_ zm4_&&aCajA3Cezs($*H}&m^D=_BI+j(o(RfJlMO=r4mxx!AsZ!yOglUq#j8J5u z>C{P4vUhR8b>80ZhGGIlL8t!w9+K}e8>;MKcbxzuZH}M*1JGQNN`7$Ygc3j74EA>x z@v4Co3h`BLfkyAk-(C3HEht2YeJbREVm?({EXP=$5S0+xdx9h4A{ABqi4%!}S~>;{ zD5e3mH*x`8e2ijNp3oWP5+`QC*hL9ov@$in0fJ$Y$&Q9EiQosj&H^xoihyU^mx4dG z;>juT4IriFCWtFDOGYyBxJ)qsOZ3Y_??$u(1B4qxh8eg)xw_YYo0VhTFB}@21m3;u z2ZdD8yqD{$j@6r=^6RJqO9$T`iEX6Z{&k^seMyQqkuKry6L$_aTDN#Z`PM0ed=j9k zHS6Vp9MjTZK6q!7{x0k6G&Zi!VE@FRKqXmtm09I2KtHAgkD+uDgwkCNnvIgSbE{!Z z35`RojID>G@ZX_{C*E$XPoU(;J#Q5ECu;AwcZUDCt#2rTp#9$jgp=$|*u@MS3Sm=o z_gdip{Eq0noDg%-qvqq#Z%BRb!65)x;w56@hQh^~5_13dO|BdfQUin2ZCm$(n?KQP zeGquOKtn_n<`#v+icD3)i)RMBp8`JS|C4e3W@>TZonU+GvL|rn{P}jYJwAnVCgA;Nt=G6}{ktcrgYfG?Mk+a&IPf{V_J-+12W~>w z3?cs7I~|nuh_mSI+g2LAgTbVrP*vAJAFQ zGau5(zubi_AUpp6Y3`X0Y(zpME*i;bys9Mp7JA87EUf<1WOuL~AS)q{9oDTQ(}gMP zvA^FN4ZKKqU`p^wbw2ygVE$JwpvMz+&*G%k;X7$)2Ko+iR3(XG?SP62B$`kBz^7?h zzVMJX_?KW0F+IIFIQ~RT?03ZQef;>bI<41)(!mtH{vd1M(0o=6lexi9q4ng-aG_-n zF*KbLor^nAQs-+tjj2QXv1ElI!e~KfFo;*-GRc|CK4x3UEJj_bq2el>@(ZkGke@ko zbhsltbGS)Rb$FDLGzth6m@ZRr89zt$A~?-|efUAf4ZLMm)=kIQ#t&Dgp^f8mTzeyw zN!4-;yJa)fS1vT606e^Q*iG6%WIV|IW6`<~jEdAtLXzy#NnuAvx`*m*M4P-vT+-*NR28lt`hrX0&d zs}Z1AXF7Q8VzXmxECsNFE)x+Ep;Ya3TUHRd2i)Mrp?Q-DC86u#&W;G-LXSnl#}tGUg9dGD6StCw+Hbq!8)Fi}M=%U4FDO*<&5gnO_*4^op|geOhFN3@o^rz*uLSPXQf z0)dN$>LfvBi8h@jLo>%0Eew9FL=>U_gt=BgLq_B}#~&Q-0ez^U{Ez}Jyxxnly!Exm z5w8=ITO_v+>@7#+yEqRo|5{%ZO$0PsMoAB4J|H01;R@&9-JV9JhwO$x^I>>;Qy6GI zZ*X3`qSyYBZDCPrzxqA0a8Y@8_RBEgM&(Jbw^Mefsn;=%&W@>LK8X)p>+U7G<{{h< zUSVg;&fummw;4cJA#|Dt9>be)hC+}a$*WzXpm{uk-Fe1}@g8C^ zCPG%E2dRJEmqtvBg#|&zq0q<>$jfPQWpQHOz_oTts^;&RqU4yhL z@Z)g-(=)Ywvs~60AS)b&pfo5dJM*!}FajLGv6FIxpBS2adf>4VT6V{7byN~2l+w^e zdX{&8ss_Q*bK&EfaFMx)GW*kR8KP(Ce3PM{x zzg(kIhbx%g6&fd-~mj)@g6np$ zrS4eb^VA>^0U*K9)2Cp6rGQgv{>x_ebbU>!y<;9mrL?9m^^$B6QWyy0Xd(dEc;2s> zI&b;VxZ}gsvzRRNEV%W+=dDIJo6^dY?fv~+$BiP+%XEXetkmmTF8sQ5gvd4_;Bj~> z0xL;>I}A;=jI#6uxOg&8Q|#KW^!KJJ_`p~JQ+9urYNz<+u>^n|&Jr`+f2c>RT6}oi zYZBc27C5`fQZb>a*M*{YSvq&-I=Pk9Lj)DuBY>q4n6>RiZfQdXT9u zdz4%zO^Sbge~&>90`t%=Dx4_~4ok~{e2)ejDD$Zsw;w&Ehz8vB=FPho@<|}`{CmQo zM@nAnGA2)Ft$P|qa=oEw&Opn-AZXj?y<9uij3*)>FvR-Dpi^-7%v@enxm~ujTnpX8 zKO}lx;|{=2=y6uoyk^BpcL@!0Q1TwJA3OdiOnlVd9;H2R9vlkk17NMK#)IE-ExIR5 zvO>2&$FLp<>8ggDq()DxC>rtD-6Y*)ZV-U@zl+K}`Xz(wXrOX~=40{LaiUV^Z1-?~ z#){8-0iJ(IFbsd2PV1+efLFq#UKF&w9E%bi)+dMKc}qa#p!9PT8>^BJ4yoJ z8-&Fn-ysK%;Bp3f;tI-#nem2#7wsm(k6yNbt07MH4{aoSV`L|P9!AJ}Dv#c5FAuS~ zHV^^FTQM&W;vkifP%QLQmi7$;dP{+E!43mwpKhy1&X2h~sk(-}>)fFxbgyWEruKP6%6F!&< zWLaEl;84A~Lhzx?63G3;JNvG1TM z9TQWus~Z;B4k#xBnrFb$#Rn@EkFqkd_;~JtQZszGzeQ;@^M(R6*vPKKtIaIX`~ew_ ziN4IQ!-NQ$fME;`Xa8Pwu|qR^YbR7EbdZOfC*!`wsPy$C_v9GL@@VW(KgRqhc%s`7 zK-S(EEL7|p9ow}J)3HFMCBuMhEV`j<#rxmGRj+5JNzyJk}P?9E$`MAOq z+3ljTrwVB#krG zRmX?;)j3L<@sKOSIOsZ*%a4(*tT$~dCSp5EwEP2g7Bk`DFU%hSOM#0LI1E(m)Ip%c zhPL?~AHz5$+GGFos!@;Kl9BzKvvbt$Wm@X_SN8TGy9j06U|t){4v>%l!*-8DK?&$P zAc}x`aen#oWlh-Tt=RcR`AlO4!W)~NujlIf92{tm1#l1$;!~~YXq#Pup()c}hk2zwk3e}I=cF^&UX0Yb@kX#+ zKliPy>@tZXqr5H5FyXsT)Kexvj1U0IDQc~fpjQJ5z|?!QXR2#zD1w_!NtW32#yPC-Ne&q=G2{1DR%}a0KMdXQJz(9q~WSKMrdM8W5uRa3fihVxej6iS3 z8JJYOb?;uNeS;qzgdSj}Hp26Uiz~}++mfOfx0AS19FSC8MXjuVxf$0TW}lxWzS6FK zX!D%*6qNPzBsVT1fnE>3G@l#zJ+a_Vf`?LKmOolOT$H#dwHmTklPsVv_4Cfv_MIda zj`e^E({oS1-#6_9`Dhf&W<9^q384??WnaNXkn6}$E1|31`kC|U)G3S|fV>)*hbA1u{Gg7_7))I`B-{W@n3C2-%-5DGdN7q4CG zgsOpgdS%vn2Z-q}%FOYW<6Pa=sTgX(1LzJyaWY90{ z4Bv;XJek@@|iG%Vn=Di(d$e{k%L>90wO6mu*finFn&no-jzL+A>`32s1`r4_`e# z9p|=vb)?KTS)1I$3D^ug_D2GeVOir7^^&1hJJ=G{5@TiIsGFZr?z5@rhmPm(HI4@s*t9p$HsgL zDPRLv?s&ODTb32v;-ZX6l)ZBcelb2&ynRFR`P0RZtP0!Pb|m|vpgIWge?1_@-`$MIaN+lK<6n%ACnQ6y@`R)$0YrlcPW@5?AWuP@*zf62kPM*JI)rqa(sIibw-8wZSxFDmTJ9wtqv~7_zWui7Y`#MfeKBH7IOU&07 zNUne}7kHco2s&?D?u@!-x|ANQ^xsN$a_ja}%wh(0ZB_~_k+J`BcM0C|$gjN4Nlckt znW2ePl7ftcqnu9}J`qK-iqO|R`x2t9vg4nTrIpUFD_jGa#u%HGc2Et$SiQuAn*tKv z)6RPwR;Hl;>LnNev{P-;5>BnA&j=3FivrGi0honC8^iD?-viBhb-ApdyGO1>?h!bn zVRCZrrobeoTIEEXjs}0(_jBX|AHU8q^kre6^*sAnAOu9@#w2aQ%4qgLa1$~%KSgjg zPrqTanc<3rOtiqs`!r$i+QRQefIO~|xkmP`X6;}Jp?+&<&1^Jl1Jcj{Hi)?HXRo$c zgG$HJ@^Vf=!OcG_f^biNkDQ$)=l_=L+Grj#W=Pc?q;YQEs{K~hXChD;o_*f>^OnZe z#f|y;)C;9~g}K@d1OR!zY)K|d3sza5Cd_NT+;XH|Nd!qw@Wa(c_OFcdTc{Qhy52vt z7=DhD^5VsK5@J=5wgqvZ?l$YG_uT1Z1QzEwX zl1QRh*ma53Nay2SFoH`_NoJYt7H>EHE7ODdvnq{xT*)?m>gpXKVUscuLswB5N+CK} z8Lb*2=TGiIZS5yGIXOQ+rBXHSwV?+28hDsll_^wJ$l>6opZJvF`ld4S0i1kRDzM*dc&7vLSIgWc z=>h`-pJ(i@7WhDi@B;X+)JukOVIl8?4#*X7%IIDKVX?{I3F7dT>wo^-9QmWjb)=O2 z49-E&E!7{hrB$o2JFJ-e?hRzu>J-;!40<^FfwuGYABD0@kj)NH3LT-;PZQ5it1DzZ z5B&O-p`)T$?8*J=^K{Y?HIzd~DT67Ct8O;Fx5o(FKHuM%x=No?_w3{^lcYJCWSfw{ zfmRbsdK%QY{k^HxdJ!*+J`LB9YA3N?pclDkhRz`8E|q^@Zp5AbzP`|G;`Sa>dN;BS zA>i|83P9vQRBGvhLvta%3OWmN4x#KWknD}Ku6!t#_RV4b?D++LG_PaXJ;XAw!rqJY zEEEwHwKa#zh8CK$KTK6sR4$S3%Pp2HLZF1R2He>`+h!d1Vs4Q8JWIB@4K*w3sK(>G zEdc7h$)IKkweJTA-?(_ImG+g$X@3XDo@@(Num$*HE$I1J+KDZ((}bnMI^HW>_DMI- zRS_jc#bzW0uiSA%%!Hq&3Tx|~3NtW2N);rdqtiAz*McKE-dH~&R_qm*n!l5f3svnC zkVxQgiCwxGgQ{jfyvJkP7_A-kp(jIxXK`OhCtX%V{6W_No9Xq<3y9a7h(!jB12pFl zb1WI2DBeO})}z%}L6BL~+KF{l*>l@ny9UZk?ty_9HN-0%*Et!KNxWl)dNr<=n~%H= zStP&l0WAwZ@LoAtJy=qtXo#~~*_^78c?UJ7T`0t8RP|MoNO^mD^8WsPF%p#;fs+js z1S6xwJVjn3Nl8hHLhdI0xG(#QuJ)!W#6PqYAKoE<9B%db9W({CEiAlNPgd!1r;axI z_k6D80A*63d9sY~oed1#)HyAvVO<*S!_?p+5!3*2=q!Qc5kGl#Q`5&?heCtgVc!EZ z@RWi#Lk$(x^RyQ@WF{uCpGBYk;K+RB-X$+}7G1KiunC!DsxZPW9CE~i$@U87;iE^t zook3F<2DW|*|dcWCqA}5groCM#dzcJo{x7xK*|%{Yf@5D=$_g*I{y(I0+R*2Krdyr zk664>2Lqv8Aw3#IyG4IfzV+v-wD+D7g1Xla_&F_*#{dAIt=;2s_;Gp*th`Xe{o{pUU%O#aeoL zZ$m=#OSi62GaJ?az;0T$&s$|>)VWB=eUPWJvE5R^Bqt~TOq)*}MD>*WG7sN@w4d>| z{**oPWmBi6zn=*9!2agEw_K{!y^}bC^`ElXFF7NQ%qx1}kPV*J(gp?2{wn8HJ5=Pm z`6ADIP|7vkSsZ%_67&o97TZ*dG#;-Z#X`PYwV2mfg%(L zJN>v>ChxNLH7mrNi;GU26r|zY)K6RW!dBw_OjVc6?|XA0B2e+%t&m<57MfY=%WQGT zra&rspr0i?qYa|NXo?0F9P8U=0y`^XhW%L;0xr9-CJE@8T$TSn($?Ced{TMu9tNAh z(UNtmVKfbG8kTEY1)?p{>?$x8y1j8 zYLlgc4dT5K1+=Rlw48M$yM^Qpplzd$Ck`B zH8pK9RbT`9cAk-7wzFY$)L)yXp?f3Pyuiw=28`(nV;M&wO8qJ;)Q@Y#v0Jw5{}d7g zFQJoEO7AUqJA7w7>pGZgO@vrlo*`EUM`M(S1Mx@K$mqe#Imz+>^4Xk}uw>uQpAFk$ z%bqUYC@tWwC|dBy^z$1o{$P`2A4A{Gay`OE>g2&^bmF71=C} zhfeHWQreYKTjLLu_p594+%sB6!SBY75f$OvNzO~cO;OwyFQJ@ZiQ#|QjZZiy4$tHX zeEfXmxEdOzH1m5;xM44UT5t{u+)nOQq_X$Xtw%H){msLpqR=47xp+_QzcL>JwOqBtNkVv&W?u-(ha_(GF}Mb@~&&`jNWt+0QdPqvyPjOvHPXYI~36Q|8(cs8z6|S z?QfC60=;_0&;sQ`@HAi`kFCEhW9P;F9rBH*e&UsMkvR`vCN$OB ztmCNu(4~6gPnksnnZiDzGxqh@r44V~~$3~P0NB00!q z)>ilaZ^@G5KgrVb4`bBtJUt;Rt#y~hetF6el!VpzgI8ZATle^e{>SdK@-5 zOW(`Qx!W&MTv!+ndEJc<#PLQwZ|Nn=UG^k`kETXws$i-7O?2bm=UX`xXY=P z^dv?WPG(oB>F2Cs3_0OZRJlP)N;>g8ffNK%O%FF%A!I`2Wn-5(Iy866z4KP6sR@-P z6bUG|Q2FgDFSLt*k|)A+=Dcf!Y2`dTADr3D%)ztI(tA-qiO=_6>*%|SUI0sKw7j64BmC}YEsiE zsFmAzLKO_7?RTynuo#B~YGj;^C+hyYc}~aEYipyPjj*f*LJy%3xkQ;g1Eu;~FZxap z0)?suXj0VmRu#aodEjb@!c?Xi+qeeyt0VuSRA6Z?U4rE4pFZo1Z&$l$~r~0d)Z0Uw0nL{FvtJl)6DL!A!W=C+%>_&qMSXj7i^T^ZJ6};qRB}Q@+oK z{Jk-pC(s*nS`hdw7${C4v+rJFgb~BVKDXMBHF&>A3QnNE{`obzS-!$aK}uR0UU{=O zkK1(k4diKxilNQjAc}OClQU5^E|wvru`dVkX>7>VGtyaD9>-ROsc4H z>V`O$GN63_4tfm?{|yF;IE%(->U;>D@PvmZu}`gr0b>Ht5^ra!?wf2u+_dVn++jCI zaIPSFubUK3ojP@eDLhBV6plZ5NUX~w(A9t?S?db!zzt-)qm=a+q=X?1r#bptLACdc)o$3C1RDMMl{xF2F7@oHhAur6=lx-?DES*4sMx{{IgC}4+&eWV^C$V z4i3s!93lXLVUyJk(zQMIuajPX^%EPXX9Uyn_fwyaJOBRDcSNJnczxGM)41OXnNYja z=|lYQddDLz!&&ZGYO43>|AY$1;_rNUPWRloGpp)!`Lrxh-8lE4cKn`2j$9gFZJocY z;litr+t47E8cOES8dt4)^od3Ntb2Eoq|x>*6sFnBtKW?lYS>D@#$(kKL*;QQQJK(P zwXDx!X+*}oigi?cdjlD)KDtfOlbA~Yx;3=bV`1%N$dfI{@AJL2&{9nwh3~-bHvF>P z?$D{j6st?4#2PnwFgVGi!E=pKvQ=*jU0`_URLdjEP`5(N<;%h6Dz4o|V}96SHi$C? zGc9i~-v?{DU{eIRGD_JepQg&y+qC}Uxgl~Ii5EVO=)moy5ntn-m7MQRLYMYlraG!s z0`vSeu48T(koIicr|g%5v2hlSQeTmHt-3!{QpZ+Sp&b?5WeSkEl0bdaf!)_uZ3>Ox zNM?U^zv_7a2o#?&>CgBAmdCpq-`>N9v^J2|og07Myv}lHjKiu~Iki0GfS@0KP{P5X z5U{)JKQ(MzTQ4qU1cKdwnPSqC4LFxXx_LK?5 z)$o^F#U}GZ$X)rATQ-+Ct&GA`onTmrP3I@VBYpHcp}~kx4%)FEuV3S6GOIt>k=_6O zE1AZyV;|@r(xgA_`}jIR#QM*Cb-Yv*8@_v%I={A-*2noB7@~dy%LYL3ElI|i@%vlQ zD@%JOSg#v*>SVlPdTvpXOrgua5#qvr$ZQ|ewn#Pw#!Tao7RaR& z24ylfauFE>qor^3e^-N7og#PVo_RcMn zGyg^?e8x^&;>6eJdV42?k?o}x z^6ngIbVmhmNAm4Z68Ila#FH0ry{V3v``|E~9b&F; z)I45;2f(!9%#tIFGItd`p>e}bKa$Jr9NJgzjH_yT zHN+uDRH))768~di_s<${K)yBk(f$}AK-U*XGt-|YzIV;*@SyWk{|1iHfOlXnfW*hf zHH4M@P~+{}w_oHQJp&cXbN0joS6QU=9@0|9$CL2MoTjqTHqi|pQn(;8br(In=-7g= za@b3Ihlgjfduf;C=uOif#O$gNt*aTv%Bb)&N<6KGO230US`O?3X0AT+r$Z7OzsH^gZ~Q+#>J?G)9Hf zLIPUAb3ZD{kB*d571HT2DV@>Mg~OC?2N9*VeQSH+fjs@02@%1^J^Pv*TLEE#PEa_% zpQtC_Gw5Yk%uw;@@6yds#tM=lnw@W18@lrzaZL2C{j^DY03=w%?3ZmHpWEDc=U3H~ zdt5Qbm>laJiqT5fsQDe#lK>E6fJ>|o8`||2$zaPSIYh_DQvupyxutUd-54v?+aHfU zwzFlL)kY~;XR?UAUote&6@B&ivAL4ydjUxuT8qcn4ILf)2j3U#2yrtfe;O|>`{O|G>N81Z2g%+%{Gzb95 zxBad%8&R8GBGhR6b`Bk z=i&0abos{Ckyq{{ofTH*COnnYw6t$MeULB|n`b{9ol^-g;+VN~;gyG6l7w8Q%6C3O zxE<5^R5T^y_JRLSnL%xyqO^+BOiZD+*~`APd={MCp{dTT$*dfhw1Ybi>MK*7VX_?G zCtN`e_ctVr&D+JMUFWO`tTSywQ+4Gyz5@5c&#P%J*<|V!jp4htHH= zj8G`Gxy@(yvN2P&n0LYTMuxkZh>YcsU>c6gv65c_Y)H>bvX9(IzgcR#j@58w5KpnD7oGWc|@{H4V^zQEN zja09Hm*M@VCx)+)CN3EH5O7=PEKdJVpr-Z~*!j0CL4P&H0w4UJfb*6(;@w{a<5~W? z_BoR)5)t3KrZ^;>&xdl~xn&<4m2>o#Ym__FD#QQpJLUreQC#|M>^H@;y6RPpKbhhs ziW4w5QUAgy-XTW&@2LwXX+icDpoObL&Ou!PFvp6RbIC3a!2@NlmqnJ$!HP!8g&Bhx#d zSY>-jZMm>!W~MLhBE&2#=N%3gxWHg`5~{6am5z@O@WT1@sR2-qbQL~c=O4@16K>yz z6a4zYAVx|`dZ2g}vq9_vd4!0eeo3BwIG667LgQW#r6gos)nz(bFcAT^y6TX%stOyR z$MYlU_{diDBItXz9(j22TGgq}ZYJibj5gk&;bqRxh1M&N>vtc>y`Pn;DP$JZc$~Ux z+GGfIwB_gyZjWKxw9(U#bccrnHuhuLSEEWEi4mi_g?C9d4!1yAJ`x+>5W!c8RE_#l z@cMqrHUud`%G;KPV=SMM8hWleQleyCEn(!Ra0|0Wzv4vx=#y=b86<8=D2x?urMRqU6 zWJjpLWGGUGd_<19HTN6M*l|v58rOoc+vqC893Wo9zY60ei#2%qEk3{>ur`#%udc3k zA49N#@`f&;KE@^;S&Refg|`N~SITczT!+N#-KBc+2wrC)$*{~Xg(i|HI&57k)QSz) zrA^VlMGVvPZOCiUSm-7dZ12n;o)IjyO*V|f`DtffcZg5)qR1wmPB3$zP5K`cW9qZ8 z>)9NwI6;Z~-hA@<0*>pSNb+Z_C+g<)jG!JveFpIGiO`;pfFtSK#v_mDovm7!?2FlW zPc#Nvdl4KK7u~M0CPg;Z#52HoU|q+!Wr0XuE-5nYD5@&DOu8R5Fu+q}dKe5ix^Xw9 zuwzSSl{urxcE8P(H@u;%4=f zsv8oLcdsy^DlbsC=4*9b0&ocqXJ9QwR#rGCt0-DF>Ik@OGW2eCoi}ON?RmGZ$p-XwJ_E%Q>}|t96AMOjc^sO8 z8~oI4Wcm#qDXo2{3fdY_I*_H=U^H|>XeG;lJ#d*$dJ+V-9*T?SyJF3u@COW#@t$?C z4Kac~v4c}nX4aX@nT7;;u)JtrkbM&e`huwxQN-B^ji(7D_vS&Y=Mfth*EBG3RIrDK z*>Y)mXFf?J$vD<|t?v6psmPxQV!wM=>yKev-c~@>`v6(zNT@qLKfdS;UHS-ad%AQb z79dLbL*RTEJPX+qg|N)PJr0B;0R-ICN*zcr0N(q@IEV8&;>K;xwE!$VKbFm{T4dUz z>b#NGW9ahU-(QC7@Nh>XQ&GNDD)spWu|1O*bP;%M4^F4ZI|`h(t^1 zZ9hl@@po2dh6j=GyKd*84T2emh=k&-Ujs$ixVaO+o8sINvLs(#?mu5x;rK*_4cw8y zt>ppk>S*s$8NjOk{`EEz{r3MZYaO6RRGO@+b>(}S7l8$pw@Ki3t;BMJ7z6f`=WhH^ z;;5&sfTz`p8x8k*9`g2WBt@w_3B`27b7ot&o2ZHSKgi_i$30BCVI*Q6wX zVU{*b4RvSYboE|-T3{PPGL##4gfmi%eC}<|4F&*G#0JHy!;V=hR5mcS@kJ>Pr@*Y= zle9OT&9VDh5pVhk*Y2+U$+uEHAyd(bpPlen$PWRFJo99&^ts#+fD3K5$C?GJDpY)jr zB78a7Alo`yFH=Z1u2yxMh*C&rX7e`hkM45u zt4ZH~{J4OJhu1CyXx$g&%NJXT&W?3ju{=#No%m$=^L)0ibbGnSl2lh98B1LrexKft z`y$UlXzn_kF#q<`*b_#q_j?JZ&2!G&%1js(*u~l2lcU_uBm$U;3SeV(dL+hd|RoD5b*!3FFxtja7XB2LI z;AgjLb1?3;jTi4c0%XX#hIM*x>)pF|&@aNFNkAy=h{>*b)sz`Mf&%R_1w|HDJHi0G zR|nhgzit;5-TTC<6v{Q`njOJWHB+`~)K_3xRLsE&+7vMTc?&e+e=IS=>=O~CVBc-Q zvKGi2-AMdAH3ZA#bF?1FkPClLB1qwN(gQ~=2q>>2`3g;NflfniviJs54w5Q@})e-$SvO4CDS z{gXFf_nX zE)8@J=6)qzp6$RIx0rTioH@j9K?QXVP~}KY#Hg+UyHnV~4}?L1fE%}XcuwHqiNg8v z?$jyDWj<1C16jkVKUCld2BIBxf3!UY3-*Yl_k-#;!iCJ(F_4M+l5jko?=;9Uq3%+R3TbGIw=7a zDV9Q^ofvq)q34A*6=Kx?n)d+~V=q!D#H`UiAt6`6B@AuO`mFYuK4FE!CZ5m{&Aj71au{wYCO21w zPe)2lQd7edUfAz8vu6e{1OL@4zsWTXKlHtl(sJh0B$GA7_Q-W!Se-FR2lcyz;Dee|x)?sY{bRith1SuOZm>4Um}+S;+bwj3}O)*M#_DfnE@ z5zMqtd@qrI_((igca|bEzNye&apmgtEdBpxku5GUEoM7|~4(_r4#oBwvbJ_my<1dP2gt8-185!9#BP3*G zRQ6sWlQ%i)#oJYe1KW(0TuT*7S15R+3pRj&swJ6=39huZ>mu z{~nQ$&8CBN^523}epTp+>3H~`zT)4(s_?&P2J~D1!(UKMJK?}6iUt2Nrtj8p4+>YZ zy?+}oO4{aHdw^W@ce!QttiHKr6_;!#qc{;G9isW~18)B$L*m+fiDA7%;#T=Wan^*` zw~;Bo1$HW7W4tSO2%C%7nZxMsj&UFW4rZ$#uT9EcaA}ojbeQtWshpt0;}h(c`B()FoF&daCIlas$1?n6fly+NXGb!)xAS{f<@Gx=B$Kav8t zJTdEA>FKuK(dBn~_aNVGisy%-67MT!)`8fzC!c zMUvI_(RM4bi>sTVjm?Lj1L;LgEICSb^bhcBPr>@V6y{>x~9sbYj?Sckcqsmkzz5?3!QEsvd(% za=sO1LAvp|$;#KYAr~@st-5Y%mlii|9;_V=*?k1Nkb)U@RH=zNx4Lear@yI!CNYnl zrN0YJXo$g61gyEhFBb=*{kmENO;;rot6XYgZdg27Irg0HNRXduA?MXo`FBS{l)K66 zVe+QuQC9-5>Lk4f=7=Wb+pwv)8X-Xy>DTS*wSVs~nMaaJqrNxh4+_4YuFfQh+b z5L}So<8eq4C`TDf$jx}Oq^KN54xp1@3w>^;|91ncl8wc5fEko@I?td^q6wbgIHb* z&)K2U=m(YH$NWfN!jl^ z-%-k<%}PaYQyI78o&+4$a56-WR+Y=4-=iXt?MX{brPy%vlFA}G<{ph@$Kt)~WX&zz z*E$Y>Bos!Dv7thIYc8Iq79y1_nf-wIt~v|ZTq1KSu;a0(g3k4%XsOQ&4;b|ZCm-$~ zFu`%(@%diQr{RN%zDJ|F1Pn6zQ`)Ry{1x;I?B>`jc2D+GZVB7xpPV|yg%7@gaF64S;M7*uz~ShQ1h-+Qeev-cC7gXLEhmb+7kVAO z_^HL)|D>j(y4O+4Ie=~I=0h@3$2EBED!R+S>eX3tvf1SOuDiI14cN~;f~xK}f+y>J zY`>gOz-Ru8&Coj9TxZ_*Jni!?;>I0x&bYbIwOo@RP+V|-~C${}1Ea@-$4eJuEkjrc6 zUFgcPAP$T?yjky%D7+vIHsqzAqAv#QeskGNO0;caVT!aNs?;phb#s?n;&_t{Ry)vC zMNOYMp+^)f8wc)EKAp{_gk>EyM+pq4%9^Z#S^D$X3_q>X_O8<F%zGew0FF+;35{I`Sy0501NMqZV?3`l4YP70XzFp{ zY)`eZcUqiY^tsbxosGqxP|Rw1&qSrNCOT}t3;3*E>dzWoHP)5d_(Nxv9K2AFH=EGy zBYyFwZ+uV2>Q?vda?gv6>}${ml56?s&C;&Np=pDs_;b|3?W9Ip98eMH$e`Ze0r_!x zON++NBaOIZBJ4}Zn@9R+bvXai56+dwhK7gZ%y$4q6+0?^kKpGE}TaFJ6Cz4`ni|-WRKLC08wkL?}{`QGMvR z;(~$AF8r+DBQGBoyorW61Z-HSgL&Jh{*P~m`}S5v2teoXVTb2noBo}Zb}G{s?cuk@ zhc)ROh~?73-T)DGdvr|Wu{2NwF~&nc1;u2)7kg!dtahq4uP;g1zXq*GhNf({1V+Wr zcecmwMStb<`&N%08?03+tav4*Y0tzQe*^}-T0HU;waB#e(d1SCU6-Rdb?=q($3I0j zv95jQ6-Y7sHRwOO!uHTJG&7#HE|5?vQ{(BFVeQI}PttZBY#j@g1}ZkXw4Uxr?O@jx z&95$qR&n8NkFO}A2ZCbr_QXi&0#Ii{ZmotIa_Vh&XdD-IbFlxI`;{pMh(b-Wr7C#Q zw82n=La=^dCB*};1=BbY0hSeRN;8sbqo0r8P~Py(1b6ajbMwP;FS=W|ZY};?0Jg>@ zpO_^Tj5&XnDxd2Uw*aV3xs^f*L1}_BXM#-Uv`W*}8Mzs|d0aX%xL!kXZ8{|&jW7N6 z<(x;bHN_#QinQEhQs5bhN;uwRt@icYX2H7FOzEj~cWokqjBUC)Y4~^=1o@{=|EdP! z8`X(7gP>{G{eaWiLV#dthy(H2Pai{fC{IS$!u%Ql7EdP^itxLov6_*RY3Q`%E0``&qYVpHs#7 zPaP$ReM0{dBH}Rn!ov39?MbK{(Y<8-d2~q;W$K7q@nwSTpXyE5V>zVh$1LgI&gZdm za|_@~l9Q+X%uvhBE#~|gd%hs%>KW9CJPGh?$hXox4BBlcvUQ{e86t;&UiYvIg=iewU7;P+ue?V(=j6k!Kt;_xiY~X9IJ` zQTFlJKZ&DjO{VBH;jqR#bMjiPfgMsEPyGC*x`>oLlR>UohI2T){i+yyb49H|Xu2O#FEyB_&;u=1HG#*Z+AE+7n^xzXKfg?p#n&c{tJv zeyuKhJVqyB%^KuuJm#l4VP4g5bH9hsANG%KF64m&S0UA?-Os?!)j z4Z&(bX9>&SvM-su@37V$oq|>B9piuc8sfW_g^%U~o(c~7zwGa_xpas*@L(l&?F#@D z^ZI=1BXyln^d=sM2Dpqn3F z+@BW3KOauV>+5ssz{K22!Ee8v@6lo{6s}5c1?l0`ojJs1JIEp=E{YBg4H^RFJ;8^= z(ESu{1&|GT$H!AUIR!i#`E(6V)14oP0W96$dgs`lq%TtKeeAh*^JxsEIS~>P0)YjB zqxTvu99f(IUsCZ}34y321P1AL=pe6kgND<}lYu|+yzU}bf{1TrYN(|>y%tD(@ke^w zkjflFBVkL3*o`&=Eb5RLOc10mqMx)EI9&ovZwj$L$5a<_Sr6Oy!Bns!@yJog@Zp6%uEObwqoY#_B zJrU0Mv<(7=ZgXpsD?8azA8rA?elM$MKln?W|2`JO8MM}`l(&d$_>IMc{4M+f{zFto z?I^L8+qIlQ(1X)q3Cb6vwG#R-%YRt$|MVAsU&)gD$I@RdVCj@X7ky#z#)028SrTKTRJV6SHexlMs_PqI(NdWpbH2*w-+q`dO;n5detU(Gp6q8VaKmRAp28?}cP=N&B3H8pj_y*lVkoXSg`J% zH_7oRed@}%jY=ZNI8MlRkb@DCO1**z@>U8^gJZ!$j#BA-dwRpqu5zu~o*Q@ow{BB8 zFqo?eB^)|I;_v+(8)V7CE{Z}GnpIif`y&Q1lEzKexGrqJ$_2$S+K1`weGy1Q8WR%} zH*j&^?YP5>jK8$83UA5+rZ~eaG@W)!Ji^aUI{z8G85Y%FQSk*cCRWBRG0g@fhm5c9 z#vM5-04oT;4Rv}2u?Ps3Spa>WF3+JyrO6A-4A%lCj1U>eb2ulKIjv0nJ~{)ZQsk|4PzB3_ zA6NiW*;qw2WnB_;`|-{-bhXTdwSE%>RQV1A`n7deATDWqj6sD)@M)K@UeZ*3V-~3J zVeX)x(#rAXwYy{)&*omzN_eT|tc1$xNLD*)mn{59mQF0ydu7AS&A9%uoXXwR-1Jro z$ZIo%)Fji?lGQSwrYWP(pN#pt^2ZT(f6BFO_ZQ%3{V}@3kfkX=fx|5L7Y>4X|#<@PZrr@ps5rYb(?D!E3e zEP?rYGKK{muFvMj0)hI0&fCIAJ@^<9*(sz=9MJdoG^Jr#SLroB _yZ;#lLIQg=( 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 I_a49aKa;19LI3~& delta 131647 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

uDO+vj=yuZk+t>7GL}{TD4BKyR>?7 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

(HIyJ$x;p*pIQ# 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�tp@Bh#zMmJhS0I+QaOYFvaRxvW)MlyWD3!qJP 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 ~YTwk( zidvB&uzWc9ls&zTssk=ZiSnESOt)O{IoW}k40dv2d zB>v0&ds_q5kIB`*16@E&XliB)Ss)-HvgkA=1(qk;`|4TghjcKf@bK-n#8&|1jLL1= zfnE?77iUxLY!^wU2qBM(Yw$mHd9?>P_)n;We%j4-LczFX0(3}i-4`g}F&wY^$Y zXbN63$odE>4;`d&E*pdeMQR_fzXwJelvy2cC%{$n>{(#3SF`Q@_Hv?y4>vb=Ajw`B zH8(t3tq$tuyE0l~bLTYoE~K)We%0^(gyI5ot*`Gw>4Skpg&--Hs!Q}xQliy$lzvim zehuAHe+iypVP}fGUXlITeT?$Lpl+mkNJx?}{Yl9w7lw?*ZA*C$4+kXPRBD`RjO8^D>2|Dc^a2t!Od92yhROeW~DqqsG| z$3F+#Np+lCEgmflCF-S0=q3L^Sc{E8-L2{U{tcE z^oEyIhuSx2kT02`)h&flOPi2Uq60bz@Q2}N)8Q53i?;PO9wB! zOYSiu1*SEV?>i+>a$7_8{j|g3ZLo)J`WjDoU=4Z$nAFmSF%e1*uZXBLt>TBETiq>1 zm_NC#L~}2FaoGQuy=9W}Irz){e?kBMcX|9fkjI1XIP<`X%3ODrL5;=PXpZoib>uDr zQzF40j-^<>pk4ABsw1s)989wJGiB+{c&=@3V-xJ>=XWnPAOKHGiwjwZH9ZcC(T9jb z7=1-K{R+4Iy@&0%Nelh`F2u6NaA8B9%zX>XsmF)Exi)BcK#v>oY7^>W?emDwO-9+q z`B>GTwU%NmEN#rAl5QQM1Q6J!c4uPL>OM1$w`tElpN56vZ>oO>Bih2;I_LEHW2ze1 zV@f0LZA{<~&Zs{5lE)X1MTt#^pmtGYbVQ+rrzE|k-`JDYZK61CI;v81X>98cO$ zeXzGZ`}WB5`)(Znp!jc=fcJvqS}$xC6Ua|93^EJp=+O7NX9HUTrSARi*CGxbzCPZA zHP*~9ecaIBatb(fsvItYs5rPrAk+oFqobp+gj;Pvk5|Iy@EN-|K&`z6Gw)qsXTdtP zxe|)ZL}fsV)SWwbf&sSuQIE;eeqiVd=x1w!R?{BHQ~)XFGWwiiD3o378Ck{Nne?;g ztb`W=-f`?%(NaNO8IADbKm{!ZaN$h5cqE8P z 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 diff --git a/frontend/src/lib/components/CodeEditor.scss b/frontend/src/lib/components/CodeEditor.scss index 8a41a62c5d9ca..e78556d3a5235 100644 --- a/frontend/src/lib/components/CodeEditor.scss +++ b/frontend/src/lib/components/CodeEditor.scss @@ -6,3 +6,13 @@ width: 100%; text-align: right; } + +.CodeEditorResizeable { + .monaco-editor { + border-radius: var(--radius); + + .overflow-guard { + border-radius: var(--radius); + } + } +} diff --git a/frontend/src/lib/components/CodeEditors.tsx b/frontend/src/lib/components/CodeEditors.tsx index f88fa872d139d..d66ef75f4d260 100644 --- a/frontend/src/lib/components/CodeEditors.tsx +++ b/frontend/src/lib/components/CodeEditors.tsx @@ -4,6 +4,8 @@ import MonacoEditor, { type EditorProps } from '@monaco-editor/react' import { useValues } from 'kea' import { Spinner } from 'lib/lemon-ui/Spinner' import { inStorybookTestRunner } from 'lib/utils' +import { useEffect, useRef, useState } from 'react' +import AutoSizer from 'react-virtualized/dist/es/AutoSizer' import { themeLogic } from '~/layout/navigation-3000/themeLogic' @@ -34,3 +36,66 @@ export function CodeEditor({ options, ...editorProps }: CodeEditorProps): JSX.El /> ) } + +export function CodeEditorResizeable({ + height: defaultHeight = 200, + minHeight = '5rem', + maxHeight = '90vh', + ...props +}: Omit & { + height?: number + minHeight?: string | number + maxHeight?: string | number +}): JSX.Element { + const [height, setHeight] = useState(defaultHeight) + const [manualHeight, setManualHeight] = useState() + + const ref = useRef(null) + + useEffect(() => { + const value = typeof props.value !== 'string' ? JSON.stringify(props.value, null, 2) : props.value + const lineCount = (value?.split('\n').length ?? 1) + 1 + const lineHeight = 18 + setHeight(lineHeight * lineCount) + }, [props.value]) + + return ( +

+ + {({ height }) => ( + + )} + + + {/* Using a standard resize css means we need overflow-hidden which hides parts of the editor unnecessarily */} +
{ + const startY = e.clientY + const startHeight = ref.current?.clientHeight ?? 0 + const onMouseMove = (event: MouseEvent): void => { + setManualHeight(startHeight + event.clientY - startY) + } + const onMouseUp = (): void => { + window.removeEventListener('mousemove', onMouseMove) + window.removeEventListener('mouseup', onMouseUp) + } + window.addEventListener('mousemove', onMouseMove) + window.addEventListener('mouseup', onMouseUp) + }} + /> +
+ ) +} diff --git a/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.scss b/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.scss deleted file mode 100644 index 4e7140c67d64b..0000000000000 --- a/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.scss +++ /dev/null @@ -1,9 +0,0 @@ -.HogFunctionInputCode { - .monaco-editor { - border-radius: var(--radius); - - .overflow-guard { - border-radius: var(--radius); - } - } -} diff --git a/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.tsx b/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.tsx index f17226633c5f2..2b0dac6034ef2 100644 --- a/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.tsx +++ b/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputs.tsx @@ -1,17 +1,26 @@ -import './HogFunctionInputs.scss' - import { Monaco } from '@monaco-editor/react' -import { IconPencil, IconPlus, IconX } from '@posthog/icons' -import { LemonButton, LemonCheckbox, LemonInput, LemonSelect } from '@posthog/lemon-ui' -import { useValues } from 'kea' -import { CodeEditor } from 'lib/components/CodeEditors' +import { IconGear, IconPlus, IconTrash, IconX } from '@posthog/icons' +import { + LemonButton, + LemonCheckbox, + LemonInput, + LemonInputSelect, + LemonLabel, + LemonSelect, + LemonTextArea, +} from '@posthog/lemon-ui' +import { useActions, useValues } from 'kea' +import { CodeEditorResizeable } from 'lib/components/CodeEditors' +import { LemonField } from 'lib/lemon-ui/LemonField' +import { capitalizeFirstLetter } from 'lib/utils' import { languages } from 'monaco-editor' import { useEffect, useMemo, useState } from 'react' -import { AutoSizer } from 'react-virtualized/dist/es/AutoSizer' import { groupsModel } from '~/models/groupsModel' import { HogFunctionInputSchemaType } from '~/types' +import { pipelineHogFunctionConfigurationLogic } from './pipelineHogFunctionConfigurationLogic' + export type HogFunctionInputProps = { schema: HogFunctionInputSchemaType value?: any @@ -19,7 +28,11 @@ export type HogFunctionInputProps = { disabled?: boolean } -const SECRET_FIELD_VALUE = '********' +export type HogFunctionInputWithSchemaProps = { + schema: HogFunctionInputSchemaType +} + +const typeList = ['string', 'boolean', 'dictionary', 'choice', 'json'] as const function useAutocompleteOptions(): languages.CompletionItem[] { const { groupTypes } = useValues(groupsModel) @@ -75,23 +88,13 @@ function useAutocompleteOptions(): languages.CompletionItem[] { function JsonConfigField(props: { onChange?: (value: string) => void - className: string - autoFocus: boolean + className?: string + autoFocus?: boolean value?: string }): JSX.Element { const suggestions = useAutocompleteOptions() const [monaco, setMonaco] = useState() - const [height, setHeight] = useState(200) - const [manualHeight, setManualHeight] = useState() - - useEffect(() => { - const value = typeof props.value !== 'string' ? JSON.stringify(props.value, null, 2) : props.value - const lineCount = (value?.split('\n').length ?? 1) + 1 - const lineHeight = 18 - setHeight(lineHeight * lineCount) - }, [props.value]) - useEffect(() => { if (!monaco) { return @@ -138,64 +141,33 @@ function JsonConfigField(props: { }, [suggestions, monaco]) return ( -
props.onChange?.(v ?? '')} + options={{ + lineNumbers: 'off', + minimap: { + enabled: false, + }, + quickSuggestions: { + other: true, + strings: true, + }, + suggest: { + showWords: false, + showFields: false, + showKeywords: false, + }, + scrollbar: { + vertical: 'hidden', + verticalScrollbarSize: 0, + }, }} - > - - {({ height }) => ( - props.onChange?.(v ?? '')} - height={height - 2} // Account for border - options={{ - lineNumbers: 'off', - minimap: { - enabled: false, - }, - quickSuggestions: { - other: true, - strings: true, - }, - suggest: { - showWords: false, - showFields: false, - showKeywords: false, - }, - scrollbar: { - vertical: 'hidden', - verticalScrollbarSize: 0, - }, - }} - onMount={(_editor, monaco) => { - setMonaco(monaco) - }} - /> - )} - - - {/* Using a standard resize css means we need overflow-hidden which hides parts of the editor unnecessarily */} -
{ - const startY = e.clientY - const startHeight = height - const onMouseMove = (event: MouseEvent): void => { - setManualHeight(startHeight + event.clientY - startY) - } - const onMouseUp = (): void => { - window.removeEventListener('mousemove', onMouseMove) - window.removeEventListener('mouseup', onMouseUp) - } - window.addEventListener('mousemove', onMouseMove) - window.addEventListener('mouseup', onMouseUp) - }} - /> -
+ onMount={(_editor, monaco) => { + setMonaco(monaco) + }} + /> ) } @@ -259,49 +231,12 @@ function DictionaryField({ onChange, value }: { onChange?: (value: any) => void; ) } -export function HogFunctionInput({ value, onChange, schema, disabled }: HogFunctionInputProps): JSX.Element { - const [editingSecret, setEditingSecret] = useState(false) - if ( - schema.secret && - !editingSecret && - value && - (value === SECRET_FIELD_VALUE || value.name === SECRET_FIELD_VALUE) - ) { - return ( - } - onClick={() => { - onChange?.(schema.default || '') - setEditingSecret(true) - }} - disabled={disabled} - > - Reset secret variable - - ) - } - +export function HogFunctionInputRenderer({ value, onChange, schema, disabled }: HogFunctionInputProps): JSX.Element { switch (schema.type) { case 'string': - return ( - - ) + return case 'json': - return ( - - ) + return case 'choice': return ( void + onDone: () => void +} + +function HogFunctionInputSchemaControls({ value, onChange, onDone }: HogFunctionInputSchemaControlsProps): JSX.Element { + const _onChange = (data: Partial | null): void => { + onChange(data ? { ...value, ...data } : null) + } + + return ( +
+
+ ({ + label: capitalizeFirstLetter(type), + value: type, + }))} + value={value.type} + className="w-30" + onChange={(type) => _onChange({ type })} + /> + _onChange({ required })} + label="Required" + bordered + /> + _onChange({ secret })} + label="Secret" + bordered + /> +
+ } size="small" onClick={() => onChange(null)} /> + onDone()}> + Done + +
+
+ + _onChange({ label })} + placeholder="Display label" + /> + + + _onChange({ key })} + placeholder="Variable name" + /> + +
+ + + _onChange({ description })} + placeholder="Description" + /> + + {value.type === 'choice' && ( + + choice.value)} + onChange={(choices) => + _onChange({ choices: choices.map((value) => ({ label: value, value })) }) + } + placeholder="Choices" + /> + + )} + + + _onChange({ default: val })} + /> + +
+ ) +} + +export function HogFunctionInputWithSchema({ schema }: HogFunctionInputWithSchemaProps): JSX.Element { + const { showSource, configuration } = useValues(pipelineHogFunctionConfigurationLogic) + const { setConfigurationValue } = useActions(pipelineHogFunctionConfigurationLogic) + const [editing, setEditing] = useState(showSource) + + const value = configuration.inputs?.[schema.key] + + const onSchemaChange = (newSchema: HogFunctionInputSchemaType | null): void => { + let inputsSchema = configuration.inputs_schema || [] + if (!newSchema) { + inputsSchema = inputsSchema.filter((s) => s.key !== schema.key) + } else { + const modifiedSchema = { ...schema, ...newSchema } + inputsSchema = inputsSchema.map((s) => (s.key === schema.key ? modifiedSchema : s)) + } + + if (newSchema?.key) { + setConfigurationValue(`inputs.${newSchema.key}`, value) + } + + if (newSchema?.type && newSchema.type !== schema.type) { + setConfigurationValue(`inputs.${schema.key}`, null) + } + + setConfigurationValue('inputs_schema', inputsSchema) + } + + useEffect(() => { + if (!showSource) { + setEditing(false) + } + }, [showSource]) + + if (!editing) { + return ( + + {({ value, onChange }) => { + return ( + <> +
+ {schema.label || schema.key} + {showSource ? ( + } + onClick={() => setEditing(true)} + /> + ) : null} +
+ onChange({ value: val })} + /> + + ) + }} +
+ ) + } + + return ( +
+ setEditing(false)} /> +
+ ) +} diff --git a/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputsEditor.tsx b/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputsEditor.tsx deleted file mode 100644 index 59bc0fbfffaa1..0000000000000 --- a/frontend/src/scenes/pipeline/hogfunctions/HogFunctionInputsEditor.tsx +++ /dev/null @@ -1,116 +0,0 @@ -import { IconPlus, IconX } from '@posthog/icons' -import { LemonButton, LemonCheckbox, LemonInput, LemonInputSelect, LemonSelect } from '@posthog/lemon-ui' -import { capitalizeFirstLetter } from 'kea-forms' -import { useEffect, useState } from 'react' - -import { HogFunctionInputSchemaType } from '~/types' - -const typeList = ['string', 'boolean', 'dictionary', 'choice', 'json'] as const - -export type HogFunctionInputsEditorProps = { - value?: HogFunctionInputSchemaType[] - onChange?: (value: HogFunctionInputSchemaType[]) => void -} - -export function HogFunctionInputsEditor({ value, onChange }: HogFunctionInputsEditorProps): JSX.Element { - const [inputs, setInputs] = useState(value ?? []) - - useEffect(() => { - onChange?.(inputs) - }, [inputs]) - - return ( -
- {inputs.map((input, index) => { - const _onChange = (data: Partial): void => { - setInputs((inputs) => { - const newInputs = [...inputs] - newInputs[index] = { ...newInputs[index], ...data } - return newInputs - }) - } - - return ( -
-
- _onChange({ key })} - placeholder="Variable name" - /> - ({ - label: capitalizeFirstLetter(type), - value: type, - }))} - value={input.type} - className="w-30" - onChange={(type) => _onChange({ type })} - /> - - _onChange({ label })} - placeholder="Display label" - /> - _onChange({ required })} - label="Required" - bordered - /> - _onChange({ secret })} - label="Secret" - bordered - /> - {input.type === 'choice' && ( - choice.value)} - onChange={(choices) => - _onChange({ choices: choices.map((value) => ({ label: value, value })) }) - } - placeholder="Choices" - /> - )} -
- } - size="small" - onClick={() => { - const newInputs = [...inputs] - newInputs.splice(index, 1) - setInputs(newInputs) - }} - /> -
- ) - })} - -
- } - size="small" - type="secondary" - onClick={() => { - setInputs([ - ...inputs, - { type: 'string', key: `input_${inputs.length + 1}`, label: '', required: false }, - ]) - }} - > - Add input variable - -
-
- ) -} diff --git a/frontend/src/scenes/pipeline/hogfunctions/PipelineHogFunctionConfiguration.tsx b/frontend/src/scenes/pipeline/hogfunctions/PipelineHogFunctionConfiguration.tsx index ed4ee04287fff..ec2e93abc990e 100644 --- a/frontend/src/scenes/pipeline/hogfunctions/PipelineHogFunctionConfiguration.tsx +++ b/frontend/src/scenes/pipeline/hogfunctions/PipelineHogFunctionConfiguration.tsx @@ -1,32 +1,31 @@ -import { IconInfo } from '@posthog/icons' +import { IconInfo, IconPlus } from '@posthog/icons' import { LemonButton, LemonDropdown, LemonInput, + LemonLabel, LemonSwitch, LemonTextArea, Link, SpinnerOverlay, } from '@posthog/lemon-ui' -import { useActions, useValues } from 'kea' +import { BindLogic, useActions, useValues } from 'kea' import { Form } from 'kea-forms' +import { CodeEditorResizeable } from 'lib/components/CodeEditors' import { NotFound } from 'lib/components/NotFound' import { PageHeader } from 'lib/components/PageHeader' import { TaxonomicFilterGroupType } from 'lib/components/TaxonomicFilter/types' import { TestAccountFilterSwitch } from 'lib/components/TestAccountFiltersSwitch' import { useFeatureFlag } from 'lib/hooks/useFeatureFlag' import { LemonField } from 'lib/lemon-ui/LemonField' -import { HogQueryEditor } from 'scenes/debug/HogDebug' import { ActionFilter } from 'scenes/insights/filters/ActionFilter/ActionFilter' import { MathAvailability } from 'scenes/insights/filters/ActionFilter/ActionFilterRow/ActionFilterRow' import { groupsModel } from '~/models/groupsModel' -import { NodeKind } from '~/queries/schema' import { EntityTypes } from '~/types' import { HogFunctionIconEditable } from './HogFunctionIcon' -import { HogFunctionInput } from './HogFunctionInputs' -import { HogFunctionInputsEditor } from './HogFunctionInputsEditor' +import { HogFunctionInputWithSchema } from './HogFunctionInputs' import { pipelineHogFunctionConfigurationLogic } from './pipelineHogFunctionConfigurationLogic' export function PipelineHogFunctionConfiguration({ @@ -40,8 +39,15 @@ export function PipelineHogFunctionConfiguration({ const logic = pipelineHogFunctionConfigurationLogic(logicProps) const { isConfigurationSubmitting, configurationChanged, showSource, configuration, loading, loaded, hogFunction } = useValues(logic) - const { submitConfiguration, resetForm, setShowSource, duplicate, resetToTemplate, duplicateFromTemplate } = - useActions(logic) + const { + submitConfiguration, + resetForm, + setShowSource, + duplicate, + resetToTemplate, + duplicateFromTemplate, + setConfigurationValue, + } = useActions(logic) const hogFunctionsEnabled = !!useFeatureFlag('HOG_FUNCTIONS') const { groupsTaxonomicTypes } = useValues(groupsModel) @@ -100,226 +106,248 @@ export function PipelineHogFunctionConfiguration({ return (
- - {headerButtons} - {saveButtons} - - } - /> + + + {headerButtons} + {saveButtons} + + } + /> -
-
-
-
-
- - {({ value, onChange }) => ( - onChange(val)} - /> - )} - + +
+
+
+
+ + {({ value, onChange }) => ( + onChange(val)} + /> + )} + -
- {configuration.name} +
+ {configuration.name} +
+ + {({ value, onChange }) => ( + onChange(!value)} + checked={value} + disabled={loading} + bordered + /> + )} +
- - {({ value, onChange }) => ( - onChange(!value)} - checked={value} - disabled={loading} - bordered - /> - )} + + + + + -
- - - - - - - {hogFunction?.template ? ( -

- Built from template:{' '} - -

- This function was built from the template{' '} - {hogFunction.template.name}. If the template is updated, this - function is not affected unless you choose to update it. -

+ {hogFunction?.template ? ( +

+ Built from template:{' '} + +

+ This function was built from the template{' '} + {hogFunction.template.name}. If the template is updated, + this function is not affected unless you choose to update it. +

-
-
- Close -
- resetToTemplate()}> - Reset to template - +
+
+ Close +
+ resetToTemplate()}> + Reset to template + - duplicateFromTemplate()} - > - New function from template - + duplicateFromTemplate()} + > + New function from template + +
-
- } - > - - {hogFunction?.template.name} - - -

- ) : null} -
- -
- - {({ value, onChange }) => ( - <> - onChange({ ...value, filter_test_accounts: val })} - fullWidth - /> - { - onChange({ - ...payload, - filter_test_accounts: value?.filter_test_accounts, - }) - }} - typeKey="plugin-filters" - mathAvailability={MathAvailability.None} - hideRename - hideDuplicate - showNestedArrow={false} - actionsTaxonomicGroupTypes={[ - TaxonomicFilterGroupType.Events, - TaxonomicFilterGroupType.Actions, - ]} - propertiesTaxonomicGroupTypes={[ - TaxonomicFilterGroupType.EventProperties, - TaxonomicFilterGroupType.EventFeatureFlags, - TaxonomicFilterGroupType.Elements, - TaxonomicFilterGroupType.PersonProperties, - TaxonomicFilterGroupType.HogQLExpression, - ...groupsTaxonomicTypes, - ]} - propertyFiltersPopover - addFilterDefaultOptions={{ - id: '$pageview', - name: '$pageview', - type: EntityTypes.EVENTS, - }} - buttonCopy="Add event filter" - /> - - )} - - -

- This destination will be triggered if any of the above filters match. -

-
-
- -
-
-
-

Function configuration

- - setShowSource(!showSource)}> - {showSource ? 'Hide source code' : 'Show source code'} - + } + > + + {hogFunction?.template.name} + + +

+ ) : null}
- {showSource ? ( -
- - - - - - {({ value, onChange }) => ( - // TODO: Fix this so we don't have to click "update and run" - + + {({ value, onChange }) => ( + <> + onChange({ ...value, filter_test_accounts: val })} + fullWidth + /> + { + onChange({ + ...payload, + filter_test_accounts: value?.filter_test_accounts, + }) }} - setQuery={(q) => { - onChange(q.code) + typeKey="plugin-filters" + mathAvailability={MathAvailability.None} + hideRename + hideDuplicate + showNestedArrow={false} + actionsTaxonomicGroupTypes={[ + TaxonomicFilterGroupType.Events, + TaxonomicFilterGroupType.Actions, + ]} + propertiesTaxonomicGroupTypes={[ + TaxonomicFilterGroupType.EventProperties, + TaxonomicFilterGroupType.EventFeatureFlags, + TaxonomicFilterGroupType.Elements, + TaxonomicFilterGroupType.PersonProperties, + TaxonomicFilterGroupType.HogQLExpression, + ...groupsTaxonomicTypes, + ]} + propertyFiltersPopover + addFilterDefaultOptions={{ + id: '$pageview', + name: '$pageview', + type: EntityTypes.EVENTS, }} + buttonCopy="Add event filter" /> - )} - -
- ) : ( + + )} + + +

+ This destination will be triggered if any of the above filters match. +

+
+
+ +
+
{configuration?.inputs_schema?.length ? ( - configuration?.inputs_schema.map((schema) => { - return ( -
- - {({ value, onChange }) => { - return ( - onChange({ value: val })} - /> - ) - }} - -
- ) + configuration?.inputs_schema.map((schema, index) => { + return }) ) : ( This function does not require any input variables. )} + + {showSource ? ( + <> + } + size="small" + type="secondary" + className="my-4" + onClick={() => { + setConfigurationValue('inputs_schema', [ + ...(configuration.inputs_schema ?? []), + { + type: 'string', + key: `input_${ + (configuration.inputs_schema?.length ?? 0) + 1 + }`, + label: '', + required: false, + }, + ]) + }} + > + Add input variable + + + {({ value, onChange }) => ( + <> +
+ Function source code + setShowSource(false)} + > + Hide source code + +
+ onChange(v ?? '')} + options={{ + minimap: { + enabled: false, + }, + wordWrap: 'on', + scrollBeyondLastLine: false, + automaticLayout: true, + fixedOverflowWidgets: true, + suggest: { + showInlineDetails: true, + }, + quickSuggestionsDelay: 300, + }} + /> + + )} +
+ + ) : ( +
+ setShowSource(true)} + > + Show function source code + +
+ )}
- )} +
+
{saveButtons}
-
{saveButtons}
-
- + +
) } diff --git a/plugin-server/package.json b/plugin-server/package.json index 3344291ce0d1d..611ebe0c5be78 100644 --- a/plugin-server/package.json +++ b/plugin-server/package.json @@ -50,7 +50,7 @@ "@google-cloud/storage": "^5.8.5", "@maxmind/geoip2-node": "^3.4.0", "@posthog/clickhouse": "^1.7.0", - "@posthog/hogvm": "^1.0.11", + "@posthog/hogvm": "^1.0.12", "@posthog/plugin-scaffold": "1.4.4", "@sentry/node": "^7.49.0", "@sentry/profiling-node": "^0.3.0", diff --git a/plugin-server/pnpm-lock.yaml b/plugin-server/pnpm-lock.yaml index af85a11df6436..9a7d7d36ee6a8 100644 --- a/plugin-server/pnpm-lock.yaml +++ b/plugin-server/pnpm-lock.yaml @@ -44,8 +44,8 @@ dependencies: specifier: ^1.7.0 version: 1.7.0 '@posthog/hogvm': - specifier: ^1.0.11 - version: 1.0.11 + specifier: ^1.0.12 + version: 1.0.12 '@posthog/plugin-scaffold': specifier: 1.4.4 version: 1.4.4 @@ -3107,8 +3107,8 @@ packages: engines: {node: '>=12'} dev: false - /@posthog/hogvm@1.0.11: - resolution: {integrity: sha512-W1m4UPmpaNwm9+Rwpb3rjuZd3z+/gO9MsxibCnxdTndrFgIrNjGOas2ZEpZqJblV3sgubFbGq6IXdORbM+nv5w==} + /@posthog/hogvm@1.0.12: + resolution: {integrity: sha512-S8kO3X3BAfLp3SzluRmmST6aII+G2kYjGXC7373XPHIghGpFNlNq1gpllYvDjjGM2yVQbOBLzi5UvlzK0nG6rw==} dev: false /@posthog/plugin-scaffold@1.4.4: diff --git a/posthog/cdp/templates/__init__.py b/posthog/cdp/templates/__init__.py index 3e29e2a21d68f..3961f62a97f57 100644 --- a/posthog/cdp/templates/__init__.py +++ b/posthog/cdp/templates/__init__.py @@ -1,9 +1,11 @@ from .webhook.template_webhook import template as webhook from .helloworld.template_helloworld import template as hello_world from .slack.template_slack import template as slack +from .hubspot.template_hubspot import template as hubspot +from .customerio.template_customerio import template as customerio -HOG_FUNCTION_TEMPLATES = [webhook, hello_world, slack] +HOG_FUNCTION_TEMPLATES = [webhook, hello_world, slack, hubspot, customerio] HOG_FUNCTION_TEMPLATES_BY_ID = {template.id: template for template in HOG_FUNCTION_TEMPLATES} __all__ = ["HOG_FUNCTION_TEMPLATES", "HOG_FUNCTION_TEMPLATES_BY_ID"] diff --git a/posthog/cdp/templates/customerio/template_customerio.py b/posthog/cdp/templates/customerio/template_customerio.py new file mode 100644 index 0000000000000..1ec67972bc157 --- /dev/null +++ b/posthog/cdp/templates/customerio/template_customerio.py @@ -0,0 +1,106 @@ +from posthog.cdp.templates.hog_function_template import HogFunctionTemplate + +# Based off of https://customer.io/docs/api/track/#operation/entity + +template: HogFunctionTemplate = HogFunctionTemplate( + status="alpha", + id="template-customerio", + name="Update persons in Customer.io", + description="Updates persons in Customer.io", + icon_url="/api/projects/@current/hog_functions/icon/?id=customer.io", + hog=""" +fn callCustomerIoApi(method, path, body) { + // TODO: Base64 encode the site_id and token + fetch(f'https://{inputs.host}{path}', { + 'method': 'POST', + 'headers': { + 'User-Agent': 'PostHog Customer.io App', + 'Authorization': f'Basic {base64Encode(f'{inputs.site_id}:{inputs.token}')}', + 'Content-Type': 'application/json' + }, + 'body': body + }) +} + +fn trackIdentify() { + // Upsert the customer + let payload := { + 'type': 'person', + 'identifiers': { + // TODO: Make the id input configurable + 'id': inputs.identifier + }, + 'action': 'identify', + 'attributes': inputs.properties + } + + await callCustomerIoApi('POST', f'/api/v2/entity', payload) +} + +trackIdentify() + +""".strip(), + inputs_schema=[ + { + "key": "site_id", + "type": "string", + "label": "Customer.io site ID", + "secret": False, + "required": True, + }, + { + "key": "token", + "type": "string", + "label": "Customer.io API Key", + "description": "You can find your API key in your Customer.io account settings (https://fly.customer.io/settings/api_credentials)", + "secret": True, + "required": True, + }, + { + "key": "identifier", + "type": "string", + "label": "The ID that should be used for the user", + "description": "You can choose to fill this from an email property or an ID property. If the value is empty nothing will be sent.", + "default": "{person.properties.email}", + "secret": False, + "required": True, + }, + { + "key": "host", + "type": "choice", + "choices": [ + { + "label": "US (track.customer.io)", + "value": "track.customer.io", + }, + { + "label": "EU (track-eu.customer.io)", + "value": "track-eu.customer.io", + }, + ], + "label": "Customer.io region", + "description": "Use the EU variant if your Customer.io account is based in the EU region", + "default": "track.customer.io", + "secret": False, + "required": True, + }, + { + "key": "properties", + "type": "dictionary", + "label": "Property mapping", + "description": "Map of Customer.io person properties and their values. You can use the filters section to filter out unwanted events.", + "default": { + "email": "{person.properties.email}", + "lastname": "{person.properties.lastname}", + "firstname": "{person.properties.firstname}", + }, + "secret": False, + "required": True, + }, + ], + filters={ + "events": [{"id": "$identify", "name": "$identify", "type": "events", "order": 0}], + "actions": [], + "filter_test_accounts": True, + }, +) diff --git a/posthog/cdp/templates/customerio/test_template_customerio.py b/posthog/cdp/templates/customerio/test_template_customerio.py new file mode 100644 index 0000000000000..71610ae6615c6 --- /dev/null +++ b/posthog/cdp/templates/customerio/test_template_customerio.py @@ -0,0 +1,42 @@ +from posthog.cdp.templates.helpers import BaseHogFunctionTemplateTest +from posthog.cdp.templates.customerio.template_customerio import template as template_customerio + + +class TestTemplateCustomerio(BaseHogFunctionTemplateTest): + template = template_customerio + + def _inputs(self, **kwargs): + inputs = { + "site_id": "SITE_ID", + "token": "TOKEN", + "identifier": "example@posthog.com", + "host": "track.customer.io", + "properties": {"name": "example"}, + } + inputs.update(kwargs) + return inputs + + def test_function_works(self): + res = self.run_function(inputs=self._inputs()) + + assert res.result is None + + assert self.get_mock_fetch_calls()[0] == ( + "https://track.customer.io/api/v2/entity", + { + "method": "POST", + "headers": { + "User-Agent": "PostHog Customer.io App", + "Authorization": "Basic U0lURV9JRDpUT0tFTg==", + "Content-Type": "application/json", + }, + "body": { + "type": "person", + "identifiers": {"id": "example@posthog.com"}, + "action": "identify", + "attributes": { + "name": "example", + }, + }, + }, + ) diff --git a/posthog/cdp/templates/helpers.py b/posthog/cdp/templates/helpers.py index b5b3c2081decd..3394e711aab44 100644 --- a/posthog/cdp/templates/helpers.py +++ b/posthog/cdp/templates/helpers.py @@ -9,12 +9,28 @@ class BaseHogFunctionTemplateTest(BaseTest): template: HogFunctionTemplate compiled_hog: Any - mock_fetch = MagicMock() + mock_print = MagicMock() def setUp(self): super().setUp() - self.compiled_hog = compile_hog(self.template.hog) + self.compiled_hog = compile_hog(self.template.hog, supported_functions={"fetch", "print"}) + + self.mock_print = MagicMock(side_effect=lambda *args: print("[DEBUG HogFunctionPrint]", *args)) # noqa: T201 + # Side effect - log the fetch call and return with sensible output + self.mock_fetch = MagicMock( + side_effect=lambda *args: print("[DEBUG HogFunctionFetch]", *args) or self.mock_fetch_response(*args) # noqa: T201 + ) + + mock_fetch_response = lambda *args: {"status": 200, "body": {}} + + def get_mock_fetch_calls(self): + # Return a simple array which is easier to debug + return [call.args for call in self.mock_fetch.mock_calls] + + def get_mock_print_calls(self): + # Return a simple array which is easier to debug + return [call.args for call in self.mock_print.mock_calls] def createHogGlobals(self, globals=None) -> dict: # Return an object simulating the @@ -30,7 +46,5 @@ def run_function(self, inputs: dict, globals=None): return execute_bytecode( self.compiled_hog, globals, - functions={ - "fetch": self.mock_fetch, - }, + functions={"fetch": self.mock_fetch, "print": self.mock_print}, ) diff --git a/posthog/cdp/templates/hubspot/template_hubspot.py b/posthog/cdp/templates/hubspot/template_hubspot.py new file mode 100644 index 0000000000000..534a487bd000a --- /dev/null +++ b/posthog/cdp/templates/hubspot/template_hubspot.py @@ -0,0 +1,97 @@ +from posthog.cdp.templates.hog_function_template import HogFunctionTemplate + + +template: HogFunctionTemplate = HogFunctionTemplate( + status="alpha", + id="template-hubspot", + name="Create Hubspot contact", + description="Creates a new contact in Hubspot whenever an event is triggered.", + icon_url="/api/projects/@current/hog_functions/icon/?id=hubspot.com", + hog=""" +let properties := inputs.properties +properties.email := inputs.email + +if (empty(properties.email)) { + print('`email` input is empty. Not creating a contact.') + return +} + +let body := { + 'properties': properties +} + +let headers := { + 'Authorization': f'Bearer {inputs.access_token}', + 'Content-Type': 'application/json' +} + +let res := fetch('https://api.hubapi.com/crm/v3/objects/contacts', { + 'method': 'POST', + 'headers': headers, + 'body': body +}) + +if (res.status == 409) { + let existingId := replaceOne(res.body.message, 'Contact already exists. Existing ID: ', '') + let updateRes := fetch(f'https://api.hubapi.com/crm/v3/objects/contacts/{existingId}', { + 'method': 'PATCH', + 'headers': headers, + 'body': body + }) + + if (updateRes.status != 200 or updateRes.body.status == 'error') { + print('Error updating contact:', updateRes.body) + return + } + print('Contact updated successfully!') + return +} else if (res.status != 200 or res.body.status == 'error') { + print('Error creating contact:', res.body) + return +} else { + print('Contact created successfully!') +} + + +""".strip(), + inputs_schema=[ + { + "key": "access_token", + "type": "string", + "label": "Access token", + "description": "Can be acquired under Profile Preferences -> Integrations -> Private Apps", + "secret": True, + "required": True, + }, + { + "key": "email", + "type": "string", + "label": "Email of the user", + "description": "Where to find the email for the contact to be created. You can use the filters section to filter out unwanted emails or internal users.", + "default": "{person.properties.email}", + "secret": False, + "required": True, + }, + { + "key": "properties", + "type": "dictionary", + "label": "Property mapping", + "description": "Map any event properties to Hubspot properties.", + "default": { + "name": "{person.properties.name}", + "company": "{person.properties.company}", + "phone": "{person.properties.phone}", + "website": "{person.properties.website}", + "domain": "{person.properties.website}", + "company_website": "{person.properties.website}", + }, + "secret": False, + "required": True, + }, + ], + filters={ + "events": [{"id": "$identify", "name": "$identify", "type": "events", "order": 0}], + "actions": [], + "filter_test_accounts": True, + }, +) diff --git a/posthog/cdp/templates/hubspot/test_template_hubspot.py b/posthog/cdp/templates/hubspot/test_template_hubspot.py new file mode 100644 index 0000000000000..d9c2133a2e186 --- /dev/null +++ b/posthog/cdp/templates/hubspot/test_template_hubspot.py @@ -0,0 +1,84 @@ +from posthog.cdp.templates.helpers import BaseHogFunctionTemplateTest +from posthog.cdp.templates.hubspot.template_hubspot import template as template_hubspot + + +class TestTemplateHubspot(BaseHogFunctionTemplateTest): + template = template_hubspot + + def _inputs(self, **kwargs): + inputs = { + "access_token": "TOKEN", + "email": "example@posthog.com", + "properties": { + "company": "PostHog", + }, + } + inputs.update(kwargs) + return inputs + + def test_function_works(self): + self.mock_fetch_response = lambda *args: {"status": 200, "body": {"status": "success"}} # type: ignore + + res = self.run_function(inputs=self._inputs()) + + assert res.result is None + + assert self.get_mock_fetch_calls() == [ + ( + "https://api.hubapi.com/crm/v3/objects/contacts", + { + "method": "POST", + "headers": {"Authorization": "Bearer TOKEN", "Content-Type": "application/json"}, + "body": {"properties": {"company": "PostHog", "email": "example@posthog.com"}}, + }, + ) + ] + assert self.get_mock_print_calls() == [("Contact created successfully!",)] + + def test_exits_if_no_email(self): + for email in [None, ""]: + self.mock_print.reset_mock() + res = self.run_function(inputs=self._inputs(email=email)) + + assert res.result is None + assert self.get_mock_fetch_calls() == [] + assert self.get_mock_print_calls() == [("`email` input is empty. Not creating a contact.",)] + + def test_handles_updates(self): + call_count = 0 + + # First call respond with 409, second one 200 and increment call_count + def mock_fetch(*args): + nonlocal call_count + call_count += 1 + return ( + {"status": 409, "body": {"message": "Contact already exists. Existing ID: 12345"}} + if call_count == 1 + else {"status": 200, "body": {"status": "success"}} + ) + + self.mock_fetch_response = mock_fetch # type: ignore + + res = self.run_function(inputs=self._inputs()) + + assert res.result is None + + assert len(self.get_mock_fetch_calls()) == 2 + + assert self.get_mock_fetch_calls()[0] == ( + "https://api.hubapi.com/crm/v3/objects/contacts", + { + "method": "POST", + "headers": {"Authorization": "Bearer TOKEN", "Content-Type": "application/json"}, + "body": {"properties": {"company": "PostHog", "email": "example@posthog.com"}}, + }, + ) + + assert self.get_mock_fetch_calls()[1] == ( + "https://api.hubapi.com/crm/v3/objects/contacts/12345", + { + "method": "PATCH", + "headers": {"Authorization": "Bearer TOKEN", "Content-Type": "application/json"}, + "body": {"properties": {"company": "PostHog", "email": "example@posthog.com"}}, + }, + ) diff --git a/posthog/cdp/templates/slack/template_slack.py b/posthog/cdp/templates/slack/template_slack.py index 0d8c9b100951a..69851527577ff 100644 --- a/posthog/cdp/templates/slack/template_slack.py +++ b/posthog/cdp/templates/slack/template_slack.py @@ -1,17 +1,20 @@ from posthog.cdp.templates.hog_function_template import HogFunctionTemplate +# NOTE: Slack template is essentially just a webhook template with limited options template: HogFunctionTemplate = HogFunctionTemplate( - status="alpha", + status="beta", id="template-slack", name="Slack webhook", description="Sends a webhook templated by the incoming event data", icon_url="/api/projects/@current/hog_functions/icon/?id=slack.com", hog=""" fetch(inputs.url, { - 'headers': inputs.headers, 'body': inputs.body, - 'method': inputs.method + 'method': 'POST', + 'headers': { + 'Content-Type': 'application/json' + } }); """.strip(), inputs_schema=[ diff --git a/posthog/cdp/templates/slack/test_template_slack.py b/posthog/cdp/templates/slack/test_template_slack.py index 50144106615ed..15d3f17804b18 100644 --- a/posthog/cdp/templates/slack/test_template_slack.py +++ b/posthog/cdp/templates/slack/test_template_slack.py @@ -1,5 +1,3 @@ -import json -from unittest.mock import call from posthog.cdp.templates.helpers import BaseHogFunctionTemplateTest from posthog.cdp.templates.slack.template_slack import template as template_slack @@ -10,20 +8,22 @@ class TestTemplateSlack(BaseHogFunctionTemplateTest): def test_function_works(self): res = self.run_function( inputs={ - "url": "https://posthog.com", - "method": "GET", - "headers": {}, - "body": json.dumps({"hello": "world"}), + "url": "https://webhooks.slack.com/1234", + "body": { + "blocks": [], + }, } ) assert res.result is None - assert self.mock_fetch.mock_calls[0] == call( - "https://posthog.com", + assert self.get_mock_fetch_calls()[0] == ( + "https://webhooks.slack.com/1234", { - "headers": {}, - "body": '{"hello": "world"}', - "method": "GET", + "headers": { + "Content-Type": "application/json", + }, + "body": {"blocks": []}, + "method": "POST", }, ) diff --git a/posthog/cdp/templates/webhook/template_webhook.py b/posthog/cdp/templates/webhook/template_webhook.py index 68c84fbcc7807..40bfe0770986d 100644 --- a/posthog/cdp/templates/webhook/template_webhook.py +++ b/posthog/cdp/templates/webhook/template_webhook.py @@ -2,7 +2,7 @@ template: HogFunctionTemplate = HogFunctionTemplate( - status="alpha", + status="beta", id="template-webhook", name="HTTP Webhook", description="Sends a webhook templated by the incoming event data", diff --git a/posthog/cdp/templates/webhook/test_template_webhook.py b/posthog/cdp/templates/webhook/test_template_webhook.py index 0e29f66632210..434efef9954c2 100644 --- a/posthog/cdp/templates/webhook/test_template_webhook.py +++ b/posthog/cdp/templates/webhook/test_template_webhook.py @@ -1,5 +1,3 @@ -import json -from unittest.mock import call from posthog.cdp.templates.helpers import BaseHogFunctionTemplateTest from posthog.cdp.templates.webhook.template_webhook import template as template_webhook @@ -13,17 +11,17 @@ def test_function_works(self): "url": "https://posthog.com", "method": "GET", "headers": {}, - "body": json.dumps({"hello": "world"}), + "body": {"hello": "world"}, } ) assert res.result is None - assert self.mock_fetch.mock_calls[0] == call( + assert self.get_mock_fetch_calls()[0] == ( "https://posthog.com", { "headers": {}, - "body": '{"hello": "world"}', + "body": {"hello": "world"}, "method": "GET", }, ) diff --git a/posthog/cdp/validation.py b/posthog/cdp/validation.py index ea467ef54ac47..93dad3f8e6501 100644 --- a/posthog/cdp/validation.py +++ b/posthog/cdp/validation.py @@ -1,10 +1,13 @@ -from typing import Any +import logging +from typing import Any, Optional from rest_framework import serializers from posthog.hogql.bytecode import create_bytecode from posthog.hogql.parser import parse_program from posthog.models.hog_functions.utils import generate_template_bytecode +logger = logging.getLogger(__name__) + class InputsSchemaItemSerializer(serializers.Serializer): type = serializers.ChoiceField(choices=["string", "boolean", "dictionary", "choice", "json"]) @@ -94,10 +97,10 @@ def validate_inputs(inputs_schema: list, inputs: dict) -> dict: return validated_inputs -def compile_hog(hog: str) -> list[Any]: +def compile_hog(hog: str, supported_functions: Optional[set[str]] = None) -> list[Any]: # Attempt to compile the hog try: program = parse_program(hog) - return create_bytecode(program, supported_functions={"fetch"}) + return create_bytecode(program, supported_functions=supported_functions or {"fetch"}) except Exception: raise serializers.ValidationError({"hog": "Hog code has errors."})