twenty-sdk 2.21.0 → 2.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9392,7 +9392,7 @@ function Wp(e) {
9392
9392
  return e != null;
9393
9393
  }
9394
9394
  //#endregion
9395
- //#region ../twenty-shared/dist/types-qzUQuYDF.mjs
9395
+ //#region ../twenty-shared/dist/types-CRtXH-ol.mjs
9396
9396
  var Gp = /* @__PURE__ */ function(e) {
9397
9397
  return e.MIN = "MIN", e.MAX = "MAX", e.AVG = "AVG", e.SUM = "SUM", e.COUNT = "COUNT", e.COUNT_UNIQUE_VALUES = "COUNT_UNIQUE_VALUES", e.COUNT_EMPTY = "COUNT_EMPTY", e.COUNT_NOT_EMPTY = "COUNT_NOT_EMPTY", e.COUNT_TRUE = "COUNT_TRUE", e.COUNT_FALSE = "COUNT_FALSE", e.PERCENTAGE_EMPTY = "PERCENTAGE_EMPTY", e.PERCENTAGE_NOT_EMPTY = "PERCENTAGE_NOT_EMPTY", e;
9398
9398
  }({}), Kp = /* @__PURE__ */ function(e) {
@@ -10041,9 +10041,9 @@ var nm = /* @__PURE__ */ function(e) {
10041
10041
  P.ARRAY,
10042
10042
  P.MULTI_SELECT,
10043
10043
  P.RAW_JSON
10044
- ]), lm.DAY, lm.WEEK, lm.MONTH, lm.QUARTER, lm.YEAR, P.TEXT, P.FULL_NAME, P.UUID;
10044
+ ]), lm.DAY, lm.WEEK, lm.MONTH, lm.QUARTER, lm.YEAR, P.FILES, P.LINKS, P.TEXT, P.FULL_NAME, P.UUID;
10045
10045
  //#endregion
10046
- //#region ../twenty-shared/dist/constants-1-j2XgX3.mjs
10046
+ //#region ../twenty-shared/dist/constants-CNraXaGx.mjs
10047
10047
  var Dm = [
10048
10048
  "RATING_1",
10049
10049
  "RATING_2",
@@ -57594,7 +57594,7 @@ function jA() {
57594
57594
  return sA(DA, arguments);
57595
57595
  }
57596
57596
  //#endregion
57597
- //#region ../twenty-shared/dist/utils-B4kn7oaR.mjs
57597
+ //#region ../twenty-shared/dist/utils-yd_FN6Qr.mjs
57598
57598
  var MA = /* @__PURE__ */ We(ok(), 1), NA = /* @__PURE__ */ We(sk(), 1);
57599
57599
  ck(), eA(), aA(), P.TEXT, P.FULL_NAME, P.EMAILS, P.ADDRESS, P.LINKS, P.PHONES, P.RICH_TEXT, P.UUID;
57600
57600
  var PA = (e) => /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e);
