@michelangelo-ai/core 0.11.0 → 0.12.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.
- package/dist/components/cell/renderers/state/state-cell-to-string.d.ts.map +1 -1
- package/dist/components/views/detail-view/components/revision-selector/revision-selector.d.ts +8 -0
- package/dist/components/views/detail-view/components/revision-selector/revision-selector.d.ts.map +1 -0
- package/dist/components/views/detail-view/components/revision-selector/styled-components.d.ts +8 -0
- package/dist/components/views/detail-view/components/revision-selector/styled-components.d.ts.map +1 -0
- package/dist/components/views/detail-view/components/revision-selector/types.d.ts +27 -0
- package/dist/components/views/detail-view/components/revision-selector/types.d.ts.map +1 -0
- package/dist/components/views/execution/components/task-details/task-header.d.ts.map +1 -1
- package/dist/components/views/types.d.ts +7 -3
- package/dist/components/views/types.d.ts.map +1 -1
- package/dist/config/entities/deployment/detail.d.ts.map +1 -1
- package/dist/config/entities/deployment/shared.d.ts +2 -0
- package/dist/config/entities/deployment/shared.d.ts.map +1 -1
- package/dist/config/entities/pipeline/__tests__/pipeline-list.test.d.ts +2 -0
- package/dist/config/entities/pipeline/__tests__/pipeline-list.test.d.ts.map +1 -0
- package/dist/config/entities/pipeline/__tests__/revision-list.test.d.ts +2 -0
- package/dist/config/entities/pipeline/__tests__/revision-list.test.d.ts.map +1 -0
- package/dist/config/entities/pipeline/create-pipeline-run-form.d.ts +2 -2
- package/dist/config/entities/pipeline/create-pipeline-run-form.d.ts.map +1 -1
- package/dist/config/entities/pipeline/detail.d.ts.map +1 -1
- package/dist/config/entities/pipeline/list.d.ts.map +1 -1
- package/dist/config/entities/pipeline/pipeline.d.ts.map +1 -1
- package/dist/config/entities/pipeline/revision-list.d.ts +0 -2
- package/dist/config/entities/pipeline/revision-list.d.ts.map +1 -1
- package/dist/config/entities/pipeline/run-trigger-fields.d.ts.map +1 -1
- package/dist/config/entities/pipeline/run-trigger-form.d.ts +2 -2
- package/dist/config/entities/pipeline/run-trigger-form.d.ts.map +1 -1
- package/dist/config/entities/pipeline/shared.d.ts +26 -0
- package/dist/config/entities/pipeline/shared.d.ts.map +1 -1
- package/dist/config/entities/pipeline/types.d.ts +11 -0
- package/dist/config/entities/pipeline/types.d.ts.map +1 -1
- package/dist/config/entities/pipeline/use-target-revision.d.ts +11 -0
- package/dist/config/entities/pipeline/use-target-revision.d.ts.map +1 -0
- package/dist/config/entities/run/types.d.ts +4 -0
- package/dist/config/entities/run/types.d.ts.map +1 -1
- package/dist/config/entities/trigger/__tests__/trigger-detail-metadata.test.d.ts +2 -0
- package/dist/config/entities/trigger/__tests__/trigger-detail-metadata.test.d.ts.map +1 -0
- package/dist/config/entities/trigger/__tests__/trigger-info-page.test.d.ts +2 -0
- package/dist/config/entities/trigger/__tests__/trigger-info-page.test.d.ts.map +1 -0
- package/dist/config/entities/trigger/detail.d.ts.map +1 -1
- package/dist/config/entities/trigger/list.d.ts.map +1 -1
- package/dist/config/entities/trigger/shared.d.ts.map +1 -1
- package/dist/config/entities/trigger/trigger-info-page.d.ts +12 -0
- package/dist/config/entities/trigger/trigger-info-page.d.ts.map +1 -0
- package/dist/config/entities/trigger/trigger.d.ts.map +1 -1
- package/dist/config/entities/trigger/types.d.ts +30 -0
- package/dist/config/entities/trigger/types.d.ts.map +1 -1
- package/dist/michelangelo-core.cjs +17 -17
- package/dist/michelangelo-core.js +6291 -5810
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.js +2 -2
- package/dist/router/entity-detail-route.d.ts +2 -0
- package/dist/router/entity-detail-route.d.ts.map +1 -1
- package/dist/router/use-entity-record.d.ts +24 -0
- package/dist/router/use-entity-record.d.ts.map +1 -0
- package/dist/{theme-provider-B4ovzOEb.js → theme-provider-BNH_ncy6.js} +1 -1
- package/dist/{theme-provider-jFjyiivT.cjs → theme-provider-COiyZuiN.cjs} +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/common/studio-types.d.ts +12 -0
- package/dist/types/common/studio-types.d.ts.map +1 -1
- package/dist/utils/__tests__/revision-utils.test.d.ts +2 -0
- package/dist/utils/__tests__/revision-utils.test.d.ts.map +1 -0
- package/dist/utils/name-utils.d.ts +11 -0
- package/dist/utils/name-utils.d.ts.map +1 -1
- package/dist/utils/revision-utils.d.ts +21 -0
- package/dist/utils/revision-utils.d.ts.map +1 -0
- package/package.json +1 -1
package/dist/primitives.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./theme-provider-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./theme-provider-COiyZuiN.cjs"),i=require("react"),n=require("baseui/tag"),d=({children:o,renderers:r={}})=>{const t=i.useMemo(()=>({renderers:r}),[r]);return e.jsxRuntimeExports.jsx(e.CellContext.Provider,{value:t,children:o})};exports.Banner=e.Banner;exports.Box=e.Box;exports.BreadcrumbBar=e.BreadcrumbBar;exports.DateTime=e.DateTime;exports.DescriptionText=e.DescriptionText;exports.ErrorProvider=e.ErrorProvider;exports.HelpTooltip=e.HelpTooltip;exports.Icon=e.Icon;exports.IconKind=e.IconKind;exports.IconProvider=e.IconProvider;exports.Link=e.Link;exports.Markdown=e.Markdown;exports.Row=e.Row;exports.ServiceProvider=e.ServiceProvider;exports.StyledBoxContainer=e.StyledBoxContainer;exports.StyledBoxHeader=e.StyledBoxHeader;exports.StyledBoxTitle=e.StyledBoxTitle;exports.StyledExternalLinkIcon=e.StyledExternalLinkIcon;exports.StyledLink=e.StyledLink;exports.TAG_BEHAVIOR=e.TAG_BEHAVIOR;exports.TAG_COLOR=e.TAG_COLOR;exports.TAG_SIZE=e.TAG_SIZE;exports.Tag=e.Tag;exports.ThemeProvider=e.ThemeProvider;exports.TruncatedText=e.TruncatedText;exports.UserProvider=e.UserProvider;exports.useCellProvider=e.useCellProvider;Object.defineProperty(exports,"TAG_HIERARCHY",{enumerable:!0,get:()=>n.HIERARCHY});exports.CellProvider=d;
|
package/dist/primitives.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { j as o, an as s } from "./theme-provider-
|
|
2
|
-
import { F as T, B as c, X as m, V as p, D as v, a0 as B, H as I, I as R, t as u, a1 as A, L as C, M as E, R as H, $ as P, E as S, ap as y, A as L, aq as _, ar as f, y as k, b as G, a as j, T as D, _ as M, i as O, a2 as V, ao as b } from "./theme-provider-
|
|
1
|
+
import { j as o, an as s } from "./theme-provider-BNH_ncy6.js";
|
|
2
|
+
import { F as T, B as c, X as m, V as p, D as v, a0 as B, H as I, I as R, t as u, a1 as A, L as C, M as E, R as H, $ as P, E as S, ap as y, A as L, aq as _, ar as f, y as k, b as G, a as j, T as D, _ as M, i as O, a2 as V, ao as b } from "./theme-provider-BNH_ncy6.js";
|
|
3
3
|
import { useMemo as t } from "react";
|
|
4
4
|
import { HIERARCHY as Y } from "baseui/tag";
|
|
5
5
|
const d = ({
|
|
@@ -5,6 +5,8 @@ import type { PhaseConfig } from '../types/common/studio-types';
|
|
|
5
5
|
* Maps URL parameters to specific entity detail pages and handles:
|
|
6
6
|
* - Entity not found scenarios
|
|
7
7
|
* - Navigation back to entity list
|
|
8
|
+
* - Revisioned entities, which render a Revision snapshot through the same detail config (see
|
|
9
|
+
* {@link useEntityRecord})
|
|
8
10
|
*
|
|
9
11
|
* @param phases - Phase configuration override for testing. Defaults to {@link PHASES}.
|
|
10
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-detail-route.d.ts","sourceRoot":"","sources":["../../router/entity-detail-route.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entity-detail-route.d.ts","sourceRoot":"","sources":["../../router/entity-detail-route.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAEnE;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,MAAe,EAAE,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CAAE,2CAgH9F"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loads the record an entity detail page renders.
|
|
3
|
+
*
|
|
4
|
+
* A plain entity is fetched and rendered as-is. A `revisioned` entity always renders the
|
|
5
|
+
* Revision itself instead — not just its wrapped `spec.content` — so configs can read the
|
|
6
|
+
* Revision's own identity (e.g. `metadata.name`) the same way list rows for that entity already
|
|
7
|
+
* do: the Revision `?revisionId=` names, or else the one the entity's `status.latestRevision`
|
|
8
|
+
* points at. The live entity is always loaded for a revisioned entity, even when the URL names
|
|
9
|
+
* the Revision, so the page can tell which Revision is the latest.
|
|
10
|
+
*/
|
|
11
|
+
export declare function useEntityRecord({ service, revisioned, projectId, entityId, revisionId, }: {
|
|
12
|
+
service: string;
|
|
13
|
+
revisioned: boolean;
|
|
14
|
+
projectId: string;
|
|
15
|
+
entityId: string;
|
|
16
|
+
revisionId?: string;
|
|
17
|
+
}): {
|
|
18
|
+
record: Record<string, unknown> | undefined;
|
|
19
|
+
/** Name of the Revision the entity's `status.latestRevision` points at, if revisioned. */
|
|
20
|
+
latestRevisionName: string | undefined;
|
|
21
|
+
loading: boolean;
|
|
22
|
+
errorMessage: string | undefined;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=use-entity-record.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-entity-record.d.ts","sourceRoot":"","sources":["../../router/use-entity-record.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAQ,EACR,UAAU,GACX,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC5C,0FAA0F;IAC1F,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,CA4CA"}
|
|
@@ -17116,7 +17116,7 @@ const Nv = ({ value: r, column: t }) => r ? /* @__PURE__ */ V.jsx(
|
|
|
17116
17116
|
value: t
|
|
17117
17117
|
}) => {
|
|
17118
17118
|
var n;
|
|
17119
|
-
return t ? (n = r.stateTextMap) != null && n[t] ? r.stateTextMap[t] : t.endsWith("_INVALID") ? "Queued" : Kl(t, /(\w+_)STATE_/) : "";
|
|
17119
|
+
return t ? (n = r.stateTextMap) != null && n[t] ? r.stateTextMap[t] : typeof t != "string" ? String(t) : t.endsWith("_INVALID") ? "Queued" : Kl(t, /(\w+_)STATE_/) : "";
|
|
17120
17120
|
}, Dv = (r) => {
|
|
17121
17121
|
var o;
|
|
17122
17122
|
const { value: t = "", record: n, column: s } = r, a = ((o = s.stateColorMap) == null ? void 0 : o[t]) ?? RO(t);
|
|
@@ -300,4 +300,4 @@ ${H}`:H);const K=I.after.join(`
|
|
|
300
300
|
`);K&&(U.comment=U.comment?`${U.comment}
|
|
301
301
|
${K}`:K)}return y.resolved=U}function L(O,y){if(y.type!==r.Type.MAP&&y.type!==r.Type.FLOW_MAP){const H=`A ${y.type} node cannot be resolved as a mapping`;return O.errors.push(new r.YAMLSyntaxError(y,H)),null}const{comments:I,items:x}=y.type===r.Type.FLOW_MAP?re(O,y):ue(O,y),C=new R;C.items=x,$t(C,I);let U=!1;for(let H=0;H<x.length;++H){const{key:K}=x[H];if(K instanceof c&&(U=!0),O.schema.merge&&K&&K.value===N){x[H]=new k(x[H]);const J=x[H].value.items;let ie=null;J.some(ce=>{if(ce instanceof b){const{type:me}=ce.source;return me===r.Type.MAP||me===r.Type.FLOW_MAP?!1:ie="Merge nodes aliases can only point to maps"}return ie="Merge nodes can only have Alias nodes as values"}),ie&&O.errors.push(new r.YAMLSemanticError(y,ie))}else for(let J=H+1;J<x.length;++J){const{key:ie}=x[J];if(K===ie||K&&ie&&Object.prototype.hasOwnProperty.call(K,"value")&&K.value===ie.value){const ce=`Map keys must be unique; "${K}" is repeated`;O.errors.push(new r.YAMLSemanticError(y,ce));break}}}if(U&&!O.options.mapAsMap){const H="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";O.warnings.push(new r.YAMLWarning(y,H))}return y.resolved=C,C}const $=({context:{lineStart:O,node:y,src:I},props:x})=>{if(x.length===0)return!1;const{start:C}=x[0];if(y&&C>y.valueRange.start||I[C]!==r.Char.COMMENT)return!1;for(let U=O;U<C;++U)if(I[U]===`
|
|
302
302
|
`)return!1;return!0};function Y(O,y){if(!$(O))return;const I=O.getPropValue(0,r.Char.COMMENT,!0);let x=!1;const C=y.value.commentBefore;if(C&&C.startsWith(I))y.value.commentBefore=C.substr(I.length+1),x=!0;else{const U=y.value.comment;!O.node&&U&&U.startsWith(I)&&(y.value.comment=U.substr(I.length+1),x=!0)}x&&(y.comment=I)}function ue(O,y){const I=[],x=[];let C,U=null;for(let H=0;H<y.items.length;++H){const K=y.items[H];switch(K.type){case r.Type.BLANK_LINE:I.push({afterKey:!!C,before:x.length});break;case r.Type.COMMENT:I.push({afterKey:!!C,before:x.length,comment:K.comment});break;case r.Type.MAP_KEY:C!==void 0&&x.push(new E(C)),K.error&&O.errors.push(K.error),C=Rt(O,K.node),U=null;break;case r.Type.MAP_VALUE:{if(C===void 0&&(C=null),K.error&&O.errors.push(K.error),!K.context.atLineStart&&K.node&&K.node.type===r.Type.MAP&&!K.node.context.atLineStart){const ce="Nested mappings are not allowed in compact mappings";O.errors.push(new r.YAMLSemanticError(K.node,ce))}let J=K.node;if(!J&&K.props.length>0){J=new r.PlainValue(r.Type.PLAIN,[]),J.context={parent:K,src:K.context.src};const ce=K.range.start+1;if(J.range={start:ce,end:ce},J.valueRange={start:ce,end:ce},typeof K.range.origStart=="number"){const me=K.range.origStart+1;J.range.origStart=J.range.origEnd=me,J.valueRange.origStart=J.valueRange.origEnd=me}}const ie=new E(C,Rt(O,J));Y(K,ie),x.push(ie),C&&typeof U=="number"&&K.range.start>U+1024&&O.errors.push(Ut(y,C)),C=void 0,U=null}break;default:C!==void 0&&x.push(new E(C)),C=Rt(O,K),U=K.range.start,K.error&&O.errors.push(K.error);e:for(let J=H+1;;++J){const ie=y.items[J];switch(ie&&ie.type){case r.Type.BLANK_LINE:case r.Type.COMMENT:continue e;case r.Type.MAP_VALUE:break e;default:{const ce="Implicit map keys need to be followed by map values";O.errors.push(new r.YAMLSemanticError(K,ce));break e}}}if(K.valueRangeContainsNewline){const J="Implicit map keys need to be on a single line";O.errors.push(new r.YAMLSemanticError(K,J))}}}return C!==void 0&&x.push(new E(C)),{comments:I,items:x}}function re(O,y){const I=[],x=[];let C,U=!1,H="{";for(let K=0;K<y.items.length;++K){const J=y.items[K];if(typeof J.char=="string"){const{char:ie,offset:ce}=J;if(ie==="?"&&C===void 0&&!U){U=!0,H=":";continue}if(ie===":"){if(C===void 0&&(C=null),H===":"){H=",";continue}}else if(U&&(C===void 0&&ie!==","&&(C=null),U=!1),C!==void 0&&(x.push(new E(C)),C=void 0,ie===",")){H=":";continue}if(ie==="}"){if(K===y.items.length-1)continue}else if(ie===H){H=":";continue}const me=`Flow map contains an unexpected ${ie}`,Ye=new r.YAMLSyntaxError(y,me);Ye.offset=ce,O.errors.push(Ye)}else J.type===r.Type.BLANK_LINE?I.push({afterKey:!!C,before:x.length}):J.type===r.Type.COMMENT?(Sr(O.errors,J),I.push({afterKey:!!C,before:x.length,comment:J.comment})):C===void 0?(H===","&&O.errors.push(new r.YAMLSemanticError(J,"Separator , missing in flow map")),C=Rt(O,J)):(H!==","&&O.errors.push(new r.YAMLSemanticError(J,"Indicator : missing in flow map entry")),x.push(new E(C,Rt(O,J))),C=void 0,U=!1)}return dr(O.errors,y),C!==void 0&&x.push(new E(C)),{comments:I,items:x}}function ne(O,y){if(y.type!==r.Type.SEQ&&y.type!==r.Type.FLOW_SEQ){const U=`A ${y.type} node cannot be resolved as a sequence`;return O.errors.push(new r.YAMLSyntaxError(y,U)),null}const{comments:I,items:x}=y.type===r.Type.FLOW_SEQ?Se(O,y):_e(O,y),C=new g;if(C.items=x,$t(C,I),!O.options.mapAsMap&&x.some(U=>U instanceof E&&U.key instanceof c)){const U="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";O.warnings.push(new r.YAMLWarning(y,U))}return y.resolved=C,C}function _e(O,y){const I=[],x=[];for(let C=0;C<y.items.length;++C){const U=y.items[C];switch(U.type){case r.Type.BLANK_LINE:I.push({before:x.length});break;case r.Type.COMMENT:I.push({comment:U.comment,before:x.length});break;case r.Type.SEQ_ITEM:if(U.error&&O.errors.push(U.error),x.push(Rt(O,U.node)),U.hasProps){const H="Sequence items cannot have tags or anchors before the - indicator";O.errors.push(new r.YAMLSemanticError(U,H))}break;default:U.error&&O.errors.push(U.error),O.errors.push(new r.YAMLSyntaxError(U,`Unexpected ${U.type} node in sequence`))}}return{comments:I,items:x}}function Se(O,y){const I=[],x=[];let C=!1,U,H=null,K="[",J=null;for(let ie=0;ie<y.items.length;++ie){const ce=y.items[ie];if(typeof ce.char=="string"){const{char:me,offset:Ye}=ce;if(me!==":"&&(C||U!==void 0)&&(C&&U===void 0&&(U=K?x.pop():null),x.push(new E(U)),C=!1,U=void 0,H=null),me===K)K=null;else if(!K&&me==="?")C=!0;else if(K!=="["&&me===":"&&U===void 0){if(K===","){if(U=x.pop(),U instanceof E){const Oe="Chaining flow sequence pairs is invalid",ze=new r.YAMLSemanticError(y,Oe);ze.offset=Ye,O.errors.push(ze)}if(!C&&typeof H=="number"){const Oe=ce.range?ce.range.start:ce.offset;Oe>H+1024&&O.errors.push(Ut(y,U));const{src:ze}=J.context;for(let Me=H;Me<Oe;++Me)if(ze[Me]===`
|
|
303
|
-
`){const Be="Implicit keys of flow sequence pairs need to be on a single line";O.errors.push(new r.YAMLSemanticError(J,Be));break}}}else U=null;H=null,C=!1,K=null}else if(K==="["||me!=="]"||ie<y.items.length-1){const Oe=`Flow sequence contains an unexpected ${me}`,ze=new r.YAMLSyntaxError(y,Oe);ze.offset=Ye,O.errors.push(ze)}}else if(ce.type===r.Type.BLANK_LINE)I.push({before:x.length});else if(ce.type===r.Type.COMMENT)Sr(O.errors,ce),I.push({comment:ce.comment,before:x.length});else{if(K){const Ye=`Expected a ${K} in flow sequence`;O.errors.push(new r.YAMLSemanticError(ce,Ye))}const me=Rt(O,ce);U===void 0?(x.push(me),J=ce):(x.push(new E(U,me)),U=void 0),H=ce.range.start,K=","}}return dr(O.errors,y),U!==void 0&&x.push(new E(U)),{comments:I,items:x}}return ct.Alias=b,ct.Collection=c,ct.Merge=k,ct.Node=s,ct.Pair=E,ct.Scalar=o,ct.YAMLMap=R,ct.YAMLSeq=g,ct.addComment=n,ct.binaryOptions=Z,ct.boolOptions=P,ct.findPair=m,ct.intOptions=w,ct.isEmptyPath=f,ct.nullOptions=M,ct.resolveMap=L,ct.resolveNode=Rt,ct.resolveSeq=ne,ct.resolveString=Qt,ct.strOptions=B,ct.stringifyNumber=_r,ct.stringifyString=vt,ct.toJSON=a,ct}var Z0;function jO(){if(Z0)return lr;Z0=1;var r=ZO(),t=Hv();return lr.findPair=r.findPair,lr.parseMap=r.resolveMap,lr.parseSeq=r.resolveSeq,lr.stringifyNumber=r.stringifyNumber,lr.stringifyString=r.stringifyString,lr.toJSON=r.toJSON,lr.Type=t.Type,lr.YAMLError=t.YAMLError,lr.YAMLReferenceError=t.YAMLReferenceError,lr.YAMLSemanticError=t.YAMLSemanticError,lr.YAMLSyntaxError=t.YAMLSyntaxError,lr.YAMLWarning=t.YAMLWarning,lr}var HO=jO();const Tr=lf(HO);Tr.findPair;Tr.toJSON;Tr.parseMap;Tr.parseSeq;Tr.stringifyNumber;Tr.stringifyString;Tr.Type;const KO=Tr.YAMLError;Tr.YAMLReferenceError;Tr.YAMLSemanticError;Tr.YAMLSyntaxError;Tr.YAMLWarning;function YO(r,t){if(!t.scaffold&&!t.scaffoldBySubType)return r;if(t.scaffoldBySubType){const n=Qn(r,t.subTypePath)??"";return Zt.merge({},j0(t.scaffoldBySubType[n]),r)}return Zt.merge({},j0(t.scaffold),r)}function j0(r){try{return WO.parse(r)}catch(t){throw t instanceof KO?new Error("Request requires scaffolding, but found invalid YAML scaffold"):t}}function GO(r,t,n,s){const a=YO(Zt.cloneDeep(r),t);if(!t.operations)return a;const o=(s==null?void 0:s.sourceFromObject)??a;for(const u of t.operations){const f=Qn(a,t.subTypePath)??"";if(u.subTypes&&!u.subTypes.includes(f))continue;if(u.transformation==="unset"){Zt.unset(a,u.destination);continue}const c=u.source!==void 0?Zt.get(o,u.source):void 0;if(!Zt.isNil(c)&&typeof u.transformation=="function")Zt.set(a,u.destination,u.transformation(c));else if(Zt.isNil(c)&&"default"in u){const d=typeof u.default=="function"?u.default({studio:n}):u.default;Zt.set(a,u.destination,d)}}return a}function zO(r){const t=Ur("base");function n(s,a){return r?GO(s,r,t,a):s}return{applyMiddleware:n}}var Kn=(r=>(r[r.OK=0]="OK",r[r.CANCELLED=1]="CANCELLED",r[r.UNKNOWN=2]="UNKNOWN",r[r.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",r[r.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",r[r.NOT_FOUND=5]="NOT_FOUND",r[r.ALREADY_EXISTS=6]="ALREADY_EXISTS",r[r.PERMISSION_DENIED=7]="PERMISSION_DENIED",r[r.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",r[r.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",r[r.ABORTED=10]="ABORTED",r[r.OUT_OF_RANGE=11]="OUT_OF_RANGE",r[r.UNIMPLEMENTED=12]="UNIMPLEMENTED",r[r.INTERNAL=13]="INTERNAL",r[r.UNAVAILABLE=14]="UNAVAILABLE",r[r.DATA_LOSS=15]="DATA_LOSS",r[r.UNAUTHENTICATED=16]="UNAUTHENTICATED",r))(Kn||{});class wn extends Error{constructor(n,s,a){var o;super(n);rn(this,"name","ApplicationError");rn(this,"code");rn(this,"meta");rn(this,"cause");rn(this,"source");this.code=s,this.meta=a==null?void 0:a.meta,this.cause=a==null?void 0:a.cause,this.source=a==null?void 0:a.source,Object.setPrototypeOf(this,wn.prototype),(o=Error.captureStackTrace)==null||o.call(Error,this,this.constructor)}}function VO(r){return r==null?new wn("Unknown error occurred",Kn.UNKNOWN,{source:"unknown"}):r instanceof Error?new wn(r.message,Kn.UNKNOWN,{cause:r,source:"javascript"}):typeof r=="string"?new wn(r,Kn.UNKNOWN,{source:"string"}):xu(r)&&r.message?new wn(gg(r.message),Kn.UNKNOWN,{cause:r,source:"unknown"}):new wn("Unknown error occurred",Kn.UNKNOWN,{meta:{originalError:r},source:"unknown"})}function Ff(){const r=Ke.useContext(Ag);if(!r)throw new Error("useErrorNormalizer must be used within an ErrorProvider");return t=>t?r.normalizeError(t)??VO(t):null}const Kv=()=>Ke.useContext(bg),Yv=()=>{const{name:r,email:t}=gf(),n={};return t!==void 0&&(n["x-user-email"]=t),r!==void 0&&(n["x-user-name"]=r),n},Gv=r=>{var f;const{request:t}=Kv(),n=Ff(),s=uv(r==null?void 0:r.successOperations,r==null?void 0:r.mutationName),{applyMiddleware:a}=zO(r==null?void 0:r.middleware),o=Yv(),u=Au.useMutation({mutationKey:r?[r.mutationName]:void 0,mutationFn:async c=>{if(!r)throw new Error("useStudioMutation called without config");try{return await t(r.mutationName,c,o)}catch(d){throw console.error("mutation error",d),n(d)}},onSuccess:c=>{var d,g;s(c),(g=(d=r==null?void 0:r.clientOptions)==null?void 0:d.onSuccess)==null||g.call(d,c)},onError:(f=r==null?void 0:r.clientOptions)!=null&&f.onError?c=>r.clientOptions.onError(c):void 0});return{isPending:u.isPending,error:u.error,data:u.data,mutate:(c,d)=>u.mutate(a(c,{sourceFromObject:d==null?void 0:d.sourceFromObject})),mutateAsync:(c,d)=>u.mutateAsync(a(c,{sourceFromObject:d==null?void 0:d.sourceFromObject}))}},zv=r=>{const{queryName:t,clientOptions:n}=r,{projectId:s}=Ur("base"),{request:a}=Kv(),o=Ff(),u=Lu(),f=Yv(),c=u(r.serviceOptions),d=(c==null?void 0:c.namespace)??s;return Au.useQuery({queryKey:[t,{...c,namespace:d}],queryFn:async()=>{try{return await a(t,{...c,namespace:d},f)}catch(g){throw console.error("error",g),o(g)}},...n})},QO=new Set([3,4,5,6]),JO=r=>{var N,k;const{value:t}=r,[n,s]=we.useStyletron(),[a,o]=Ke.useState(!1),[u,f]=Ke.useState("Manual retry from UI"),c=Au.useQueryClient(),{projectId:d,entityId:g}=Ur("detail"),{data:p}=zv({queryName:"GetPipelineRun",serviceOptions:{namespace:d,name:g},clientOptions:{enabled:!!d&&!!g}}),E=Gv({mutationName:"UpdatePipelineRun"}),_=!!t,b=(k=(N=p==null?void 0:p.pipelineRun)==null?void 0:N.status)==null?void 0:k.state,m=b!==void 0&&QO.has(b);if(!_||!m)return null;const R=async()=>{if(E.isPending||!(p!=null&&p.pipelineRun))return;const{pipelineRun:Z}=p,{workflowId:P,workflowRunId:w}=Z.status;if(!t||!P||!w)return;const M={metadata:Z.metadata,spec:{...Z.spec,retryInfo:{activityId:t,workflowId:P,workflowRunId:w,reason:u}}};try{await E.mutateAsync(M),o(!1),f("Manual retry from UI"),await c.invalidateQueries({queryKey:["GetPipelineRun",{namespace:d,name:g}]})}catch{}};return V.jsxs(V.Fragment,{children:[V.jsx($r.Button,{size:$r.SIZE.mini,kind:$r.KIND.secondary,onClick:()=>o(!0),disabled:E.isPending,children:"Retry"}),V.jsxs(nv,{isOpen:a,onDismiss:()=>o(!1),heading:"Retry Task",buttonDock:{primaryAction:V.jsx($r.Button,{kind:$r.KIND.primary,onClick:R,isLoading:E.isPending,children:"Retry Task"}),dismissiveAction:V.jsx($r.Button,{kind:$r.KIND.tertiary,onClick:()=>o(!1),disabled:E.isPending,children:"Cancel"})},children:[E.error&&V.jsx("div",{className:n({color:s.colors.negative,marginBottom:s.sizing.scale600,...s.typography.ParagraphSmall}),children:E.error.message}),V.jsx("div",{className:n({marginBottom:s.sizing.scale600}),children:"Are you sure you want to retry this task?"}),V.jsx("div",{className:n({marginBottom:s.sizing.scale400}),children:V.jsx("label",{className:n({...s.typography.LabelMedium}),children:"Retry Reason:"})}),V.jsx(rE.Textarea,{value:u,onChange:Z=>f(Z.target.value),placeholder:"e.g. Fixed the input schema mismatch",overrides:{Input:{style:{resize:"vertical",minHeight:"80px"}}}})]})]})},Ln={xSmall:"xSmall",...Mn.SIZE},On={display:"display",selection:"selection"},qe={gray:"gray",red:"red",orange:"orange",yellow:"yellow",green:"green",blue:"blue",purple:"purple",magenta:"magenta",teal:"teal",lime:"lime"},XO={[Mn.HIERARCHY.primary]:{[On.display]:{[qe.purple]:r=>({color:r.colors.white,backgroundColor:r.colors.purple600}),[qe.magenta]:r=>({color:r.colors.white,backgroundColor:r.colors.magenta600})},[On.selection]:{[qe.gray]:r=>({borderColor:r.colors.gray700}),[qe.red]:r=>({borderColor:r.colors.red700}),[qe.orange]:r=>({borderColor:r.colors.orange700}),[qe.yellow]:r=>({borderColor:r.colors.yellow700}),[qe.green]:r=>({borderColor:r.colors.green700}),[qe.blue]:r=>({borderColor:r.colors.blue700}),[qe.purple]:r=>({color:r.colors.white,backgroundColor:r.colors.purple600,borderColor:r.colors.purple700}),[qe.magenta]:r=>({color:r.colors.white,backgroundColor:r.colors.magenta600,borderColor:r.colors.magenta700}),[qe.teal]:r=>({borderColor:r.colors.teal700}),[qe.lime]:r=>({borderColor:r.colors.lime700})}},[Mn.HIERARCHY.secondary]:{[On.display]:{[qe.magenta]:r=>({color:r.colors.magenta700,backgroundColor:r.colors.magenta50}),[qe.purple]:r=>({color:r.colors.purple700,backgroundColor:r.colors.purple50})},[On.selection]:{[qe.gray]:r=>({borderColor:r.colors.gray100}),[qe.red]:r=>({borderColor:r.colors.red100}),[qe.orange]:r=>({borderColor:r.colors.orange100}),[qe.yellow]:r=>({borderColor:r.colors.yellow100}),[qe.green]:r=>({borderColor:r.colors.green100}),[qe.blue]:r=>({borderColor:r.colors.blue100}),[qe.purple]:r=>({color:r.colors.purple700,backgroundColor:r.colors.purple50,borderColor:r.colors.purple100}),[qe.magenta]:r=>({color:r.colors.magenta700,backgroundColor:r.colors.magenta50,borderColor:r.colors.magenta100}),[qe.teal]:r=>({borderColor:r.colors.teal100}),[qe.lime]:r=>({borderColor:r.colors.lime100})}}},e2=(r,{size:t,behavior:n,color:s,hierarchy:a})=>{var u,f,c;const o=(c=(f=(u=XO[a])==null?void 0:u[n])==null?void 0:f[s])==null?void 0:c.call(f,r);return{Root:{style:{...t===Ln.xSmall?{...r.typography.LabelXSmall,height:"20px",paddingLeft:r.sizing.scale100,paddingRight:r.sizing.scale100}:{},...o!=null&&o.borderColor?{border:`1px solid ${o.borderColor}`}:{},...o!=null&&o.color?{color:o.color}:{},...o!=null&&o.backgroundColor?{backgroundColor:o.backgroundColor}:{},margin:0,verticalAlign:"bottom",justifyContent:"center"}},StartEnhancerContainer:{style:{...t===Ln.xSmall?{paddingRight:r.sizing.scale100}:{}}},Text:{style:{display:"flex",alignItems:"center"}}}},Is=Ke.forwardRef(({children:r,overrides:t,size:n=Ln.small,color:s=qe.gray,behavior:a=On.display,hierarchy:o=Mn.HIERARCHY.secondary,...u},f)=>{const[c,d]=we.useStyletron(),g=n===Ln.xSmall?Ln.small:n,p=s===qe.gray||s===qe.purple||s===qe.magenta?Mn.KIND.black:s;return V.jsx(Mn.Tag,{...u,ref:f,kind:p,size:g,hierarchy:o,overrides:we.mergeOverrides(t,e2(d,{size:n,color:s,behavior:a,hierarchy:o})),children:r})});Is.displayName="Tag";const Uf=({value:r,column:t})=>r?V.jsx(Is,{size:Ln.xSmall,hierarchy:Mn.HIERARCHY.secondary,behavior:On.selection,closeable:!1,color:t.color??qe.gray,overrides:{Root:{style:{width:"120px",justifyContent:"center"}}},children:r}):null,t2=r=>r?r.endsWith("_ERROR")?qe.red:r.endsWith("_SUCCESS")?qe.green:r.endsWith("_RUNNING")?qe.blue:(r.endsWith("_INVALID"),qe.gray):qe.gray,Vv=({column:r,value:t})=>{var n;return t?(n=r.stateTextMap)!=null&&n[t]?r.stateTextMap[t]:t.endsWith("_INVALID")?"Queued":yu(t,/(\w+_)STATE_/):""},qf=r=>{var o;const{value:t="",record:n,column:s}=r,a=((o=s.stateColorMap)==null?void 0:o[t])??t2(t);return V.jsx(Uf,{column:{id:"state",color:a},value:Vv({value:t,column:s}),record:n})};qf.toString=Vv;const r2=["FORMAT","KIND","TYPE"],Qv=({value:r,column:t})=>{var s;if(!r)return"";const n=(s=t.typeTextMap)==null?void 0:s[r];if(n)return n;for(const a of r2)if(typeof r=="string"&&r.includes(`_${a}_`))return yu(r,new RegExp(`(\\w+_)${a}_`));return yu(r)},Wf=({value:r,column:t})=>{const n=Qv({value:r,column:t});return n?V.jsx(Is,{size:Ln.xSmall,behavior:On.selection,hierarchy:Mn.HIERARCHY.secondary,color:qe.gray,closeable:!1,children:n}):null};Wf.toString=Qv;var Su=(r=>(r.TAG="TAG",r.BOOLEAN="BOOLEAN",r.DATE="DATE",r.DESCRIPTION="DESCRIPTION",r.LINK="LINK",r.MAP="MAP",r.MULTI="MULTI",r.REPEATED_ITEMS="REPEATED_ITEMS",r.STATE="STATE",r.SWITCH_TYPE_META="SWITCH_TYPE_META",r.TEXT="TEXT",r.TIER="TIER",r.TYPE="TYPE",r.RETRY="RETRY",r))(Su||{});const H0={BOOLEAN:wu,DATE:yf,DESCRIPTION:Og,LINK:Lg,MULTI:tf,REPEATED_ITEMS:tf,RETRY:JO,STATE:qf,TAG:Uf,TYPE:Wf,TEXT:Sf};function n2(r){const[t,n]=we.useStyletron();return V.jsxs("div",{className:t({alignItems:"center",...n.typography.LabelSmall,color:n.colors.contentTertiary,display:"flex",gap:n.sizing.scale200,marginBottom:n.sizing.scale300}),children:[r.label,r.description?V.jsx(Rf,{text:r.description}):null]})}const i2=r=>{const[t,n]=we.useStyletron(),{record:s,CellComponent:a=Mu}=r,u=Lu()(r.item,{row:s}),f=Qn(s,u.accessor??u.id);return V.jsxs("div",{children:[V.jsx(n2,{label:u.label,description:u.description}),V.jsx("div",{className:t(n.typography.ParagraphSmall),children:V.jsx(a,{value:f,column:u,record:s})})]})},s2=we.styled("div",({$theme:r})=>({display:"flex",gap:r.sizing.scale950,flexWrap:"wrap",width:"100%"})),a2=we.styled("div",({$index:r})=>({animation:`0.3s ease ${r*.06}s 1 both`,animationName:{from:{opacity:"0"},to:{opacity:"1"}}}));function o2(r){const{items:t,loading:n=!1,record:s={},overrides:a={}}=r,[o,u]=we.getOverrides(a.RowContainer,s2),[f,c]=we.getOverrides(a.RowItemContainer,a2),[d,g]=we.getOverrides(a.RowItem,i2);return V.jsx(o,{...u,children:t.filter(p=>{if(n)return!0;const E=Qn(s,p.accessor??p.id);return p.hideEmpty?E!=null:!0}).map((p,E)=>V.jsxs(Ke.Fragment,{children:[n&&V.jsx(eE.Skeleton,{animation:!0,height:"48px",width:"120px",overrides:{Root:{props:{"data-testid":"loading"}}}}),!n&&V.jsx(f,{$index:E,...c,children:V.jsx(d,{item:p,record:s,...g})})]},E))})}const u2=r=>{const{overrides:t={},children:n,...s}=r,a=we.mergeOverrides({Root:{style:{marginTop:0,marginRight:0,marginBottom:0,marginLeft:0}}},t);return V.jsx(sE.Banner,{...s,overrides:a,children:n})},ws=we.styled(Tn.Link,({$theme:r})=>({textDecoration:"none",color:r.colors.contentTertiary,":visited":{color:r.colors.contentTertiary},":hover":{textDecoration:"underline"}})),l2=we.styled(Tn.Link,({$theme:r})=>({...r.typography.LabelMedium,display:"flex",alignItems:"center",justifyContent:"space-between",height:r.sizing.scale1200,paddingLeft:r.sizing.scale600,paddingRight:r.sizing.scale700,textDecoration:"none",color:r.colors.contentPrimary,":hover":{backgroundColor:r.colors.menuFillHover}})),f2=we.styled("div",({$theme:r,$scrolled:t})=>({position:"sticky",top:"0",zIndex:1,backgroundColor:r.colors.backgroundPrimary,boxShadow:t?r.lighting.shadow400:`inset 0px -1px 0px ${r.colors.borderOpaque}`,transitionProperty:"box-shadow",transitionDuration:r.animation.timing100,transitionTimingFunction:r.animation.easeOutCurve,paddingTop:r.sizing.scale650,paddingBottom:r.sizing.scale650})),c2=we.styled("li",r=>({...r.$theme.typography.LabelMedium,color:r.$disabled?r.$theme.colors.contentTertiary:r.$theme.colors.contentPrimary,paddingTop:r.$theme.sizing.scale500,paddingBottom:r.$theme.sizing.scale300,paddingLeft:r.$theme.sizing.scale800,paddingRight:r.$theme.sizing.scale800,display:"flex",alignItems:"center",whiteSpace:"nowrap",gap:r.$theme.sizing.scale600})),d2=we.styled("li",({$theme:r,$disabled:t})=>({cursor:t?"not-allowed":"pointer",paddingTop:r.sizing.scale200,paddingBottom:r.sizing.scale200,paddingLeft:r.sizing.scale1600,paddingRight:r.sizing.scale800,":hover":{backgroundColor:t?void 0:r.colors.menuFillHover},transitionProperty:"background-color",transitionDuration:r.animation.timing200,transitionTimingFunction:r.animation.easeOutCurve}));function h2({phase:r,projectId:t,onSelect:n}){const[s,a]=we.useStyletron(),o=Tn.useNavigate(),{pathname:u}=Tn.useLocation(),f=u.split("/").filter(Boolean),c=f[1],d=f[2];return V.jsx("ul",{className:s({listStyleType:"none",padding:0,margin:0}),children:r.entities.map(g=>{const p=r.state!=="active"||g.state!=="active",E=!p&&c===r.id&&d===g.id;return V.jsx(d2,{$disabled:p,onClick:()=>{p||(n(),o(`/${t}/${r.id}/${g.id}`))},children:V.jsx("span",{className:s({...a.typography.ParagraphSmall,fontWeight:E?"bold":void 0,color:p?a.colors.contentTertiary:void 0}),children:pf(g.name,"nav")})},g.id)})})}function p2({phases:r,projectId:t,topLevelLinks:n}){const[s,a]=we.useStyletron(),[o,u]=Ke.useState(!1);return V.jsxs(V.Fragment,{children:[V.jsx($r.Button,{onClick:()=>u(!0),kind:$r.KIND.secondary,size:$r.SIZE.mini,shape:$r.SHAPE.pill,startEnhancer:()=>V.jsx(kr,{name:"menu",title:""}),overrides:{BaseButton:{style:{paddingLeft:a.sizing.scale500,paddingRight:a.sizing.scale500}}},children:"Menu"}),V.jsx(fh.Drawer,{isOpen:o,autoFocus:!0,onClose:()=>u(!1),anchor:fh.ANCHOR.left,overrides:{DrawerContainer:{style:{width:"375px"}},DrawerBody:{style:{display:"flex",flexDirection:"column",justifyContent:"flex-start",marginLeft:0,marginRight:0,marginBottom:0,marginTop:"44px"}}},children:V.jsxs("nav",{"aria-label":"Phase navigation",className:s({display:"flex",flexDirection:"column",gap:a.sizing.scale400}),children:[n&&n.length>0&&V.jsxs("div",{children:[V.jsx("ul",{className:s({listStyle:"none",margin:0,padding:0}),children:n.map(f=>V.jsx("li",{children:V.jsxs(l2,{to:f.path,onClick:()=>u(!1),children:[f.label,V.jsx(kr,{name:"chevronRight",size:a.sizing.scale600,title:""})]})},f.path))}),V.jsx("hr",{className:s({borderTop:`1px solid ${a.colors.borderOpaque}`,borderBottom:0,margin:0})})]}),V.jsx("span",{className:s({...a.typography.HeadingXSmall,paddingLeft:a.sizing.scale800,paddingRight:a.sizing.scale800}),children:t}),r.map(f=>V.jsxs("div",{children:[V.jsxs(c2,{$disabled:f.state==="disabled",children:[f.icon&&V.jsx(kr,{name:f.icon,size:"16px",title:""}),f.name,f.state==="comingSoon"&&V.jsx(Is,{color:qe.blue,size:"xSmall",closeable:!1,children:"Coming soon"})]}),V.jsx(h2,{phase:f,projectId:t,onSelect:()=>u(!1)})]},f.id))]})})]})}function g2(){const[r,t]=Ke.useState(!1),n=Ke.useCallback(()=>{const s=window.scrollY>0;s!==r&&t(s)},[r]);return Ke.useEffect(()=>(window.addEventListener("scroll",n),()=>window.removeEventListener("scroll",n)),[n]),{isScrolled:r}}function v2({categories:r,topLevelLinks:t}){const[n,s]=we.useStyletron(),{projectId:a,phase:o,entityId:u}=Ur("base"),f=o===bs.Project,c=r.flatMap(g=>g.phases),{isScrolled:d}=g2();return V.jsx(f2,{$scrolled:d,children:V.jsx(lh.Grid,{gridColumns:1,gridGutters:0,gridGaps:0,children:V.jsx(lh.Cell,{children:V.jsxs("div",{className:n({display:"flex",alignItems:"center",gap:s.sizing.scale600}),children:[V.jsx(p2,{phases:c,projectId:a,topLevelLinks:t}),V.jsxs(aE.Breadcrumbs,{overrides:{Root:{style:{color:s.colors.contentPrimary},props:{"data-tracking-name":"breadcrumb-bar"}}},children:[V.jsx(ws,{to:"/","data-tracking-name":"home",children:"Home"}),V.jsx(m2,{}),!f&&V.jsx(y2,{categories:r}),!f&&V.jsx(_2,{categories:r}),!f&&V.jsx(S2,{categories:r}),!f&&u&&V.jsx(A2,{})]})]})})})})}function m2(){const{projectId:r,phase:t}=Ur("base");return t===bs.Project?V.jsx("span",{children:r}):V.jsx(ws,{to:`/${r}`,"data-tracking-name":"project",children:r})}function y2({categories:r}){const{projectId:t,phase:n}=Ur("base"),s=r.find(a=>a.phases.some(o=>o.id===n));return s?V.jsx(ws,{to:`/${t}`,"data-tracking-name":"category",children:s.name}):null}function _2({categories:r}){const{projectId:t,phase:n}=Ur("base"),s=r.flatMap(o=>o.phases).find(o=>o.id===n),a=(s==null?void 0:s.name)??n;return V.jsx(ws,{to:`/${t}/${n}`,"data-tracking-name":"phase",children:a})}function S2({categories:r}){var c;const{projectId:t,phase:n,entity:s,entityId:a}=Ur("base"),o=r.flatMap(d=>d.phases).find(d=>d.id===n),u=(c=o==null?void 0:o.entities.find(d=>d.id===s))==null?void 0:c.name,f=u?pf(u,"nav"):s;return a?V.jsx(ws,{to:`/${t}/${n}/${s}`,"data-tracking-name":"entity",children:f}):V.jsx("span",{children:f})}function A2(){const{entityId:r}=Ur("form-detail");return V.jsx("span",{children:r})}const b2={grid:{margins:[16,36,36],maxWidth:1848}};function E2({children:r,icons:t,theme:n}){const{host:s}=Ke.useContext(uE.LayersContext),a=s!==void 0,o=t?Object.fromEntries(Object.entries(t).map(([f,c])=>[Eu(f),c])):{},u=n??we.createTheme({...b2,icons:o});return a?V.jsx(lE.ThemeProvider,{theme:u,children:r}):V.jsx(we.BaseProvider,{theme:u,children:r})}exports.ApplicationError=wn;exports.Banner=u2;exports.BooleanCell=wu;exports.Box=JI;exports.BreadcrumbBar=v2;exports.CellContainer=ev;exports.CellContext=Mg;exports.CellEnhancer=Vg;exports.CellTooltipWrapper=Qg;exports.CellType=Su;exports.DateCell=yf;exports.DateTime=Rg;exports.DefaultCellRenderer=Mu;exports.DescriptionCell=Og;exports.DescriptionHierarchy=_f;exports.DescriptionText=vf;exports.Dialog=nv;exports.ErrorProvider=YI;exports.GrpcStatusCode=Kn;exports.HelpTooltip=Rf;exports.Icon=kr;exports.IconKind=$i;exports.IconProvider=GI;exports.Interpolation=Of;exports.InterpolationContext=sv;exports.Link=Iu;exports.LinkCell=Lg;exports.Markdown=wf;exports.MultiCell=tf;exports.Phase=bs;exports.RepeatedLayoutContext=av;exports.Row=o2;exports.ServiceProvider=VI;exports.StateCell=qf;exports.StringInterpolation=rf;exports.StyledBoxContainer=Eg;exports.StyledBoxHeader=Ig;exports.StyledBoxTitle=wg;exports.StyledExternalLinkIcon=yg;exports.StyledLink=_g;exports.TAG_BEHAVIOR=On;exports.TAG_COLOR=qe;exports.TAG_SIZE=Ln;exports.Tag=Is;exports.TagCell=Uf;exports.TextCell=Sf;exports.ThemeProvider=E2;exports.TimeZone=gs;exports.TruncatedText=Ru;exports.TypeCell=Wf;exports.UserProvider=QI;exports.capitalizeFirstLetter=Eu;exports.cellTooltipHoc=Jg;exports.formatElapsedSeconds=nw;exports.formatEntityName=pf;exports.getDateFromEpochSeconds=tw;exports.getEpochSecondsFromDate=rw;exports.getObjectSymbols=rv;exports.getObjectValue=Qn;exports.isAbsoluteUrl=hf;exports.isNavigableUrl=HI;exports.isRecord=xu;exports.jsxRuntimeExports=V;exports.lodashExports=Zt;exports.parseIsoString=iw;exports.safeStringify=gg;exports.sentenceCaseEnumValue=yu;exports.timestampToString=mf;exports.toFlatDotPathMap=tv;exports.useCellProvider=xg;exports.useCellStyles=Xg;exports.useCellToString=bf;exports.useErrorNormalizer=Ff;exports.useGetCellRenderer=Af;exports.useInterpolationResolver=Lu;exports.useRepeatedLayoutContext=ov;exports.useStudioMutation=Gv;exports.useStudioParams=Ur;exports.useStudioQuery=zv;exports.useSuccessOperations=uv;exports.useUrlQueryString=iv;exports.useUserProvider=gf;
|
|
303
|
+
`){const Be="Implicit keys of flow sequence pairs need to be on a single line";O.errors.push(new r.YAMLSemanticError(J,Be));break}}}else U=null;H=null,C=!1,K=null}else if(K==="["||me!=="]"||ie<y.items.length-1){const Oe=`Flow sequence contains an unexpected ${me}`,ze=new r.YAMLSyntaxError(y,Oe);ze.offset=Ye,O.errors.push(ze)}}else if(ce.type===r.Type.BLANK_LINE)I.push({before:x.length});else if(ce.type===r.Type.COMMENT)Sr(O.errors,ce),I.push({comment:ce.comment,before:x.length});else{if(K){const Ye=`Expected a ${K} in flow sequence`;O.errors.push(new r.YAMLSemanticError(ce,Ye))}const me=Rt(O,ce);U===void 0?(x.push(me),J=ce):(x.push(new E(U,me)),U=void 0),H=ce.range.start,K=","}}return dr(O.errors,y),U!==void 0&&x.push(new E(U)),{comments:I,items:x}}return ct.Alias=b,ct.Collection=c,ct.Merge=k,ct.Node=s,ct.Pair=E,ct.Scalar=o,ct.YAMLMap=R,ct.YAMLSeq=g,ct.addComment=n,ct.binaryOptions=Z,ct.boolOptions=P,ct.findPair=m,ct.intOptions=w,ct.isEmptyPath=f,ct.nullOptions=M,ct.resolveMap=L,ct.resolveNode=Rt,ct.resolveSeq=ne,ct.resolveString=Qt,ct.strOptions=B,ct.stringifyNumber=_r,ct.stringifyString=vt,ct.toJSON=a,ct}var Z0;function jO(){if(Z0)return lr;Z0=1;var r=ZO(),t=Hv();return lr.findPair=r.findPair,lr.parseMap=r.resolveMap,lr.parseSeq=r.resolveSeq,lr.stringifyNumber=r.stringifyNumber,lr.stringifyString=r.stringifyString,lr.toJSON=r.toJSON,lr.Type=t.Type,lr.YAMLError=t.YAMLError,lr.YAMLReferenceError=t.YAMLReferenceError,lr.YAMLSemanticError=t.YAMLSemanticError,lr.YAMLSyntaxError=t.YAMLSyntaxError,lr.YAMLWarning=t.YAMLWarning,lr}var HO=jO();const Tr=lf(HO);Tr.findPair;Tr.toJSON;Tr.parseMap;Tr.parseSeq;Tr.stringifyNumber;Tr.stringifyString;Tr.Type;const KO=Tr.YAMLError;Tr.YAMLReferenceError;Tr.YAMLSemanticError;Tr.YAMLSyntaxError;Tr.YAMLWarning;function YO(r,t){if(!t.scaffold&&!t.scaffoldBySubType)return r;if(t.scaffoldBySubType){const n=Qn(r,t.subTypePath)??"";return Zt.merge({},j0(t.scaffoldBySubType[n]),r)}return Zt.merge({},j0(t.scaffold),r)}function j0(r){try{return WO.parse(r)}catch(t){throw t instanceof KO?new Error("Request requires scaffolding, but found invalid YAML scaffold"):t}}function GO(r,t,n,s){const a=YO(Zt.cloneDeep(r),t);if(!t.operations)return a;const o=(s==null?void 0:s.sourceFromObject)??a;for(const u of t.operations){const f=Qn(a,t.subTypePath)??"";if(u.subTypes&&!u.subTypes.includes(f))continue;if(u.transformation==="unset"){Zt.unset(a,u.destination);continue}const c=u.source!==void 0?Zt.get(o,u.source):void 0;if(!Zt.isNil(c)&&typeof u.transformation=="function")Zt.set(a,u.destination,u.transformation(c));else if(Zt.isNil(c)&&"default"in u){const d=typeof u.default=="function"?u.default({studio:n}):u.default;Zt.set(a,u.destination,d)}}return a}function zO(r){const t=Ur("base");function n(s,a){return r?GO(s,r,t,a):s}return{applyMiddleware:n}}var Kn=(r=>(r[r.OK=0]="OK",r[r.CANCELLED=1]="CANCELLED",r[r.UNKNOWN=2]="UNKNOWN",r[r.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",r[r.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",r[r.NOT_FOUND=5]="NOT_FOUND",r[r.ALREADY_EXISTS=6]="ALREADY_EXISTS",r[r.PERMISSION_DENIED=7]="PERMISSION_DENIED",r[r.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",r[r.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",r[r.ABORTED=10]="ABORTED",r[r.OUT_OF_RANGE=11]="OUT_OF_RANGE",r[r.UNIMPLEMENTED=12]="UNIMPLEMENTED",r[r.INTERNAL=13]="INTERNAL",r[r.UNAVAILABLE=14]="UNAVAILABLE",r[r.DATA_LOSS=15]="DATA_LOSS",r[r.UNAUTHENTICATED=16]="UNAUTHENTICATED",r))(Kn||{});class wn extends Error{constructor(n,s,a){var o;super(n);rn(this,"name","ApplicationError");rn(this,"code");rn(this,"meta");rn(this,"cause");rn(this,"source");this.code=s,this.meta=a==null?void 0:a.meta,this.cause=a==null?void 0:a.cause,this.source=a==null?void 0:a.source,Object.setPrototypeOf(this,wn.prototype),(o=Error.captureStackTrace)==null||o.call(Error,this,this.constructor)}}function VO(r){return r==null?new wn("Unknown error occurred",Kn.UNKNOWN,{source:"unknown"}):r instanceof Error?new wn(r.message,Kn.UNKNOWN,{cause:r,source:"javascript"}):typeof r=="string"?new wn(r,Kn.UNKNOWN,{source:"string"}):xu(r)&&r.message?new wn(gg(r.message),Kn.UNKNOWN,{cause:r,source:"unknown"}):new wn("Unknown error occurred",Kn.UNKNOWN,{meta:{originalError:r},source:"unknown"})}function Ff(){const r=Ke.useContext(Ag);if(!r)throw new Error("useErrorNormalizer must be used within an ErrorProvider");return t=>t?r.normalizeError(t)??VO(t):null}const Kv=()=>Ke.useContext(bg),Yv=()=>{const{name:r,email:t}=gf(),n={};return t!==void 0&&(n["x-user-email"]=t),r!==void 0&&(n["x-user-name"]=r),n},Gv=r=>{var f;const{request:t}=Kv(),n=Ff(),s=uv(r==null?void 0:r.successOperations,r==null?void 0:r.mutationName),{applyMiddleware:a}=zO(r==null?void 0:r.middleware),o=Yv(),u=Au.useMutation({mutationKey:r?[r.mutationName]:void 0,mutationFn:async c=>{if(!r)throw new Error("useStudioMutation called without config");try{return await t(r.mutationName,c,o)}catch(d){throw console.error("mutation error",d),n(d)}},onSuccess:c=>{var d,g;s(c),(g=(d=r==null?void 0:r.clientOptions)==null?void 0:d.onSuccess)==null||g.call(d,c)},onError:(f=r==null?void 0:r.clientOptions)!=null&&f.onError?c=>r.clientOptions.onError(c):void 0});return{isPending:u.isPending,error:u.error,data:u.data,mutate:(c,d)=>u.mutate(a(c,{sourceFromObject:d==null?void 0:d.sourceFromObject})),mutateAsync:(c,d)=>u.mutateAsync(a(c,{sourceFromObject:d==null?void 0:d.sourceFromObject}))}},zv=r=>{const{queryName:t,clientOptions:n}=r,{projectId:s}=Ur("base"),{request:a}=Kv(),o=Ff(),u=Lu(),f=Yv(),c=u(r.serviceOptions),d=(c==null?void 0:c.namespace)??s;return Au.useQuery({queryKey:[t,{...c,namespace:d}],queryFn:async()=>{try{return await a(t,{...c,namespace:d},f)}catch(g){throw console.error("error",g),o(g)}},...n})},QO=new Set([3,4,5,6]),JO=r=>{var N,k;const{value:t}=r,[n,s]=we.useStyletron(),[a,o]=Ke.useState(!1),[u,f]=Ke.useState("Manual retry from UI"),c=Au.useQueryClient(),{projectId:d,entityId:g}=Ur("detail"),{data:p}=zv({queryName:"GetPipelineRun",serviceOptions:{namespace:d,name:g},clientOptions:{enabled:!!d&&!!g}}),E=Gv({mutationName:"UpdatePipelineRun"}),_=!!t,b=(k=(N=p==null?void 0:p.pipelineRun)==null?void 0:N.status)==null?void 0:k.state,m=b!==void 0&&QO.has(b);if(!_||!m)return null;const R=async()=>{if(E.isPending||!(p!=null&&p.pipelineRun))return;const{pipelineRun:Z}=p,{workflowId:P,workflowRunId:w}=Z.status;if(!t||!P||!w)return;const M={metadata:Z.metadata,spec:{...Z.spec,retryInfo:{activityId:t,workflowId:P,workflowRunId:w,reason:u}}};try{await E.mutateAsync(M),o(!1),f("Manual retry from UI"),await c.invalidateQueries({queryKey:["GetPipelineRun",{namespace:d,name:g}]})}catch{}};return V.jsxs(V.Fragment,{children:[V.jsx($r.Button,{size:$r.SIZE.mini,kind:$r.KIND.secondary,onClick:()=>o(!0),disabled:E.isPending,children:"Retry"}),V.jsxs(nv,{isOpen:a,onDismiss:()=>o(!1),heading:"Retry Task",buttonDock:{primaryAction:V.jsx($r.Button,{kind:$r.KIND.primary,onClick:R,isLoading:E.isPending,children:"Retry Task"}),dismissiveAction:V.jsx($r.Button,{kind:$r.KIND.tertiary,onClick:()=>o(!1),disabled:E.isPending,children:"Cancel"})},children:[E.error&&V.jsx("div",{className:n({color:s.colors.negative,marginBottom:s.sizing.scale600,...s.typography.ParagraphSmall}),children:E.error.message}),V.jsx("div",{className:n({marginBottom:s.sizing.scale600}),children:"Are you sure you want to retry this task?"}),V.jsx("div",{className:n({marginBottom:s.sizing.scale400}),children:V.jsx("label",{className:n({...s.typography.LabelMedium}),children:"Retry Reason:"})}),V.jsx(rE.Textarea,{value:u,onChange:Z=>f(Z.target.value),placeholder:"e.g. Fixed the input schema mismatch",overrides:{Input:{style:{resize:"vertical",minHeight:"80px"}}}})]})]})},Ln={xSmall:"xSmall",...Mn.SIZE},On={display:"display",selection:"selection"},qe={gray:"gray",red:"red",orange:"orange",yellow:"yellow",green:"green",blue:"blue",purple:"purple",magenta:"magenta",teal:"teal",lime:"lime"},XO={[Mn.HIERARCHY.primary]:{[On.display]:{[qe.purple]:r=>({color:r.colors.white,backgroundColor:r.colors.purple600}),[qe.magenta]:r=>({color:r.colors.white,backgroundColor:r.colors.magenta600})},[On.selection]:{[qe.gray]:r=>({borderColor:r.colors.gray700}),[qe.red]:r=>({borderColor:r.colors.red700}),[qe.orange]:r=>({borderColor:r.colors.orange700}),[qe.yellow]:r=>({borderColor:r.colors.yellow700}),[qe.green]:r=>({borderColor:r.colors.green700}),[qe.blue]:r=>({borderColor:r.colors.blue700}),[qe.purple]:r=>({color:r.colors.white,backgroundColor:r.colors.purple600,borderColor:r.colors.purple700}),[qe.magenta]:r=>({color:r.colors.white,backgroundColor:r.colors.magenta600,borderColor:r.colors.magenta700}),[qe.teal]:r=>({borderColor:r.colors.teal700}),[qe.lime]:r=>({borderColor:r.colors.lime700})}},[Mn.HIERARCHY.secondary]:{[On.display]:{[qe.magenta]:r=>({color:r.colors.magenta700,backgroundColor:r.colors.magenta50}),[qe.purple]:r=>({color:r.colors.purple700,backgroundColor:r.colors.purple50})},[On.selection]:{[qe.gray]:r=>({borderColor:r.colors.gray100}),[qe.red]:r=>({borderColor:r.colors.red100}),[qe.orange]:r=>({borderColor:r.colors.orange100}),[qe.yellow]:r=>({borderColor:r.colors.yellow100}),[qe.green]:r=>({borderColor:r.colors.green100}),[qe.blue]:r=>({borderColor:r.colors.blue100}),[qe.purple]:r=>({color:r.colors.purple700,backgroundColor:r.colors.purple50,borderColor:r.colors.purple100}),[qe.magenta]:r=>({color:r.colors.magenta700,backgroundColor:r.colors.magenta50,borderColor:r.colors.magenta100}),[qe.teal]:r=>({borderColor:r.colors.teal100}),[qe.lime]:r=>({borderColor:r.colors.lime100})}}},e2=(r,{size:t,behavior:n,color:s,hierarchy:a})=>{var u,f,c;const o=(c=(f=(u=XO[a])==null?void 0:u[n])==null?void 0:f[s])==null?void 0:c.call(f,r);return{Root:{style:{...t===Ln.xSmall?{...r.typography.LabelXSmall,height:"20px",paddingLeft:r.sizing.scale100,paddingRight:r.sizing.scale100}:{},...o!=null&&o.borderColor?{border:`1px solid ${o.borderColor}`}:{},...o!=null&&o.color?{color:o.color}:{},...o!=null&&o.backgroundColor?{backgroundColor:o.backgroundColor}:{},margin:0,verticalAlign:"bottom",justifyContent:"center"}},StartEnhancerContainer:{style:{...t===Ln.xSmall?{paddingRight:r.sizing.scale100}:{}}},Text:{style:{display:"flex",alignItems:"center"}}}},Is=Ke.forwardRef(({children:r,overrides:t,size:n=Ln.small,color:s=qe.gray,behavior:a=On.display,hierarchy:o=Mn.HIERARCHY.secondary,...u},f)=>{const[c,d]=we.useStyletron(),g=n===Ln.xSmall?Ln.small:n,p=s===qe.gray||s===qe.purple||s===qe.magenta?Mn.KIND.black:s;return V.jsx(Mn.Tag,{...u,ref:f,kind:p,size:g,hierarchy:o,overrides:we.mergeOverrides(t,e2(d,{size:n,color:s,behavior:a,hierarchy:o})),children:r})});Is.displayName="Tag";const Uf=({value:r,column:t})=>r?V.jsx(Is,{size:Ln.xSmall,hierarchy:Mn.HIERARCHY.secondary,behavior:On.selection,closeable:!1,color:t.color??qe.gray,overrides:{Root:{style:{width:"120px",justifyContent:"center"}}},children:r}):null,t2=r=>r?r.endsWith("_ERROR")?qe.red:r.endsWith("_SUCCESS")?qe.green:r.endsWith("_RUNNING")?qe.blue:(r.endsWith("_INVALID"),qe.gray):qe.gray,Vv=({column:r,value:t})=>{var n;return t?(n=r.stateTextMap)!=null&&n[t]?r.stateTextMap[t]:typeof t!="string"?String(t):t.endsWith("_INVALID")?"Queued":yu(t,/(\w+_)STATE_/):""},qf=r=>{var o;const{value:t="",record:n,column:s}=r,a=((o=s.stateColorMap)==null?void 0:o[t])??t2(t);return V.jsx(Uf,{column:{id:"state",color:a},value:Vv({value:t,column:s}),record:n})};qf.toString=Vv;const r2=["FORMAT","KIND","TYPE"],Qv=({value:r,column:t})=>{var s;if(!r)return"";const n=(s=t.typeTextMap)==null?void 0:s[r];if(n)return n;for(const a of r2)if(typeof r=="string"&&r.includes(`_${a}_`))return yu(r,new RegExp(`(\\w+_)${a}_`));return yu(r)},Wf=({value:r,column:t})=>{const n=Qv({value:r,column:t});return n?V.jsx(Is,{size:Ln.xSmall,behavior:On.selection,hierarchy:Mn.HIERARCHY.secondary,color:qe.gray,closeable:!1,children:n}):null};Wf.toString=Qv;var Su=(r=>(r.TAG="TAG",r.BOOLEAN="BOOLEAN",r.DATE="DATE",r.DESCRIPTION="DESCRIPTION",r.LINK="LINK",r.MAP="MAP",r.MULTI="MULTI",r.REPEATED_ITEMS="REPEATED_ITEMS",r.STATE="STATE",r.SWITCH_TYPE_META="SWITCH_TYPE_META",r.TEXT="TEXT",r.TIER="TIER",r.TYPE="TYPE",r.RETRY="RETRY",r))(Su||{});const H0={BOOLEAN:wu,DATE:yf,DESCRIPTION:Og,LINK:Lg,MULTI:tf,REPEATED_ITEMS:tf,RETRY:JO,STATE:qf,TAG:Uf,TYPE:Wf,TEXT:Sf};function n2(r){const[t,n]=we.useStyletron();return V.jsxs("div",{className:t({alignItems:"center",...n.typography.LabelSmall,color:n.colors.contentTertiary,display:"flex",gap:n.sizing.scale200,marginBottom:n.sizing.scale300}),children:[r.label,r.description?V.jsx(Rf,{text:r.description}):null]})}const i2=r=>{const[t,n]=we.useStyletron(),{record:s,CellComponent:a=Mu}=r,u=Lu()(r.item,{row:s}),f=Qn(s,u.accessor??u.id);return V.jsxs("div",{children:[V.jsx(n2,{label:u.label,description:u.description}),V.jsx("div",{className:t(n.typography.ParagraphSmall),children:V.jsx(a,{value:f,column:u,record:s})})]})},s2=we.styled("div",({$theme:r})=>({display:"flex",gap:r.sizing.scale950,flexWrap:"wrap",width:"100%"})),a2=we.styled("div",({$index:r})=>({animation:`0.3s ease ${r*.06}s 1 both`,animationName:{from:{opacity:"0"},to:{opacity:"1"}}}));function o2(r){const{items:t,loading:n=!1,record:s={},overrides:a={}}=r,[o,u]=we.getOverrides(a.RowContainer,s2),[f,c]=we.getOverrides(a.RowItemContainer,a2),[d,g]=we.getOverrides(a.RowItem,i2);return V.jsx(o,{...u,children:t.filter(p=>{if(n)return!0;const E=Qn(s,p.accessor??p.id);return p.hideEmpty?E!=null:!0}).map((p,E)=>V.jsxs(Ke.Fragment,{children:[n&&V.jsx(eE.Skeleton,{animation:!0,height:"48px",width:"120px",overrides:{Root:{props:{"data-testid":"loading"}}}}),!n&&V.jsx(f,{$index:E,...c,children:V.jsx(d,{item:p,record:s,...g})})]},E))})}const u2=r=>{const{overrides:t={},children:n,...s}=r,a=we.mergeOverrides({Root:{style:{marginTop:0,marginRight:0,marginBottom:0,marginLeft:0}}},t);return V.jsx(sE.Banner,{...s,overrides:a,children:n})},ws=we.styled(Tn.Link,({$theme:r})=>({textDecoration:"none",color:r.colors.contentTertiary,":visited":{color:r.colors.contentTertiary},":hover":{textDecoration:"underline"}})),l2=we.styled(Tn.Link,({$theme:r})=>({...r.typography.LabelMedium,display:"flex",alignItems:"center",justifyContent:"space-between",height:r.sizing.scale1200,paddingLeft:r.sizing.scale600,paddingRight:r.sizing.scale700,textDecoration:"none",color:r.colors.contentPrimary,":hover":{backgroundColor:r.colors.menuFillHover}})),f2=we.styled("div",({$theme:r,$scrolled:t})=>({position:"sticky",top:"0",zIndex:1,backgroundColor:r.colors.backgroundPrimary,boxShadow:t?r.lighting.shadow400:`inset 0px -1px 0px ${r.colors.borderOpaque}`,transitionProperty:"box-shadow",transitionDuration:r.animation.timing100,transitionTimingFunction:r.animation.easeOutCurve,paddingTop:r.sizing.scale650,paddingBottom:r.sizing.scale650})),c2=we.styled("li",r=>({...r.$theme.typography.LabelMedium,color:r.$disabled?r.$theme.colors.contentTertiary:r.$theme.colors.contentPrimary,paddingTop:r.$theme.sizing.scale500,paddingBottom:r.$theme.sizing.scale300,paddingLeft:r.$theme.sizing.scale800,paddingRight:r.$theme.sizing.scale800,display:"flex",alignItems:"center",whiteSpace:"nowrap",gap:r.$theme.sizing.scale600})),d2=we.styled("li",({$theme:r,$disabled:t})=>({cursor:t?"not-allowed":"pointer",paddingTop:r.sizing.scale200,paddingBottom:r.sizing.scale200,paddingLeft:r.sizing.scale1600,paddingRight:r.sizing.scale800,":hover":{backgroundColor:t?void 0:r.colors.menuFillHover},transitionProperty:"background-color",transitionDuration:r.animation.timing200,transitionTimingFunction:r.animation.easeOutCurve}));function h2({phase:r,projectId:t,onSelect:n}){const[s,a]=we.useStyletron(),o=Tn.useNavigate(),{pathname:u}=Tn.useLocation(),f=u.split("/").filter(Boolean),c=f[1],d=f[2];return V.jsx("ul",{className:s({listStyleType:"none",padding:0,margin:0}),children:r.entities.map(g=>{const p=r.state!=="active"||g.state!=="active",E=!p&&c===r.id&&d===g.id;return V.jsx(d2,{$disabled:p,onClick:()=>{p||(n(),o(`/${t}/${r.id}/${g.id}`))},children:V.jsx("span",{className:s({...a.typography.ParagraphSmall,fontWeight:E?"bold":void 0,color:p?a.colors.contentTertiary:void 0}),children:pf(g.name,"nav")})},g.id)})})}function p2({phases:r,projectId:t,topLevelLinks:n}){const[s,a]=we.useStyletron(),[o,u]=Ke.useState(!1);return V.jsxs(V.Fragment,{children:[V.jsx($r.Button,{onClick:()=>u(!0),kind:$r.KIND.secondary,size:$r.SIZE.mini,shape:$r.SHAPE.pill,startEnhancer:()=>V.jsx(kr,{name:"menu",title:""}),overrides:{BaseButton:{style:{paddingLeft:a.sizing.scale500,paddingRight:a.sizing.scale500}}},children:"Menu"}),V.jsx(fh.Drawer,{isOpen:o,autoFocus:!0,onClose:()=>u(!1),anchor:fh.ANCHOR.left,overrides:{DrawerContainer:{style:{width:"375px"}},DrawerBody:{style:{display:"flex",flexDirection:"column",justifyContent:"flex-start",marginLeft:0,marginRight:0,marginBottom:0,marginTop:"44px"}}},children:V.jsxs("nav",{"aria-label":"Phase navigation",className:s({display:"flex",flexDirection:"column",gap:a.sizing.scale400}),children:[n&&n.length>0&&V.jsxs("div",{children:[V.jsx("ul",{className:s({listStyle:"none",margin:0,padding:0}),children:n.map(f=>V.jsx("li",{children:V.jsxs(l2,{to:f.path,onClick:()=>u(!1),children:[f.label,V.jsx(kr,{name:"chevronRight",size:a.sizing.scale600,title:""})]})},f.path))}),V.jsx("hr",{className:s({borderTop:`1px solid ${a.colors.borderOpaque}`,borderBottom:0,margin:0})})]}),V.jsx("span",{className:s({...a.typography.HeadingXSmall,paddingLeft:a.sizing.scale800,paddingRight:a.sizing.scale800}),children:t}),r.map(f=>V.jsxs("div",{children:[V.jsxs(c2,{$disabled:f.state==="disabled",children:[f.icon&&V.jsx(kr,{name:f.icon,size:"16px",title:""}),f.name,f.state==="comingSoon"&&V.jsx(Is,{color:qe.blue,size:"xSmall",closeable:!1,children:"Coming soon"})]}),V.jsx(h2,{phase:f,projectId:t,onSelect:()=>u(!1)})]},f.id))]})})]})}function g2(){const[r,t]=Ke.useState(!1),n=Ke.useCallback(()=>{const s=window.scrollY>0;s!==r&&t(s)},[r]);return Ke.useEffect(()=>(window.addEventListener("scroll",n),()=>window.removeEventListener("scroll",n)),[n]),{isScrolled:r}}function v2({categories:r,topLevelLinks:t}){const[n,s]=we.useStyletron(),{projectId:a,phase:o,entityId:u}=Ur("base"),f=o===bs.Project,c=r.flatMap(g=>g.phases),{isScrolled:d}=g2();return V.jsx(f2,{$scrolled:d,children:V.jsx(lh.Grid,{gridColumns:1,gridGutters:0,gridGaps:0,children:V.jsx(lh.Cell,{children:V.jsxs("div",{className:n({display:"flex",alignItems:"center",gap:s.sizing.scale600}),children:[V.jsx(p2,{phases:c,projectId:a,topLevelLinks:t}),V.jsxs(aE.Breadcrumbs,{overrides:{Root:{style:{color:s.colors.contentPrimary},props:{"data-tracking-name":"breadcrumb-bar"}}},children:[V.jsx(ws,{to:"/","data-tracking-name":"home",children:"Home"}),V.jsx(m2,{}),!f&&V.jsx(y2,{categories:r}),!f&&V.jsx(_2,{categories:r}),!f&&V.jsx(S2,{categories:r}),!f&&u&&V.jsx(A2,{})]})]})})})})}function m2(){const{projectId:r,phase:t}=Ur("base");return t===bs.Project?V.jsx("span",{children:r}):V.jsx(ws,{to:`/${r}`,"data-tracking-name":"project",children:r})}function y2({categories:r}){const{projectId:t,phase:n}=Ur("base"),s=r.find(a=>a.phases.some(o=>o.id===n));return s?V.jsx(ws,{to:`/${t}`,"data-tracking-name":"category",children:s.name}):null}function _2({categories:r}){const{projectId:t,phase:n}=Ur("base"),s=r.flatMap(o=>o.phases).find(o=>o.id===n),a=(s==null?void 0:s.name)??n;return V.jsx(ws,{to:`/${t}/${n}`,"data-tracking-name":"phase",children:a})}function S2({categories:r}){var c;const{projectId:t,phase:n,entity:s,entityId:a}=Ur("base"),o=r.flatMap(d=>d.phases).find(d=>d.id===n),u=(c=o==null?void 0:o.entities.find(d=>d.id===s))==null?void 0:c.name,f=u?pf(u,"nav"):s;return a?V.jsx(ws,{to:`/${t}/${n}/${s}`,"data-tracking-name":"entity",children:f}):V.jsx("span",{children:f})}function A2(){const{entityId:r}=Ur("form-detail");return V.jsx("span",{children:r})}const b2={grid:{margins:[16,36,36],maxWidth:1848}};function E2({children:r,icons:t,theme:n}){const{host:s}=Ke.useContext(uE.LayersContext),a=s!==void 0,o=t?Object.fromEntries(Object.entries(t).map(([f,c])=>[Eu(f),c])):{},u=n??we.createTheme({...b2,icons:o});return a?V.jsx(lE.ThemeProvider,{theme:u,children:r}):V.jsx(we.BaseProvider,{theme:u,children:r})}exports.ApplicationError=wn;exports.Banner=u2;exports.BooleanCell=wu;exports.Box=JI;exports.BreadcrumbBar=v2;exports.CellContainer=ev;exports.CellContext=Mg;exports.CellEnhancer=Vg;exports.CellTooltipWrapper=Qg;exports.CellType=Su;exports.DateCell=yf;exports.DateTime=Rg;exports.DefaultCellRenderer=Mu;exports.DescriptionCell=Og;exports.DescriptionHierarchy=_f;exports.DescriptionText=vf;exports.Dialog=nv;exports.ErrorProvider=YI;exports.GrpcStatusCode=Kn;exports.HelpTooltip=Rf;exports.Icon=kr;exports.IconKind=$i;exports.IconProvider=GI;exports.Interpolation=Of;exports.InterpolationContext=sv;exports.Link=Iu;exports.LinkCell=Lg;exports.Markdown=wf;exports.MultiCell=tf;exports.Phase=bs;exports.RepeatedLayoutContext=av;exports.Row=o2;exports.ServiceProvider=VI;exports.StateCell=qf;exports.StringInterpolation=rf;exports.StyledBoxContainer=Eg;exports.StyledBoxHeader=Ig;exports.StyledBoxTitle=wg;exports.StyledExternalLinkIcon=yg;exports.StyledLink=_g;exports.TAG_BEHAVIOR=On;exports.TAG_COLOR=qe;exports.TAG_SIZE=Ln;exports.Tag=Is;exports.TagCell=Uf;exports.TextCell=Sf;exports.ThemeProvider=E2;exports.TimeZone=gs;exports.TruncatedText=Ru;exports.TypeCell=Wf;exports.UserProvider=QI;exports.capitalizeFirstLetter=Eu;exports.cellTooltipHoc=Jg;exports.formatElapsedSeconds=nw;exports.formatEntityName=pf;exports.getDateFromEpochSeconds=tw;exports.getEpochSecondsFromDate=rw;exports.getObjectSymbols=rv;exports.getObjectValue=Qn;exports.isAbsoluteUrl=hf;exports.isNavigableUrl=HI;exports.isRecord=xu;exports.jsxRuntimeExports=V;exports.lodashExports=Zt;exports.parseIsoString=iw;exports.safeStringify=gg;exports.sentenceCaseEnumValue=yu;exports.timestampToString=mf;exports.toFlatDotPathMap=tv;exports.useCellProvider=xg;exports.useCellStyles=Xg;exports.useCellToString=bf;exports.useErrorNormalizer=Ff;exports.useGetCellRenderer=Af;exports.useInterpolationResolver=Lu;exports.useRepeatedLayoutContext=ov;exports.useStudioMutation=Gv;exports.useStudioParams=Ur;exports.useStudioQuery=zv;exports.useSuccessOperations=uv;exports.useUrlQueryString=iv;exports.useUserProvider=gf;
|