@@ -59335,10 +59335,10 @@ var TM = (e) => Dm.filter((t) => +t.split("_")[1] >= e), EM = (e) => Dm.filter((
59335
59335
  U.IS_NOT,
59336
59336
  U.IS_EMPTY,
59337
59337
  U.IS_NOT_EMPTY
59338
- ], IM = ({ filterType: e, subFieldName: t }) => e === "CURRENCY" ? t === "currencyCode" ? jM.CURRENCY.currencyCode : jM.CURRENCY.amountMicros : e === "ACTOR" && (t === "source" || t === "workspaceMemberId") ? FM : PM[e], LM = (e, t, n) => Object.values(Tm[e]).includes(t) && t === n, RM = Mu().transform((e) => e === "" ? [] : vN(e) ? [e] : JSON.parse(e)).refine((e) => Array.isArray(e) && e.every((e) => typeof e == "string"), { error: "Expected an array of strings" }), zM = xp((e) => {
59338
+ ], IM = ({ filterType: e, subFieldName: t }) => e === "CURRENCY" ? t === "currencyCode" ? jM.CURRENCY.currencyCode : jM.CURRENCY.amountMicros : e === "ACTOR" && (t === "source" || t === "workspaceMemberId") ? FM : PM[e], LM = (e, t, n) => Object.values(Tm[e]).includes(t) && t === n, RM = Mu().transform((e) => e === "" ? [] : yN(e) ? [e] : JSON.parse(e)).refine((e) => Array.isArray(e) && e.every((e) => typeof e == "string"), { error: "Expected an array of strings" }), zM = xp((e) => {
59339
59339
  try {
59340
59340
  if (typeof e == "string") {
59341
- if (vN(e)) return [e];
59341
+ if (yN(e)) return [e];
59342
59342
  try {
59343
59343
  let t = JSON.parse(e);
59344
59344
  return Array.isArray(t) ? t : [t];
@@ -59350,7 +59350,7 @@ var TM = (e) => Dm.filter((t) => +t.split("_")[1] >= e), EM = (e) => Dm.filter((
59350
59350
  } catch {
59351
59351
  return [];
59352
59352
  }
59353
- }, of(Mu().refine((e) => PA(e) || vN(e), "Must be a valid UUID or a variable with {{ }} syntax"))).catch([]), BM = lf({
59353
+ }, of(Mu().refine((e) => PA(e) || yN(e), "Must be a valid UUID or a variable with {{ }} syntax"))).catch([]), BM = lf({
59354
59354
  isCurrentWorkspaceMemberSelected: Id().optional(),
59355
59355
  isCurrentRecordSelected: Id().optional(),
59356
59356
  selectedRecordIds: of(Mu())
@@ -59972,63 +59972,63 @@ Mu().transform((e, t) => {
59972
59972
  }), Je;
59973
59973
  }
59974
59974
  });
59975
- var gN = (e) => {
59975
+ var gN = (e) => /^https?:\/\//i.test(e), _N = (e) => {
59976
59976
  let t = uN(e);
59977
59977
  return N(t) ? (t.origin + t.pathname + t.search + t.hash).replace(/\/$/, "") : e;
59978
- }, _N = (e) => {
59978
+ }, vN = (e) => {
59979
59979
  let t = e.trim();
59980
- return t === "" ? t : gN(mN(t));
59980
+ return t === "" ? t : _N(mN(t));
59981
59981
  };
59982
59982
  Fu({ pattern: er }).max(255);
59983
- var vN = (e) => /^{{[^{}]+}}$/.test(e), yN = /* @__PURE__ */ new Map();
59983
+ var yN = (e) => /^{{[^{}]+}}$/.test(e), bN = /* @__PURE__ */ new Map();
59984
59984
  for (let e of AA()) {
59985
- let t = jA(e), n = yN.get(t);
59986
- n ? n.push(e) : yN.set(t, [e]);
59985
+ let t = jA(e), n = bN.get(t);
59986
+ n ? n.push(e) : bN.set(t, [e]);
59987
59987
  }
59988
59988
  new Set(AA());
59989
- var bN = (e) => typeof e == "string", xN = RegExp("\\{\\{([^{}]+)\\}\\}", "g"), SN = (e, t) => N(e) ? bN(e) ? TN(e, t) : Array.isArray(e) ? CN(e, t) : typeof e == "object" && e ? wN(e, t) : e : e, CN = (e, t) => {
59989
+ var xN = (e) => typeof e == "string", SN = RegExp("\\{\\{([^{}]+)\\}\\}", "g"), CN = (e, t) => N(e) ? xN(e) ? EN(e, t) : Array.isArray(e) ? wN(e, t) : typeof e == "object" && e ? TN(e, t) : e : e, wN = (e, t) => {
59990
59990
  let n = e;
59991
- for (let r = 0; r < e.length; ++r) n[r] = SN(e[r], t);
59991
+ for (let r = 0; r < e.length; ++r) n[r] = CN(e[r], t);
59992
59992
  return n;
59993
- }, wN = (e, t) => Object.entries(e).reduce((e, [n, r]) => {
59994
- let i = SN(n, t);
59995
- return e[typeof i == "string" ? i : String(i)] = SN(r, t), e;
59996
- }, {}), TN = (e, t) => {
59997
- let n = e.match(xN);
59998
- return !n || n.length === 0 ? e : n.length === 1 && n[0] === e ? dM(e, t) : e.replace(xN, (e, n) => {
59993
+ }, TN = (e, t) => Object.entries(e).reduce((e, [n, r]) => {
59994
+ let i = CN(n, t);
59995
+ return e[typeof i == "string" ? i : String(i)] = CN(r, t), e;
59996
+ }, {}), EN = (e, t) => {
59997
+ let n = e.match(SN);
59998
+ return !n || n.length === 0 ? e : n.length === 1 && n[0] === e ? dM(e, t) : e.replace(SN, (e, n) => {
59999
59999
  let r = dM(e, t);
60000
60000
  return typeof r == "object" && r ? JSON.stringify(r) : r;
60001
60001
  });
60002
- }, EN = "M6.822 14.174c0-2.435 1.996-4.411 4.456-4.411h8.574c.125 0 .241.075.293.19a.31.31 0 0 1-.056.344l-1.88 2.023c-.326.35-.787.552-1.27.552H11.3c-.738 0-1.338.594-1.338 1.325v3.336a.78.78 0 0 1-.783.777H7.61a.78.78 0 0 1-.783-.777v-3.36zM33.5 25.553c0 2.434-1.996 4.411-4.456 4.411h-3.642c-2.46 0-4.454-1.977-4.454-4.411v-6.315c0-.43.16-.842.456-1.16l2.124-2.285a.33.33 0 0 1 .355-.081.32.32 0 0 1 .205.295v9.527c0 .73.598 1.322 1.337 1.322h3.6a1.33 1.33 0 0 0 1.337-1.322V14.197c0-.73-.599-1.325-1.337-1.325H24.84c-.481 0-.938.201-1.265.547L11.088 26.856h7.503a.78.78 0 0 1 .784.778v1.552a.78.78 0 0 1-.784.778H8.481a1.655 1.655 0 0 1-1.662-1.644v-.824c0-.412.156-.809.44-1.114l13.999-15.06a4.9 4.9 0 0 1 3.594-1.56h4.189c2.46 0 4.454 1.977 4.454 4.412v11.379z", DN = async () => `data:image/png;base64,${(await v(k(i, "assets", "halftone-backdrop.png"))).toString("base64")}`, ON = 1388, kN = 858, AN = 156, jN = 16, MN = 351, NN = 434, PN = 798, FN = ON / 2, IN = kN / 2, LN = 19, RN = 8, zN = "#b3b3b3", BN = AN / 40, VN = async ({ logoBuffer: e }) => {
60003
- let t = `data:image/png;base64,${(await oe(e).resize(AN, AN, {
60002
+ }, DN = "M6.822 14.174c0-2.435 1.996-4.411 4.456-4.411h8.574c.125 0 .241.075.293.19a.31.31 0 0 1-.056.344l-1.88 2.023c-.326.35-.787.552-1.27.552H11.3c-.738 0-1.338.594-1.338 1.325v3.336a.78.78 0 0 1-.783.777H7.61a.78.78 0 0 1-.783-.777v-3.36zM33.5 25.553c0 2.434-1.996 4.411-4.456 4.411h-3.642c-2.46 0-4.454-1.977-4.454-4.411v-6.315c0-.43.16-.842.456-1.16l2.124-2.285a.33.33 0 0 1 .355-.081.32.32 0 0 1 .205.295v9.527c0 .73.598 1.322 1.337 1.322h3.6a1.33 1.33 0 0 0 1.337-1.322V14.197c0-.73-.599-1.325-1.337-1.325H24.84c-.481 0-.938.201-1.265.547L11.088 26.856h7.503a.78.78 0 0 1 .784.778v1.552a.78.78 0 0 1-.784.778H8.481a1.655 1.655 0 0 1-1.662-1.644v-.824c0-.412.156-.809.44-1.114l13.999-15.06a4.9 4.9 0 0 1 3.594-1.56h4.189c2.46 0 4.454 1.977 4.454 4.412v11.379z", ON = async () => `data:image/png;base64,${(await v(k(i, "assets", "halftone-backdrop.png"))).toString("base64")}`, kN = 1388, AN = 858, jN = 156, MN = 16, NN = 351, PN = 434, FN = 798, IN = kN / 2, LN = AN / 2, RN = 19, zN = 8, BN = "#b3b3b3", VN = jN / 40, HN = async ({ logoBuffer: e }) => {
60003
+ let t = `data:image/png;base64,${(await oe(e).resize(jN, jN, {
60004
60004
  fit: "cover",
60005
60005
  position: "centre"
60006
- }).png().toBuffer()).toString("base64")}`, n = await DN(), r = [
60007
- `<svg xmlns="http://www.w3.org/2000/svg" width="${ON}" height="${kN}" viewBox="0 0 ${ON} ${kN}">`,
60008
- `<image href="${n}" x="0" y="0" width="${ON}" height="${kN}" preserveAspectRatio="none" />`,
60006
+ }).png().toBuffer()).toString("base64")}`, n = await ON(), r = [
60007
+ `<svg xmlns="http://www.w3.org/2000/svg" width="${kN}" height="${AN}" viewBox="0 0 ${kN} ${AN}">`,
60008
+ `<image href="${n}" x="0" y="0" width="${kN}" height="${AN}" preserveAspectRatio="none" />`,
60009
60009
  "<defs>",
60010
60010
  "<filter id=\"tileShadow\" x=\"-40%\" y=\"-40%\" width=\"180%\" height=\"180%\">",
60011
60011
  "<feDropShadow dx=\"0\" dy=\"6\" stdDeviation=\"10\" flood-color=\"#0b0b0f\" flood-opacity=\"0.14\" />",
60012
60012
  "</filter>",
60013
- `<clipPath id="leftLogoClip"><rect x="${NN}" y="${MN}" width="${AN}" height="${AN}" rx="${jN}" /></clipPath>`,
60013
+ `<clipPath id="leftLogoClip"><rect x="${PN}" y="${NN}" width="${jN}" height="${jN}" rx="${MN}" /></clipPath>`,
60014
60014
  "</defs>",
60015
60015
  "<g filter=\"url(#tileShadow)\">",
60016
- `<rect x="${NN}" y="${MN}" width="${AN}" height="${AN}" rx="${jN}" fill="#ffffff" />`,
60017
- `<rect x="${PN}" y="${MN}" width="${AN}" height="${AN}" rx="${jN}" fill="#000000" />`,
60016
+ `<rect x="${PN}" y="${NN}" width="${jN}" height="${jN}" rx="${MN}" fill="#ffffff" />`,
60017
+ `<rect x="${FN}" y="${NN}" width="${jN}" height="${jN}" rx="${MN}" fill="#000000" />`,
60018
60018
  "</g>",
60019
- `<image href="${t}" x="${NN}" y="${MN}" width="${AN}" height="${AN}" preserveAspectRatio="xMidYMid slice" clip-path="url(#leftLogoClip)" />`,
60020
- `<rect x="${NN}" y="${MN}" width="${AN}" height="${AN}" rx="${jN}" fill="none" stroke="#000000" stroke-opacity="0.08" stroke-width="1" />`,
60021
- `<g transform="translate(${PN} ${MN}) scale(${BN})"><path d="${EN}" fill="#ffffff" /></g>`,
60022
- `<line x1="${FN - LN}" y1="${IN - LN}" x2="713" y2="448" stroke="${zN}" stroke-width="${RN}" stroke-linecap="round" />`,
60023
- `<line x1="${FN - LN}" y1="448" x2="713" y2="${IN - LN}" stroke="${zN}" stroke-width="${RN}" stroke-linecap="round" />`,
60019
+ `<image href="${t}" x="${PN}" y="${NN}" width="${jN}" height="${jN}" preserveAspectRatio="xMidYMid slice" clip-path="url(#leftLogoClip)" />`,
60020
+ `<rect x="${PN}" y="${NN}" width="${jN}" height="${jN}" rx="${MN}" fill="none" stroke="#000000" stroke-opacity="0.08" stroke-width="1" />`,
60021
+ `<g transform="translate(${FN} ${NN}) scale(${VN})"><path d="${DN}" fill="#ffffff" /></g>`,
60022
+ `<line x1="${IN - RN}" y1="${LN - RN}" x2="713" y2="448" stroke="${BN}" stroke-width="${zN}" stroke-linecap="round" />`,
60023
+ `<line x1="${IN - RN}" y1="448" x2="713" y2="${LN - RN}" stroke="${BN}" stroke-width="${zN}" stroke-linecap="round" />`,
60024
60024
  "</svg>"
60025
60025
  ].join("");
60026
60026
  return oe(Buffer.from(r)).png().toBuffer();
60027
- }, HN = "20202020-64aa-4b6f-b003-9c74b97cee20", UN = ({ entityNamespace: e, value: t, applicationUniversalIdentifier: n }) => D(`${e}:${t}`, n), WN = ({ applicationUniversalIdentifier: e, objectUniversalIdentifier: t, name: n }) => UN({
60027
+ }, UN = "20202020-64aa-4b6f-b003-9c74b97cee20", WN = ({ entityNamespace: e, value: t, applicationUniversalIdentifier: n }) => D(`${e}:${t}`, n), GN = ({ applicationUniversalIdentifier: e, objectUniversalIdentifier: t, name: n }) => WN({
60028
60028
  entityNamespace: "fieldMetadata",
60029
60029
  value: `${t}:${n}`,
60030
60030
  applicationUniversalIdentifier: e
60031
- }), GN = [
60031
+ }), KN = [
60032
60032
  "Communication",
60033
60033
  "Productivity",
60034
60034
  "Product management",
@@ -60038,26 +60038,26 @@ var bN = (e) => typeof e == "string", xN = RegExp("\\{\\{([^{}]+)\\}\\}", "g"),
60038
60038
  "Data",
60039
60039
  "Search",
60040
60040
  "Other"
60041
- ], KN = (e) => GN.includes(e);
60041
+ ], qN = (e) => KN.includes(e);
60042
60042
  P.TEXT, P.ARRAY, P.BOOLEAN, P.DATE, P.DATE_TIME, P.NUMBER, P.NUMERIC, P.RAW_JSON, P.RICH_TEXT, P.SELECT, P.MULTI_SELECT;
60043
60043
  //#endregion
60044
60044
  //#region ../twenty-shared/dist/application.mjs
60045
- var qN = "public", JN = { js: "import { createRequire as __createRequire } from 'module';\nconst require = __createRequire(import.meta.url);" }, YN = ".twenty/output", XN = /* @__PURE__ */ function(e) {
60045
+ var JN = "public", YN = { js: "import { createRequire as __createRequire } from 'module';\nconst require = __createRequire(import.meta.url);" }, XN = ".twenty/output", ZN = /* @__PURE__ */ function(e) {
60046
60046
  return e.Object = "object", e.Field = "field", e.LogicFunction = "logicFunction", e.FrontComponent = "frontComponent", e.Role = "role", e.Skill = "skill", e.Agent = "agent", e.ConnectionProvider = "connectionProvider", e.View = "view", e.ViewField = "viewField", e.NavigationMenuItem = "navigationMenuItem", e.PageLayout = "pageLayout", e.PageLayoutTab = "pageLayoutTab", e.CommandMenuItem = "commandMenuItem", e;
60047
- }({}), ZN = `${qN}/cover.generated.png`, QN = async (e) => {
60047
+ }({}), QN = `${JN}/cover.generated.png`, $N = async (e) => {
60048
60048
  try {
60049
60049
  return await h(e), !0;
60050
60050
  } catch {
60051
60051
  return !1;
60052
60052
  }
60053
- }, $N = (e) => se(e), eP = (e) => _(e, { recursive: !0 }), tP = async (e) => {
60053
+ }, eP = (e) => se(e), tP = (e) => _(e, { recursive: !0 }), nP = async (e) => {
60054
60054
  await _(O(e), { recursive: !0 });
60055
60055
  try {
60056
60056
  await h(e);
60057
60057
  } catch {
60058
60058
  await x(e, "");
60059
60059
  }
60060
- }, nP = async (e) => {
60060
+ }, rP = async (e) => {
60061
60061
  let t;
60062
60062
  try {
60063
60063
  t = await y(e);
@@ -60072,60 +60072,60 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60072
60072
  recursive: !0,
60073
60073
  force: !0
60074
60074
  })));
60075
- }, rP = (e, t) => g(e, t, { recursive: !0 }), iP = (e) => b(e, {
60075
+ }, iP = (e, t) => g(e, t, { recursive: !0 }), aP = (e) => b(e, {
60076
60076
  recursive: !0,
60077
60077
  force: !0
60078
- }), aP = async (e) => {
60078
+ }), oP = async (e) => {
60079
60079
  let t = await v(e, "utf-8");
60080
60080
  return JSON.parse(t);
60081
- }, oP = async (e, t) => {
60081
+ }, sP = async (e, t) => {
60082
60082
  await x(e, JSON.stringify(t, null, 2) + "\n");
60083
- }, sP = (e) => e.startsWith("http://") || e.startsWith("https://"), cP = async ({ appPath: e, manifest: t }) => {
60083
+ }, cP = (e) => e.startsWith("http://") || e.startsWith("https://"), lP = async ({ appPath: e, manifest: t }) => {
60084
60084
  let { logo: n, galleryImages: r } = t.application;
60085
- if (!N(n) || sP(n) || (r ?? []).length > 0) return {
60085
+ if (!N(n) || cP(n) || (r ?? []).length > 0) return {
60086
60086
  manifest: t,
60087
60087
  generatedAssets: []
60088
60088
  };
60089
60089
  let i = d(e, n);
60090
- if (!await QN(i)) return {
60090
+ if (!await $N(i)) return {
60091
60091
  manifest: t,
60092
60092
  generatedAssets: []
60093
60093
  };
60094
- let a = await VN({ logoBuffer: await v(i) }), o = {
60095
- filePath: ZN,
60096
- fileName: c(ZN),
60097
- fileType: u(ZN).replace(/^\./, ""),
60094
+ let a = await HN({ logoBuffer: await v(i) }), o = {
60095
+ filePath: QN,
60096
+ fileName: c(QN),
60097
+ fileType: u(QN).replace(/^\./, ""),
60098
60098
  checksum: null
60099
- }, s = [...t.publicAssets.filter((e) => e.filePath !== ZN), o];
60099
+ }, s = [...t.publicAssets.filter((e) => e.filePath !== QN), o];
60100
60100
  return {
60101
60101
  manifest: {
60102
60102
  ...t,
60103
60103
  application: {
60104
60104
  ...t.application,
60105
- galleryImages: [ZN]
60105
+ galleryImages: [QN]
60106
60106
  },
60107
60107
  publicAssets: s
60108
60108
  },
60109
60109
  generatedAssets: [{
60110
- relativePath: ZN,
60110
+ relativePath: QN,
60111
60111
  content: a
60112
60112
  }]
60113
60113
  };
60114
- }, lP = /^readme(\.[^.]+)?$/i, uP = (e) => {
60115
- let t = e.filter((e) => lP.test(e));
60114
+ }, uP = /^readme(\.[^.]+)?$/i, dP = (e) => {
60115
+ let t = e.filter((e) => uP.test(e));
60116
60116
  return t.find((e) => /\.md$/i.test(e)) ?? t[0];
60117
- }, dP = async (e) => {
60118
- let t = uP(await y(e));
60117
+ }, fP = async (e) => {
60118
+ let t = dP(await y(e));
60119
60119
  if (t === void 0) return;
60120
- let n = k(e, YN);
60121
- await eP(n), await rP(k(e, t), k(n, t));
60122
- }, fP = "twenty-client-sdk", pP = async ({ result: e, appPath: t, fileFolder: n, lastChecksums: r, onFileBuilt: i }) => {
60120
+ let n = k(e, XN);
60121
+ await tP(n), await iP(k(e, t), k(n, t));
60122
+ }, pP = "twenty-client-sdk", mP = async ({ result: e, appPath: t, fileFolder: n, lastChecksums: r, onFileBuilt: i }) => {
60123
60123
  let a = Object.keys(e.metafile?.outputs ?? {}).filter((e) => e.endsWith(".mjs"));
60124
60124
  for (let o of a) {
60125
60125
  let a = s.resolve(o), c = s.relative(t, a), l = e.metafile?.outputs?.[o]?.entryPoint || "", u = s.relative(t, l), d = await v(a), f = n === am.BuiltFrontComponent ? "sha256" : "md5", p = le.createHash(f).update(d).digest("hex");
60126
60126
  if (r.get(c) === p) continue;
60127
60127
  r.set(c, p);
60128
- let m = (e.metafile?.outputs?.[o])?.imports?.some((e) => e.external === !0 && e.path.startsWith(fP)) ?? !1;
60128
+ let m = (e.metafile?.outputs?.[o])?.imports?.some((e) => e.external === !0 && e.path.startsWith(pP)) ?? !1;
60129
60129
  i && await i({
60130
60130
  fileFolder: n,
60131
60131
  builtPath: c,
@@ -60134,14 +60134,14 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60134
60134
  usesSdkClient: m
60135
60135
  });
60136
60136
  }
60137
- }, mP = async ({ appPath: e, sourcePaths: t, fileFolder: n, buildOptions: r, onFileBuilt: i }) => {
60137
+ }, hP = async ({ appPath: e, sourcePaths: t, fileFolder: n, buildOptions: r, onFileBuilt: i }) => {
60138
60138
  if (t.length === 0) return;
60139
60139
  let a = {};
60140
60140
  for (let n of t) {
60141
60141
  let t = n.replace(/\.tsx?$/, "");
60142
60142
  a[t] = s.join(e, n);
60143
60143
  }
60144
- await pP({
60144
+ await mP({
60145
60145
  result: await ue.build({
60146
60146
  ...r,
60147
60147
  entryPoints: a
@@ -60151,28 +60151,28 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60151
60151
  lastChecksums: /* @__PURE__ */ new Map(),
60152
60152
  onFileBuilt: i
60153
60153
  });
60154
- }, hP = async (e, t, n) => {
60154
+ }, gP = async (e, t, n) => {
60155
60155
  let r = new Set(n), i = t.filter((e) => !r.has(e));
60156
60156
  for (let t of i) {
60157
60157
  let n = t.replace(/\.tsx?$/, ".mjs"), r = s.join(e, n), i = `${r}.map`;
60158
- await iP(r), await iP(i);
60158
+ await aP(r), await aP(i);
60159
60159
  }
60160
- }, gP = ["twenty-client-sdk/core", "twenty-client-sdk/metadata"], _P = ({ config: e, errors: t = [], warnings: n = [] }) => ({
60160
+ }, _P = ["twenty-client-sdk/core", "twenty-client-sdk/metadata"], vP = ({ config: e, errors: t = [], warnings: n = [] }) => ({
60161
60161
  success: t.length === 0,
60162
60162
  config: e,
60163
60163
  errors: t,
60164
60164
  warnings: n
60165
- }), vP = (e) => {
60165
+ }), yP = (e) => {
60166
60166
  let t = [], n = [];
60167
- return e.universalIdentifier || t.push("Agent must have a universalIdentifier"), e.name || t.push("Agent must have a name"), e.label || t.push("Agent must have a label"), e.prompt || t.push("Agent must have a prompt"), e.responseFormat || n.push(`Agent '${e.name}' has no responseFormat, it will default to { type: 'text' }. Set it explicitly to control the agent's output shape.`), _P({
60167
+ return e.universalIdentifier || t.push("Agent must have a universalIdentifier"), e.name || t.push("Agent must have a name"), e.label || t.push("Agent must have a label"), e.prompt || t.push("Agent must have a prompt"), e.responseFormat || n.push(`Agent '${e.name}' has no responseFormat, it will default to { type: 'text' }. Set it explicitly to control the agent's output shape.`), vP({
60168
60168
  config: e,
60169
60169
  errors: t,
60170
60170
  warnings: n
60171
60171
  });
60172
- }, yP = (e) => e.startsWith("http://") || e.startsWith("https://"), bP = (e) => {
60172
+ }, bP = (e) => {
60173
60173
  let t = [], n = e.logo;
60174
- n && yP(n) && (t.push(`Application logo "${n}" is an external URL. External asset URLs are no longer supported and are ignored. Bundle the image in your public/ folder instead.`), n = void 0), !n && e.logoUrl && (yP(e.logoUrl) ? t.push(`Application logoUrl "${e.logoUrl}" is an external URL. External asset URLs are no longer supported and are ignored. Bundle the image in your public/ folder and reference it via logo.`) : (t.push("`logoUrl` is deprecated. Use `logo` to reference an image bundled in your public/ folder."), n = e.logoUrl)), !e.galleryImages && (e.screenshots?.length ?? 0) > 0 && t.push("`screenshots` is deprecated. Use `galleryImages` referencing images bundled in your public/ folder.");
60175
- let r = (e.galleryImages ?? e.screenshots ?? []).filter((e) => yP(e) ? (t.push(`Gallery image "${e}" is an external URL. External asset URLs are no longer supported and are ignored.`), !1) : !0);
60174
+ n && gN(n) && (t.push(`Application logo "${n}" is an external URL. External asset URLs are no longer supported and are ignored. Bundle the image in your public/ folder instead.`), n = void 0), !n && e.logoUrl && (gN(e.logoUrl) ? t.push(`Application logoUrl "${e.logoUrl}" is an external URL. External asset URLs are no longer supported and are ignored. Bundle the image in your public/ folder and reference it via logo.`) : (t.push("`logoUrl` is deprecated. Use `logo` to reference an image bundled in your public/ folder."), n = e.logoUrl)), !e.galleryImages && (e.screenshots?.length ?? 0) > 0 && t.push("`screenshots` is deprecated. Use `galleryImages` referencing images bundled in your public/ folder.");
60175
+ let r = (e.galleryImages ?? e.screenshots ?? []).filter((e) => gN(e) ? (t.push(`Gallery image "${e}" is an external URL. External asset URLs are no longer supported and are ignored.`), !1) : !0);
60176
60176
  return {
60177
60177
  logo: n,
60178
60178
  galleryImages: r,
@@ -60184,9 +60184,9 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60184
60184
  for (let [n, r] of Object.entries(e.applicationVariables ?? {})) (r.type === P.SELECT || r.type === P.MULTI_SELECT) && !FA(r.options) && t.push(`Application variable "${n}" of type ${r.type} must define non-empty options`);
60185
60185
  e.defaultRoleUniversalIdentifier && n.push("`defaultRoleUniversalIdentifier` on defineApplication() is deprecated. Use defineApplicationRole() in your role file instead.");
60186
60186
  let { category: r } = e;
60187
- C(r) && !KN(r) && n.push(`Application category "${r}" is not a known ApplicationCategory (${GN.join(", ")}). Arbitrary category strings are kept for backward compatibility and may be removed. Ask for a new category at https://github.com/twentyhq/twenty.`);
60187
+ C(r) && !qN(r) && n.push(`Application category "${r}" is not a known ApplicationCategory (${KN.join(", ")}). Arbitrary category strings are kept for backward compatibility and may be removed. Ask for a new category at https://github.com/twentyhq/twenty.`);
60188
60188
  let i = bP(e);
60189
- return n.push(...i.warnings), _P({
60189
+ return n.push(...i.warnings), vP({
60190
60190
  config: {
60191
60191
  ...e,
60192
60192
  logo: i.logo,
@@ -60212,14 +60212,14 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60212
60212
  let t = [];
60213
60213
  e.objectUniversalIdentifier || t.push("Field must have an objectUniversalIdentifier");
60214
60214
  let n = EP([e]);
60215
- return t.push(...n), _P({
60215
+ return t.push(...n), vP({
60216
60216
  config: e,
60217
60217
  errors: t,
60218
60218
  warnings: TP([e])
60219
60219
  });
60220
60220
  }, OP = (e) => {
60221
60221
  let t = [], n = [];
60222
- return e.universalIdentifier || t.push("CommandMenuItem must have a universalIdentifier"), e.label || t.push("CommandMenuItem must have a label"), e.frontComponentUniversalIdentifier || t.push("CommandMenuItem must have a frontComponentUniversalIdentifier (the universalIdentifier of the front component this command opens)"), e.icon && n.push("CommandMenuItem icon will be ignored in favor of application icon, you should remove it"), _P({
60222
+ return e.universalIdentifier || t.push("CommandMenuItem must have a universalIdentifier"), e.label || t.push("CommandMenuItem must have a label"), e.frontComponentUniversalIdentifier || t.push("CommandMenuItem must have a frontComponentUniversalIdentifier (the universalIdentifier of the front component this command opens)"), e.icon && n.push("CommandMenuItem icon will be ignored in favor of application icon, you should remove it"), vP({
60223
60223
  config: e,
60224
60224
  errors: t,
60225
60225
  warnings: n
@@ -60238,7 +60238,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60238
60238
  });
60239
60239
  }, jP = Z("pageType"), MP = Z("isInSidePanel"), NP = Z("isDashboardPageLayoutInEditMode"), PP = Z("isLayoutCustomizationModeEnabled"), FP = Z("favoriteRecordIds"), IP = Z("isSelectAll"), LP = Z("hasAnySoftDeleteFilterOnView"), RP = Z("numberOfSelectedRecords"), zP = Z("objectPermissions"), BP = Z("selectedRecords"), VP = Z("featureFlags"), HP = Z("targetObjectReadPermissions"), UP = Z("targetObjectWritePermissions"), WP = Z("canImpersonate"), GP = Z("canAccessFullAdminPanel"), KP = Z("objectMetadataItem"), qP = Z("objectMetadataLabel"), JP = Z("isDefined"), YP = Z("isNonEmptyString"), XP = Z("includes"), ZP = Z("every"), QP = Z("everyDefined"), $P = Z("everyEquals"), eF = Z("some"), tF = Z("someDefined"), nF = Z("someEquals"), rF = Z("none"), iF = Z("noneDefined"), aF = Z("noneEquals"), oF = Z("someNonEmptyString"), sF = Z("includesEvery"), cF = (e) => {
60240
60240
  let t = [];
60241
- return e.universalIdentifier || t.push("Front component must have a universalIdentifier"), e.component || t.push("Front component must have a component"), typeof e.component != "function" && t.push("Front component component must be a React component"), _P({
60241
+ return e.universalIdentifier || t.push("Front component must have a universalIdentifier"), e.component || t.push("Front component must have a component"), typeof e.component != "function" && t.push("Front component component must be a React component"), vP({
60242
60242
  config: e,
60243
60243
  errors: t
60244
60244
  });
@@ -60250,25 +60250,25 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60250
60250
  let n = e.fields.map((e) => `${e.fieldUniversalIdentifier}::${e.subFieldName ?? ""}`);
60251
60251
  new Set(n).size !== n.length && t.push("Index lists the same column twice");
60252
60252
  }
60253
- return _P({
60253
+ return vP({
60254
60254
  config: e,
60255
60255
  errors: t
60256
60256
  });
60257
60257
  }, dF = (e) => {
60258
60258
  let t = [];
60259
- return e.universalIdentifier || t.push("Logic function must have a universalIdentifier"), e.handler || t.push("Logic function must have a handler"), typeof e.handler != "function" && t.push("Logic function handler must be a function"), e.httpRouteTriggerSettings && (e.httpRouteTriggerSettings.path || t.push("Route trigger must have a path"), e.httpRouteTriggerSettings.httpMethod || t.push("Route trigger must have an httpMethod")), e.cronTriggerSettings && (e.cronTriggerSettings.pattern || t.push("Cron trigger must have a pattern")), e.databaseEventTriggerSettings && (e.databaseEventTriggerSettings.eventName || t.push("Database event trigger must have an eventName")), _P({
60259
+ return e.universalIdentifier || t.push("Logic function must have a universalIdentifier"), e.handler || t.push("Logic function must have a handler"), typeof e.handler != "function" && t.push("Logic function handler must be a function"), e.httpRouteTriggerSettings && (e.httpRouteTriggerSettings.path || t.push("Route trigger must have a path"), e.httpRouteTriggerSettings.httpMethod || t.push("Route trigger must have an httpMethod")), e.cronTriggerSettings && (e.cronTriggerSettings.pattern || t.push("Cron trigger must have a pattern")), e.databaseEventTriggerSettings && (e.databaseEventTriggerSettings.eventName || t.push("Database event trigger must have an eventName")), vP({
60260
60260
  config: e,
60261
60261
  errors: t
60262
60262
  });
60263
60263
  }, fF = (e) => {
60264
60264
  let t = [];
60265
- return e.universalIdentifier || t.push("Post install logic function must have a universalIdentifier"), e.handler || t.push("Post install logic function must have a handler"), typeof e.handler != "function" && t.push("Post install logic function handler must be a function"), _P({
60265
+ return e.universalIdentifier || t.push("Post install logic function must have a universalIdentifier"), e.handler || t.push("Post install logic function must have a handler"), typeof e.handler != "function" && t.push("Post install logic function handler must be a function"), vP({
60266
60266
  config: e,
60267
60267
  errors: t
60268
60268
  });
60269
60269
  }, pF = (e) => {
60270
60270
  let t = [];
60271
- return e.universalIdentifier || t.push("Pre install logic function must have a universalIdentifier"), e.handler || t.push("Pre install logic function must have a handler"), typeof e.handler != "function" && t.push("Pre install logic function handler must be a function"), _P({
60271
+ return e.universalIdentifier || t.push("Pre install logic function must have a universalIdentifier"), e.handler || t.push("Pre install logic function must have a handler"), typeof e.handler != "function" && t.push("Pre install logic function handler must be a function"), vP({
60272
60272
  config: e,
60273
60273
  errors: t
60274
60274
  });
@@ -60278,13 +60278,13 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60278
60278
  let n = e.oauth;
60279
60279
  n ? (n.authorizationEndpoint || t.push("OAuth connection provider must have an authorizationEndpoint"), n.tokenEndpoint || t.push("OAuth connection provider must have a tokenEndpoint"), n.clientIdVariable || t.push("OAuth connection provider must reference a clientIdVariable (key of a serverVariable on defineApplication)"), n.clientSecretVariable || t.push("OAuth connection provider must reference a clientSecretVariable (key of a serverVariable on defineApplication)"), Array.isArray(n.scopes) || t.push("OAuth connection provider must declare a scopes array")) : t.push("Connection provider with type 'oauth' must declare an `oauth` config block");
60280
60280
  }
60281
- return _P({
60281
+ return vP({
60282
60282
  config: e,
60283
60283
  errors: t
60284
60284
  });
60285
60285
  }, vF = (e) => {
60286
60286
  let t = [];
60287
- return e.universalIdentifier || t.push("NavigationMenuItem must have a universalIdentifier"), typeof e.position != "number" && t.push("NavigationMenuItem must have a position"), _P({
60287
+ return e.universalIdentifier || t.push("NavigationMenuItem must have a universalIdentifier"), typeof e.position != "number" && t.push("NavigationMenuItem must have a position"), vP({
60288
60288
  config: e,
60289
60289
  errors: t
60290
60290
  });
@@ -60292,7 +60292,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60292
60292
  let t = [];
60293
60293
  e.universalIdentifier || t.push("Object must have a universalIdentifier"), e.nameSingular || t.push("Object must have a nameSingular"), e.namePlural || t.push("Object must have a namePlural"), e.labelSingular || t.push("Object must have a labelSingular"), e.labelPlural || t.push("Object must have a labelPlural");
60294
60294
  let n = EP(e.fields);
60295
- return t.push(...n), N(e.labelIdentifierFieldMetadataUniversalIdentifier) && !e.fields.some((t) => t.universalIdentifier === e.labelIdentifierFieldMetadataUniversalIdentifier) && t.push("labelIdentifierFieldMetadataUniversalIdentifier must reference a field defined in the fields array"), _P({
60295
+ return t.push(...n), N(e.labelIdentifierFieldMetadataUniversalIdentifier) && !e.fields.some((t) => t.universalIdentifier === e.labelIdentifierFieldMetadataUniversalIdentifier) && t.push("labelIdentifierFieldMetadataUniversalIdentifier must reference a field defined in the fields array"), vP({
60296
60296
  config: e,
60297
60297
  errors: t,
60298
60298
  warnings: TP(e.fields)
@@ -60306,8 +60306,8 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
60306
60306
  "updatedBy",
60307
60307
  "position",
60308
60308
  "searchVector"
60309
- ], Q = (e) => Object.fromEntries(bF.map((t) => [t, { universalIdentifier: WN({
60310
- applicationUniversalIdentifier: HN,
60309
+ ], Q = (e) => Object.fromEntries(bF.map((t) => [t, { universalIdentifier: GN({
60310
+ applicationUniversalIdentifier: UN,
60311
60311
  objectUniversalIdentifier: e,
60312
60312
  name: t
60313
60313
  }) }])), xF = {
@@ -61309,6 +61309,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61309
61309
  ...Q("20202020-62be-406c-b9ca-8caa50d51392"),
61310
61310
  name: { universalIdentifier: "20202020-b3d3-478f-acc0-5d901e725b20" },
61311
61311
  lastPublishedVersionId: { universalIdentifier: "20202020-326a-4fba-8639-3456c0a169e8" },
61312
+ coreWorkflowId: { universalIdentifier: "20202020-058a-42ad-8eb8-0662a5552aad" },
61312
61313
  statuses: { universalIdentifier: "20202020-357c-4432-8c50-8c31b4a552d9" },
61313
61314
  versions: { universalIdentifier: "20202020-9432-416e-8f3c-27ee3153d099" },
61314
61315
  runs: { universalIdentifier: "20202020-759b-4340-b58b-e73595c4df4f" },
@@ -61427,6 +61428,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61427
61428
  status: { universalIdentifier: "20202020-5a34-440e-8a25-39d8c3d1d4cf" },
61428
61429
  runs: { universalIdentifier: "20202020-1d08-46df-901a-85045f18099a" },
61429
61430
  steps: { universalIdentifier: "20202020-5988-4a64-b94a-1f9b7b989039" },
61431
+ coreWorkflowVersionId: { universalIdentifier: "20202020-58b4-46e8-b6d2-f1f3c74cf7f4" },
61430
61432
  timelineActivities: { universalIdentifier: "20202020-fcb0-4695-b17e-3b43a421c633" }
61431
61433
  },
61432
61434
  indexes: {
@@ -61882,20 +61884,20 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61882
61884
  if (e.universalIdentifier || t.push("PageLayout must have a universalIdentifier"), e.name || t.push("PageLayout must have a name"), e.type || t.push("PageLayout must have a type"), e.tabs) {
61883
61885
  for (let n of e.tabs) if (n.universalIdentifier || t.push("PageLayoutTab must have a universalIdentifier"), n.title || t.push("PageLayoutTab must have a title"), n.widgets) for (let e of n.widgets) e.universalIdentifier || t.push("PageLayoutWidget must have a universalIdentifier"), e.title || t.push("PageLayoutWidget must have a title"), e.type || t.push("PageLayoutWidget must have a type");
61884
61886
  }
61885
- return _P({
61887
+ return vP({
61886
61888
  config: e,
61887
61889
  errors: t
61888
61890
  });
61889
61891
  }, wF = (e) => {
61890
61892
  let t = [];
61891
61893
  if (e.universalIdentifier || t.push("PageLayoutTab must have a universalIdentifier"), e.title || t.push("PageLayoutTab must have a title"), e.pageLayoutUniversalIdentifier || t.push("PageLayoutTab must have a pageLayoutUniversalIdentifier when defined standalone (use the parent page layout universalIdentifier)"), e.widgets) for (let n of e.widgets) n.universalIdentifier || t.push("PageLayoutWidget must have a universalIdentifier"), n.title || t.push("PageLayoutWidget must have a title"), n.type || t.push("PageLayoutWidget must have a type");
61892
- return _P({
61894
+ return vP({
61893
61895
  config: e,
61894
61896
  errors: t
61895
61897
  });
61896
61898
  }, TF = (e) => {
61897
61899
  let t = [];
61898
- return e.universalIdentifier || t.push("Permission flag must have a universalIdentifier"), e.key || t.push("Permission flag must have a key"), e.label || t.push("Permission flag must have a label"), _P({
61900
+ return e.universalIdentifier || t.push("Permission flag must have a universalIdentifier"), e.key || t.push("Permission flag must have a key"), e.label || t.push("Permission flag must have a label"), vP({
61899
61901
  config: e,
61900
61902
  errors: t
61901
61903
  });
@@ -61907,13 +61909,13 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61907
61909
  if (e.rowLevelPermissionPredicateGroups) for (let r of e.rowLevelPermissionPredicateGroups) r.universalIdentifier ? n.has(r.universalIdentifier) ? t.push(`Duplicate row level permission predicate group universalIdentifier "${r.universalIdentifier}"`) : n.add(r.universalIdentifier) : t.push("Row level permission predicate group must have a universalIdentifier"), r.objectUniversalIdentifier || t.push("Row level permission predicate group must have an objectUniversalIdentifier"), r.logicalOperator || t.push("Row level permission predicate group must have a logicalOperator");
61908
61910
  let r = /* @__PURE__ */ new Set();
61909
61911
  if (e.rowLevelPermissionPredicates) for (let i of e.rowLevelPermissionPredicates) i.universalIdentifier ? r.has(i.universalIdentifier) ? t.push(`Duplicate row level permission predicate universalIdentifier "${i.universalIdentifier}"`) : r.add(i.universalIdentifier) : t.push("Row level permission predicate must have a universalIdentifier"), i.objectUniversalIdentifier || t.push("Row level permission predicate must have an objectUniversalIdentifier"), i.fieldUniversalIdentifier || t.push("Row level permission predicate must have a fieldUniversalIdentifier"), i.operand || t.push("Row level permission predicate must have an operand"), i.predicateGroupUniversalIdentifier && !n.has(i.predicateGroupUniversalIdentifier) && t.push(`Row level permission predicate references unknown predicate group "${i.predicateGroupUniversalIdentifier}"`);
61910
- return _P({
61912
+ return vP({
61911
61913
  config: e,
61912
61914
  errors: t
61913
61915
  });
61914
61916
  }, DF = (e) => EF(e), OF = (e) => {
61915
61917
  let t = [];
61916
- return e.universalIdentifier || t.push("Skill must have a universalIdentifier"), e.name || t.push("Skill must have a name"), e.label || t.push("Skill must have a label"), e.content || t.push("Skill must have content"), _P({
61918
+ return e.universalIdentifier || t.push("Skill must have a universalIdentifier"), e.name || t.push("Skill must have a name"), e.label || t.push("Skill must have a label"), e.content || t.push("Skill must have content"), vP({
61917
61919
  config: e,
61918
61920
  errors: t
61919
61921
  });
@@ -61925,13 +61927,13 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61925
61927
  if (e.groups) for (let n of e.groups) n.universalIdentifier || t.push("ViewGroup must have a universalIdentifier");
61926
61928
  if (e.fieldGroups) for (let n of e.fieldGroups) n.universalIdentifier || t.push("ViewFieldGroup must have a universalIdentifier");
61927
61929
  if (e.sorts) for (let n of e.sorts) n.universalIdentifier || t.push("ViewSort must have a universalIdentifier"), n.fieldMetadataUniversalIdentifier || t.push("ViewSort must have a fieldMetadataUniversalIdentifier"), n.direction !== Sm.ASC && n.direction !== Sm.DESC && t.push(`ViewSort direction must be '${Sm.ASC}' or '${Sm.DESC}'`);
61928
- return _P({
61930
+ return vP({
61929
61931
  config: e,
61930
61932
  errors: t
61931
61933
  });
61932
61934
  }, AF = (e) => {
61933
61935
  let t = [];
61934
- return e.universalIdentifier || t.push("View field must have a universalIdentifier"), e.viewUniversalIdentifier || t.push("View field must have a viewUniversalIdentifier"), e.fieldMetadataUniversalIdentifier || t.push("View field must have a fieldMetadataUniversalIdentifier"), _P({
61936
+ return e.universalIdentifier || t.push("View field must have a universalIdentifier"), e.viewUniversalIdentifier || t.push("View field must have a viewUniversalIdentifier"), e.fieldMetadataUniversalIdentifier || t.push("View field must have a fieldMetadataUniversalIdentifier"), vP({
61935
61937
  config: e,
61936
61938
  errors: t
61937
61939
  });
@@ -61965,8 +61967,8 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61965
61967
  ViewVisibility: () => wm,
61966
61968
  canAccessFullAdminPanel: () => GP,
61967
61969
  canImpersonate: () => WP,
61968
- createValidationResult: () => _P,
61969
- defineAgent: () => vP,
61970
+ createValidationResult: () => vP,
61971
+ defineAgent: () => yP,
61970
61972
  defineApplication: () => xP,
61971
61973
  defineApplicationRole: () => DF,
61972
61974
  defineCommandMenuItem: () => OP,
@@ -61991,7 +61993,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
61991
61993
  everyEquals: () => $P,
61992
61994
  favoriteRecordIds: () => FP,
61993
61995
  featureFlags: () => VP,
61994
- getFieldUniversalIdentifier: () => WN,
61996
+ getFieldUniversalIdentifier: () => GN,
61995
61997
  hasAnySoftDeleteFilterOnView: () => LP,
61996
61998
  includes: () => XP,
61997
61999
  includesEvery: () => sF,
@@ -62129,14 +62131,14 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62129
62131
  if (!this.isRestarting) {
62130
62132
  this.isRestarting = !0;
62131
62133
  try {
62132
- await this.close(), await hP(s.join(this.appPath, YN), this.sourcePaths, e), this.sourcePaths = e, this.lastChecksums.clear(), this.sourcePaths.length > 0 && await this.createContext();
62134
+ await this.close(), await gP(s.join(this.appPath, XN), this.sourcePaths, e), this.sourcePaths = e, this.lastChecksums.clear(), this.sourcePaths.length > 0 && await this.createContext();
62133
62135
  } finally {
62134
62136
  this.isRestarting = !1;
62135
62137
  }
62136
62138
  }
62137
62139
  }
62138
62140
  async createContext() {
62139
- let e = s.join(this.appPath, YN), t = {};
62141
+ let e = s.join(this.appPath, XN), t = {};
62140
62142
  for (let e of this.sourcePaths) {
62141
62143
  let n = e.replace(/\.tsx?$/, "");
62142
62144
  t[n] = s.join(this.appPath, e);
@@ -62153,7 +62155,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62153
62155
  })));
62154
62156
  return;
62155
62157
  }
62156
- await pP({
62158
+ await mP({
62157
62159
  result: e,
62158
62160
  appPath: this.appPath,
62159
62161
  fileFolder: this.config.fileFolder,
@@ -62194,12 +62196,12 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62194
62196
  fileFolder: am.BuiltLogicFunction,
62195
62197
  platform: "node",
62196
62198
  extraPlugins: [WF(e.appPath, e.shouldSkipTypecheck), RF()],
62197
- banner: JN
62199
+ banner: YN
62198
62200
  }
62199
62201
  }), JF = (e) => new KF({
62200
62202
  ...e,
62201
62203
  config: {
62202
- externalModules: gP,
62204
+ externalModules: _P,
62203
62205
  fileFolder: am.BuiltFrontComponent,
62204
62206
  jsx: "automatic",
62205
62207
  extraPlugins: [
@@ -62213,7 +62215,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62213
62215
  splitting: !1,
62214
62216
  format: "esm",
62215
62217
  outExtension: { ".js": ".mjs" },
62216
- external: gP,
62218
+ external: _P,
62217
62219
  jsx: "automatic",
62218
62220
  sourcemap: !0,
62219
62221
  metafile: !0,
@@ -62223,19 +62225,19 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62223
62225
  plugins: [...a()]
62224
62226
  }), XF = "locales", ZF = (e) => Object.prototype.hasOwnProperty.call(km, e), QF = async (e) => {
62225
62227
  let t = s.join(e, XF);
62226
- if (!await QN(t)) return {};
62228
+ if (!await $N(t)) return {};
62227
62229
  let n = (await y(t)).filter((e) => e.endsWith(".json")), r = {};
62228
62230
  for (let e of n) {
62229
62231
  let n = s.basename(e, ".json");
62230
62232
  if (n === "en" || !ZF(n)) continue;
62231
- let i = await aP(s.join(t, e)) ?? {}, a = {};
62233
+ let i = await oP(s.join(t, e)) ?? {}, a = {};
62232
62234
  for (let [e, t] of Object.entries(i)) typeof t == "string" && t.length > 0 && (a[e] = t);
62233
62235
  Object.keys(a).length > 0 && (r[n] = a);
62234
62236
  }
62235
62237
  return r;
62236
62238
  }, $F = "__twentySdkFrontComponentTranslations__", eI = async (e) => {
62237
- let t = d(e.appPath, YN);
62238
- await eP(t), await nP(t);
62239
+ let t = d(e.appPath, XN);
62240
+ await tP(t), await rP(t);
62239
62241
  let n = /* @__PURE__ */ new Map(), r = (e) => {
62240
62242
  n.set(e.builtPath, {
62241
62243
  checksum: e.checksum,
@@ -62245,7 +62247,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62245
62247
  usesSdkClient: e.usesSdkClient
62246
62248
  });
62247
62249
  }, { logicFunctions: i, frontComponents: o } = e.filePaths, s = await QF(e.appPath), c = Object.keys(s).length ? { js: `globalThis[${JSON.stringify($F)}]=${JSON.stringify(s)};` } : void 0;
62248
- await mP({
62250
+ await hP({
62249
62251
  appPath: e.appPath,
62250
62252
  sourcePaths: i,
62251
62253
  fileFolder: am.BuiltLogicFunction,
@@ -62254,24 +62256,24 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62254
62256
  splitting: !1,
62255
62257
  format: "esm",
62256
62258
  platform: "node",
62257
- outdir: d(e.appPath, YN),
62259
+ outdir: d(e.appPath, XN),
62258
62260
  outExtension: { ".js": ".mjs" },
62259
62261
  external: GF,
62260
62262
  tsconfig: d(e.appPath, "tsconfig.json"),
62261
62263
  sourcemap: !0,
62262
62264
  metafile: !0,
62263
62265
  logLevel: "silent",
62264
- banner: JN,
62266
+ banner: YN,
62265
62267
  plugins: [RF()]
62266
62268
  },
62267
62269
  onFileBuilt: r
62268
- }), await mP({
62270
+ }), await hP({
62269
62271
  appPath: e.appPath,
62270
62272
  sourcePaths: o,
62271
62273
  fileFolder: am.BuiltFrontComponent,
62272
62274
  buildOptions: {
62273
62275
  ...YF(),
62274
- outdir: d(e.appPath, YN),
62276
+ outdir: d(e.appPath, XN),
62275
62277
  tsconfig: d(e.appPath, "tsconfig.json"),
62276
62278
  jsx: "automatic",
62277
62279
  sourcemap: !0,
@@ -62289,7 +62291,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62289
62291
  }), await nI({
62290
62292
  appPath: e.appPath,
62291
62293
  fileFolder: am.Dependencies,
62292
- filePaths: ["package.json", "yarn.lock"].filter((t) => $N(d(e.appPath, t))),
62294
+ filePaths: ["package.json", "yarn.lock"].filter((t) => eP(d(e.appPath, t))),
62293
62295
  collectFileBuilt: r
62294
62296
  });
62295
62297
  for (let t of e.generatedAssets ?? []) await tI({
@@ -62297,10 +62299,10 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62297
62299
  generatedAsset: t,
62298
62300
  collectFileBuilt: r
62299
62301
  });
62300
- return await dP(e.appPath), { builtFileInfos: n };
62302
+ return await fP(e.appPath), { builtFileInfos: n };
62301
62303
  }, tI = async ({ appPath: e, generatedAsset: t, collectFileBuilt: n }) => {
62302
- let r = d(YN, t.relativePath), i = d(e, r);
62303
- await eP(l(i)), await x(i, t.content);
62304
+ let r = d(XN, t.relativePath), i = d(e, r);
62305
+ await tP(l(i)), await x(i, t.content);
62304
62306
  let a = le.createHash("md5").update(t.content).digest("hex");
62305
62307
  n({
62306
62308
  fileFolder: am.PublicAsset,
@@ -62311,9 +62313,9 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62311
62313
  }, nI = async ({ appPath: e, fileFolder: t, filePaths: n, collectFileBuilt: r }) => {
62312
62314
  for (let i of n) {
62313
62315
  let n = d(e, i);
62314
- if (!await QN(n)) continue;
62315
- let a = d(YN, i), o = d(e, a);
62316
- await eP(l(o)), await rP(n, o);
62316
+ if (!await $N(n)) continue;
62317
+ let a = d(XN, i), o = d(e, a);
62318
+ await tP(l(o)), await iP(n, o);
62317
62319
  let s = await v(o);
62318
62320
  r({
62319
62321
  fileFolder: t,
@@ -62411,7 +62413,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62411
62413
  filePath: e,
62412
62414
  appPath: t
62413
62415
  }), e), yI = async ({ filePath: e, appPath: t }) => {
62414
- let n = s.join(t, "tsconfig.json"), r = await QN(n), i = xe(s.join(t, "package.json")), a, o;
62416
+ let n = s.join(t, "tsconfig.json"), r = await $N(n), i = xe(s.join(t, "package.json")), a, o;
62415
62417
  try {
62416
62418
  a = s.dirname(i.resolve("react/package.json")), o = s.dirname(i.resolve("react-dom/package.json"));
62417
62419
  } catch {}
@@ -62528,11 +62530,11 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62528
62530
  }, OI = ({ objectConfig: e, applicationUniversalIdentifier: t }) => {
62529
62531
  let n = [], r = [];
62530
62532
  for (let i of EI) {
62531
- let a = xF[i.standardObjectKey], o = WN({
62533
+ let a = xF[i.standardObjectKey], o = GN({
62532
62534
  applicationUniversalIdentifier: t,
62533
62535
  objectUniversalIdentifier: e.universalIdentifier,
62534
62536
  name: i.fieldName
62535
- }), s = WN({
62537
+ }), s = GN({
62536
62538
  applicationUniversalIdentifier: t,
62537
62539
  objectUniversalIdentifier: a.universalIdentifier,
62538
62540
  name: i.targetFieldName(e)
@@ -62567,7 +62569,7 @@ var qN = "public", JN = { js: "import { createRequire as __createRequire } from
62567
62569
  isNullable: !0,
62568
62570
  defaultValue: null,
62569
62571
  type: P.TEXT,
62570
- universalIdentifier: WN({
62572
+ universalIdentifier: GN({
62571
62573
  applicationUniversalIdentifier: t,
62572
62574
  objectUniversalIdentifier: e.universalIdentifier,
62573
62575
  name: "name"
@@ -62715,7 +62717,7 @@ GI({
62715
62717
  //#endregion
62716
62718
  //#region ../twenty-shared/dist/logic-function.mjs
62717
62719
  var KI = async (e) => {
62718
- let { getFunctionInputSchema: t } = await import("./get-function-input-schema-GNk3NRLJ-C4DmUxTK.mjs"), n = t(e)[0];
62720
+ let { getFunctionInputSchema: t } = await import("./get-function-input-schema-GNk3NRLJ-DqaAG8sQ.mjs"), n = t(e)[0];
62719
62721
  return n?.type === "object" && N(n.properties) ? {
62720
62722
  type: "object",
62721
62723
  properties: n.properties
@@ -62788,7 +62790,7 @@ var KI = async (e) => {
62788
62790
  "**/.twenty/**"
62789
62791
  ],
62790
62792
  onlyFiles: !0
62791
- }), nL = async (e) => await Se([`${qN}/**/*`], {
62793
+ }), nL = async (e) => await Se([`${JN}/**/*`], {
62792
62794
  cwd: e,
62793
62795
  absolute: !0,
62794
62796
  onlyFiles: !0
@@ -63145,8 +63147,8 @@ var KI = async (e) => {
63145
63147
  "twenty-client-sdk": "\"twenty-client-sdk\" is listed under \"dependencies\" in package.json. It is provided at runtime by Twenty's injected SDK and should be moved to \"devDependencies\"."
63146
63148
  }, vL = async (e) => {
63147
63149
  let t = s.join(e, "package.json");
63148
- if (!await QN(t)) return [];
63149
- let n = await aP(t);
63150
+ if (!await $N(t)) return [];
63151
+ let n = await oP(t);
63150
63152
  return Object.entries(_L).filter(([e]) => N(n.dependencies?.[e])).map(([, e]) => e);
63151
63153
  }, yL = async (e) => {
63152
63154
  let t = await iL(e);
@@ -63173,7 +63175,7 @@ var KI = async (e) => {
63173
63175
  }, bL = ({ manifest: e, builtFileInfos: t }) => {
63174
63176
  let n = structuredClone(e);
63175
63177
  for (let [e, { fileFolder: r, checksum: i }] of t.entries()) {
63176
- let a = f(YN, e);
63178
+ let a = f(XN, e);
63177
63179
  if (r === am.BuiltLogicFunction) {
63178
63180
  let e = n.logicFunctions, t = e.findIndex((e) => e.builtHandlerPath === a);
63179
63181
  if (t === -1) continue;
@@ -63214,10 +63216,10 @@ var KI = async (e) => {
63214
63216
  }
63215
63217
  return n;
63216
63218
  }, xL = async (e, t) => {
63217
- let n = s.join(e, YN);
63218
- await eP(n);
63219
+ let n = s.join(e, XN);
63220
+ await tP(n);
63219
63221
  let r = s.join(n, "manifest.json");
63220
- return await oP(r, t), r;
63222
+ return await sP(r, t), r;
63221
63223
  }, SL = (e) => {
63222
63224
  let t = e.indexOf("");
63223
63225
  return t === -1 ? { message: e } : {
@@ -63226,7 +63228,7 @@ var KI = async (e) => {
63226
63228
  };
63227
63229
  }, CL = "", wL = (e, t = "") => be("sha256").update(e + CL + (t || "")).digest("base64").slice(0, 6), TL = (e) => Object.prototype.hasOwnProperty.call(km, e), EL = async (e) => {
63228
63230
  let t = s.join(e, XF);
63229
- if (!await QN(t)) return;
63231
+ if (!await $N(t)) return;
63230
63232
  let n = (await y(t)).filter((e) => e.endsWith(".json")), r = {};
63231
63233
  for (let e of n) {
63232
63234
  let n = s.basename(e, ".json");
@@ -63235,7 +63237,7 @@ var KI = async (e) => {
63235
63237
  console.warn(`Skipping translation file "${e}": "${n}" is not a supported locale.`);
63236
63238
  continue;
63237
63239
  }
63238
- let i = await aP(s.join(t, e)) ?? {}, a = {}, o = /* @__PURE__ */ new Map();
63240
+ let i = await oP(s.join(t, e)) ?? {}, a = {}, o = /* @__PURE__ */ new Map();
63239
63241
  for (let [t, n] of Object.entries(i)) {
63240
63242
  if (typeof n != "string" || n.length === 0) continue;
63241
63243
  let { message: r, context: i } = SL(t), s = wL(r, i), c = o.get(s);
@@ -63295,7 +63297,7 @@ var KI = async (e) => {
63295
63297
  };
63296
63298
  let { filePaths: i } = r;
63297
63299
  for (let e of r.warnings) n?.(`⚠ ${e}`);
63298
- let { manifest: a, generatedAssets: o } = await cP({
63300
+ let { manifest: a, generatedAssets: o } = await lP({
63299
63301
  appPath: t,
63300
63302
  manifest: r.manifest
63301
63303
  }).catch((e) => (n?.(`⚠ Skipped cover image generation: ${e instanceof Error ? e.message : String(e)}`), {
@@ -63570,7 +63572,7 @@ var KI = async (e) => {
63570
63572
  return e.getActiveRemote();
63571
63573
  }
63572
63574
  async readRawConfig() {
63573
- await tP(this.configPath);
63575
+ await nP(this.configPath);
63574
63576
  let e = await v(this.configPath, "utf8"), t = JSON.parse(e || "{}");
63575
63577
  return this.migrateConfigIfNeeded(t);
63576
63578
  }
@@ -63601,7 +63603,7 @@ var KI = async (e) => {
63601
63603
  }
63602
63604
  n && !r.remotes[WL] && (r.remotes[WL] = a(e));
63603
63605
  let l = e.defaultWorkspace;
63604
- return l && (r.defaultRemote = l === "default" ? WL : l), await eP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(r, null, 2)), r;
63606
+ return l && (r.defaultRemote = l === "default" ? WL : l), await tP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(r, null, 2)), r;
63605
63607
  }
63606
63608
  async getConfig() {
63607
63609
  return this.getConfigForRemote(this.getActiveRemoteName());
@@ -63633,11 +63635,11 @@ var KI = async (e) => {
63633
63635
  t.remotes[n] = {
63634
63636
  ...r,
63635
63637
  ...e
63636
- }, await eP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(t, null, 2));
63638
+ }, await tP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(t, null, 2));
63637
63639
  }
63638
63640
  async clearConfig() {
63639
63641
  let e = await this.readRawConfig(), t = this.getActiveRemoteName();
63640
- e.remotes ||= {}, e.remotes[t] && delete e.remotes[t], await eP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(e, null, 2));
63642
+ e.remotes ||= {}, e.remotes[t] && delete e.remotes[t], await tP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(e, null, 2));
63641
63643
  }
63642
63644
  getDefaultConfig() {
63643
63645
  return { apiUrl: "http://localhost:2020" };
@@ -63659,7 +63661,7 @@ var KI = async (e) => {
63659
63661
  }
63660
63662
  async setDefaultRemote(e) {
63661
63663
  let t = await this.readRawConfig();
63662
- t.defaultRemote = e, await eP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(t, null, 2));
63664
+ t.defaultRemote = e, await tP(o.dirname(this.configPath)), await x(this.configPath, JSON.stringify(t, null, 2));
63663
63665
  }
63664
63666
  }, KL = async (e) => {
63665
63667
  let { apiUrl: t, remote: n, timeoutMs: r } = e;
@@ -64416,7 +64418,7 @@ var KI = async (e) => {
64416
64418
  };
64417
64419
  }, cR = (e) => DL(() => sR(e), $.PUBLISH_FAILED), lR = {
64418
64420
  name: "twenty-sdk",
64419
- version: "2.21.0",
64421
+ version: "2.22.0",
64420
64422
  sideEffects: !1,
64421
64423
  bin: { twenty: "dist/cli.cjs" },
64422
64424
  files: [
@@ -64533,14 +64535,14 @@ var KI = async (e) => {
64533
64535
  "front-component-renderer/build": ["dist/front-component-renderer/build/index.d.ts"]
64534
64536
  } }
64535
64537
  }, uR = async (e) => {
64536
- let t = s.join(e, YN);
64537
- await eP(t);
64538
+ let t = s.join(e, XN);
64539
+ await tP(t);
64538
64540
  let n = s.join(t, "manifest.json");
64539
- if (!await QN(n)) {
64541
+ if (!await $N(n)) {
64540
64542
  let { manifest: t } = await iL(e);
64541
64543
  return t;
64542
64544
  }
64543
- return await aP(n);
64545
+ return await oP(n);
64544
64546
  }, dR = (e) => {
64545
64547
  if (!N(e?.errors) || !N(e?.summary)) return null;
64546
64548
  let t = [], n = e.summary.totalErrors;
@@ -64770,7 +64772,7 @@ var KI = async (e) => {
64770
64772
  }
64771
64773
  }, RR = async (e) => {
64772
64774
  try {
64773
- await eP(o.dirname(NR)), await x(NR, JSON.stringify({
64775
+ await tP(o.dirname(NR)), await x(NR, JSON.stringify({
64774
64776
  fetchedAt: Date.now(),
64775
64777
  versions: e.map(({ name: e, lastUpdatedAt: t }) => ({
64776
64778
  name: e,
@@ -65175,7 +65177,7 @@ var KI = async (e) => {
65175
65177
  this.apiService = new iR(), this.applicationUniversalIdentifier = e.applicationUniversalIdentifier, this.appPath = e.appPath;
65176
65178
  }
65177
65179
  async uploadFile({ builtPath: e, fileFolder: t }) {
65178
- let n = f(YN, e);
65180
+ let n = f(XN, e);
65179
65181
  return await this.apiService.uploadFile({
65180
65182
  filePath: s.join(this.appPath, e),
65181
65183
  builtHandlerPath: n,
@@ -65249,7 +65251,7 @@ var KI = async (e) => {
65249
65251
  });
65250
65252
  await xL(t, m);
65251
65253
  let h = () => ({
65252
- outputDir: s.join(t, YN),
65254
+ outputDir: s.join(t, XN),
65253
65255
  fileCount: f.builtFileInfos.size,
65254
65256
  applicationDisplayName: m.application.displayName,
65255
65257
  applicationUniversalIdentifier: m.application.universalIdentifier,
@@ -65588,4 +65590,4 @@ var KI = async (e) => {
65588
65590
  });
65589
65591
  }, fB = (e) => DL(() => dB(e), OL.AUTH_FAILED);
65590
65592
  //#endregion
65591
- export { yL as $, wR as A, M as At, ZL as B, _R as C, am as Ct, SR as D, P as Dt, bR as E, mm as Et, uR as F, ML as G, qL as H, lR as I, AL as J, $ as K, cR as L, vR as M, pR as N, TR as O, N as Ot, dR as P, bL as Q, oR as R, gR as S, Cm as St, ER as T, hm as Tt, GL as U, JL as V, HL as W, DL as X, kL as Y, xL as Z, az as _, WN as _t, eB as a, BF as at, ZR as b, uk as bt, Az as c, nP as ct, bz as d, aP as dt, zI as et, yz as f, iP as ft, oz as g, YN as gt, sz as h, qN as ht, nB as i, qF as it, xR as j, Ge as jt, yR as k, Ke as kt, kz as l, eP as lt, uz as m, XN as mt, uB as n, XF as nt, Jz as o, HF as ot, lz as p, oP as pt, OL as q, rB as r, JF as rt, qz as s, rP as st, fB as t, vI as tt, Sz as u, QN as ut, tz as v, _N as vt, hR as w, fm as wt, mR as x, km as xt, $R as y, IA as yt, iR as z };
65593
+ export { yL as $, wR as A, M as At, ZL as B, _R as C, am as Ct, SR as D, P as Dt, bR as E, mm as Et, uR as F, ML as G, qL as H, lR as I, AL as J, $ as K, cR as L, vR as M, pR as N, TR as O, N as Ot, dR as P, bL as Q, oR as R, gR as S, Cm as St, ER as T, hm as Tt, GL as U, JL as V, HL as W, DL as X, kL as Y, xL as Z, az as _, GN as _t, eB as a, BF as at, ZR as b, uk as bt, Az as c, rP as ct, bz as d, oP as dt, zI as et, yz as f, aP as ft, oz as g, XN as gt, sz as h, JN as ht, nB as i, qF as it, xR as j, Ge as jt, yR as k, Ke as kt, kz as l, tP as lt, uz as m, ZN as mt, uB as n, XF as nt, Jz as o, HF as ot, lz as p, sP as pt, OL as q, rB as r, JF as rt, qz as s, iP as st, fB as t, vI as tt, Sz as u, $N as ut, tz as v, IA as vt, hR as w, fm as wt, mR as x, km as xt, $R as y, vN as yt, iR as z };