diff --git a/frontend/public/lotties/three-ellipsis.json b/frontend/public/lotties/three-ellipsis.json new file mode 100644 index 000000000..692b639e2 --- /dev/null +++ b/frontend/public/lotties/three-ellipsis.json @@ -0,0 +1 @@ +{"v":"5.7.5","fr":100,"ip":0,"op":100,"w":300,"h":300,"nm":"Comp 1","ddd":0,"metadata":{},"assets":[{"id":"0","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"ball4","sr":1,"ks":{"p":{"a":0,"k":[-197,-103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"ball4","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[26,0],[0,26],[-26,0],[0,-26],[26,0]],"i":[[0,0],[14.359,0],[0,14.359],[-14.359,0],[0,-14.359]],"o":[[0,14.359],[-14.359,0],[0,-14.359],[14.359,0],[0,0]]}}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":1,"k":[{"t":27,"s":[223,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.534],"y":[0]}},{"t":52,"s":[223,129.5],"i":{"x":[0.424],"y":[1]},"o":{"x":[0.514],"y":[0]}},{"t":77,"s":[223,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.054],"y":[0]}},{"t":102,"s":[223,129.5],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0}]},{"id":"1","layers":[{"ddd":0,"ind":2,"ty":4,"nm":"ball 4","sr":1,"ks":{"p":{"a":0,"k":[-124,-103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"ball 4","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[26,0],[0,26],[-26,0],[0,-26],[26,0]],"i":[[0,0],[14.359,0],[0,14.359],[-14.359,0],[0,-14.359]],"o":[[0,14.359],[-14.359,0],[0,-14.359],[14.359,0],[0,0]]}}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":1,"k":[{"t":18,"s":[150,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.534],"y":[0]}},{"t":43,"s":[150,129.5],"i":{"x":[0.424],"y":[1]},"o":{"x":[0.514],"y":[0]}},{"t":68,"s":[150,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.054],"y":[0]}},{"t":93,"s":[150,129.5],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0}]},{"id":"2","layers":[{"ddd":0,"ind":3,"ty":4,"nm":"ball 3","sr":1,"ks":{"p":{"a":0,"k":[-51,-103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"ball 3","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[26,0],[0,26],[-26,0],[0,-26],[26,0]],"i":[[0,0],[14.359,0],[0,14.359],[-14.359,0],[0,-14.359]],"o":[[0,14.359],[-14.359,0],[0,-14.359],[14.359,0],[0,0]]}}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":1,"k":[{"t":10,"s":[77,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.534],"y":[0]}},{"t":35,"s":[77,129.5],"i":{"x":[0.424],"y":[1]},"o":{"x":[0.514],"y":[0]}},{"t":60,"s":[77,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.054],"y":[0]}},{"t":85,"s":[77,129.5],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0}]},{"id":"3","layers":[{"ddd":0,"ind":4,"ty":4,"nm":"ball3","sr":1,"ks":{"p":{"a":0,"k":[-197,-103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"ball3","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[26,0],[0,26],[-26,0],[0,-26],[26,0]],"i":[[0,0],[14.359,0],[0,14.359],[-14.359,0],[0,-14.359]],"o":[[0,14.359],[-14.359,0],[0,-14.359],[14.359,0],[0,0]]}}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":1,"k":[{"t":-25,"s":[223,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.534],"y":[0]}},{"t":0,"s":[223,129.5],"i":{"x":[0.424],"y":[1]},"o":{"x":[0.514],"y":[0]}},{"t":25,"s":[223,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.054],"y":[0]}},{"t":50,"s":[223,129.5],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0}]},{"id":"4","layers":[{"ddd":0,"ind":5,"ty":4,"nm":"ball 2","sr":1,"ks":{"p":{"a":0,"k":[-124,-103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"ball 2","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[26,0],[0,26],[-26,0],[0,-26],[26,0]],"i":[[0,0],[14.359,0],[0,14.359],[-14.359,0],[0,-14.359]],"o":[[0,14.359],[-14.359,0],[0,-14.359],[14.359,0],[0,0]]}}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":1,"k":[{"t":-33,"s":[150,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.534],"y":[0]}},{"t":-8,"s":[150,129.5],"i":{"x":[0.424],"y":[1]},"o":{"x":[0.514],"y":[0]}},{"t":17,"s":[150,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.054],"y":[0]}},{"t":42,"s":[150,129.5],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0}]},{"id":"5","layers":[{"ddd":0,"ind":6,"ty":4,"nm":"ball 1","sr":1,"ks":{"p":{"a":0,"k":[-51,-103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"ball 1","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[26,0],[0,26],[-26,0],[0,-26],[26,0]],"i":[[0,0],[14.359,0],[0,14.359],[-14.359,0],[0,-14.359]],"o":[[0,14.359],[-14.359,0],[0,-14.359],[14.359,0],[0,0]]}}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":1,"k":[{"t":-42,"s":[77,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.534],"y":[0]}},{"t":-17,"s":[77,129.5],"i":{"x":[0.424],"y":[1]},"o":{"x":[0.514],"y":[0]}},{"t":8,"s":[77,169.5],"i":{"x":[0.465],"y":[1]},"o":{"x":[0.054],"y":[0]}},{"t":33,"s":[77,129.5],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":12345679,"ty":4,"nm":"Group Layer 8","sr":1,"ks":{"p":{"a":0,"k":[219,278.6311475409836,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[30.737704918032787,30.737704918032787,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[220.741,37.184],[225.501,35.896],[228.749,32.36800000000001],[229.981,27.216000000000008],[228.749,22.12],[225.501,18.592],[220.741,17.304],[215.981,18.592],[212.677,22.12],[211.501,27.216000000000008],[212.677,32.36800000000001],[215.981,35.896],[220.741,37.184],[220.741,37.184],[220.741,37.184]],"i":[[0,0],[-1.380999999999972,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.8220000000000027,1.493299999999991],[1.382000000000062,0.8586999999999989],[1.79200000000003,0],[1.418999999999983,-0.8586999999999989],[0.8220000000000027,-1.493300000000005],[0,-1.904000000000011],[-0.7839999999999918,-1.5307000000000102],[-1.380999999999972,-0.8586999999999989],[-1.754000000000019,0],[0,0],[0,0]],"o":[[1.79200000000003,0],[1.382000000000062,-0.8586999999999989],[0.8220000000000027,-1.5307000000000102],[0,-1.904000000000011],[-0.7839999999999918,-1.493300000000005],[-1.380999999999972,-0.8586999999999989],[-1.754000000000019,0],[-1.380999999999972,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.8220000000000027,1.493299999999991],[1.418999999999983,0.8586999999999989],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[221.357,43.06400000000001],[214.917,41.608],[210.49300000000005,37.408],[211.221,36.232],[211.221,42.392],[205.173,42.392],[205.173,0],[211.501,0],[211.501,18.36800000000001],[210.49300000000005,16.912000000000006],[214.973,12.88],[221.357,11.424000000000007],[229.085,13.49600000000001],[234.51700000000005,19.152],[236.533,27.216000000000008],[234.51700000000005,35.28],[229.141,40.992],[221.357,43.06400000000001],[221.357,43.06400000000001],[221.357,43.06400000000001]],"i":[[0,0],[1.942000000000007,0.9706999999999937],[1.045999999999935,1.829300000000003],[-0.2426666666666506,0.3919999999999959],[0,-2.053333333333327],[2.015999999999963,0],[0,14.13066666666667],[-2.109333333333325,0],[0,-6.122666666666674],[0.3360000000000127,0.4853333333333296],[-1.865999999999985,0.9707000000000079],[-2.38900000000001,0],[-2.277000000000044,-1.3813000000000102],[-1.30600000000004,-2.389300000000006],[0,-2.986699999999999],[1.343999999999937,-2.389300000000006],[2.27800000000002,-1.4187000000000012],[2.912000000000035,0],[0,0],[0,0]],"o":[[-2.351999999999975,0],[-1.903999999999996,-0.9707000000000079],[0.2426666666666506,-0.3919999999999959],[0,2.053333333333327],[-2.015999999999963,0],[0,-14.13066666666667],[2.109333333333325,0],[0,6.122666666666667],[-0.3360000000000127,-0.4853333333333296],[1.120000000000005,-1.717300000000009],[1.867000000000075,-0.9706999999999937],[2.875,0],[2.314999999999941,1.381299999999996],[1.343999999999937,2.389300000000006],[0,2.986699999999999],[-1.30600000000004,2.389300000000006],[-2.27699999999993,1.381299999999996],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[181.87,43.06400000000001],[176.438,42],[172.854,38.976],[171.566,34.384],[172.63,29.960000000000008],[176.046,26.656000000000006],[181.814,24.752],[192.342,23.016000000000005],[192.342,28],[183.046,29.624],[179.35,31.248],[178.174,34.16],[179.462,37.016000000000005],[182.878,38.08],[187.35799999999995,36.96000000000001],[190.38199999999995,33.992],[191.446,29.792],[191.446,22.008],[189.766,18.36800000000001],[185.398,16.912000000000006],[180.974,18.256],[178.23,21.616],[172.966,18.98400000000001],[175.71,15.064000000000007],[180.134,12.376],[185.566,11.424000000000007],[191.894,12.768],[196.206,16.52],[197.774,22.008],[197.774,42.392],[191.726,42.392],[191.726,36.904],[193.014,37.072],[190.27,40.264],[186.518,42.336],[181.87,43.06400000000001],[181.87,43.06400000000001],[181.87,43.06400000000001]],"i":[[0,0],[1.567999999999984,0.7092999999999989],[0.8589999999999236,1.2693000000000012],[0,1.7547],[-0.7089999999999463,1.306699999999992],[-1.530000000000086,0.8960000000000008],[-2.313999999999965,0.3733000000000004],[-3.509333333333302,0.5786666666666633],[0,-1.661333333333332],[3.098666666666645,-0.541333333333327],[0.7839999999999918,-0.784000000000006],[0,-1.194699999999997],[-0.8579999999999472,-0.7467000000000041],[-1.381000000000085,0],[-1.268999999999892,0.7466999999999899],[-0.7089999999999463,1.2319999999999993],[0,1.530699999999996],[0,2.594666666666669],[1.120000000000005,0.9332999999999885],[1.829999999999927,0],[1.269999999999982,-0.8960000000000008],[0.5979999999999563,-1.381299999999996],[1.754666666666708,0.8773333333333255],[-1.269000000000005,1.11999999999999],[-1.680000000000064,0.6346999999999952],[-1.903999999999996,0],[-1.828999999999951,-0.8960000000000008],[-1.008000000000038,-1.6053],[0,-2.090699999999998],[0,-6.794666666666672],[2.015999999999963,0],[0,1.829333333333338],[-0.4293333333333749,-0.05599999999999739],[1.120000000000005,-0.8959999999999866],[1.418999999999983,-0.4852999999999952],[1.717999999999961,0],[0,0],[0,0]],"o":[[-2.052999999999997,0],[-1.529999999999973,-0.7467000000000041],[-0.8580000000000609,-1.306699999999992],[0,-1.642700000000005],[0.7469999999999573,-1.306700000000006],[1.530999999999949,-0.8960000000000008],[3.509333333333302,-0.5786666666666633],[0,1.661333333333332],[-3.098666666666645,0.541333333333327],[-1.680000000000064,0.2987000000000108],[-0.7839999999999918,0.7467000000000041],[0,1.157300000000006],[0.8959999999999582,0.7092999999999989],[1.717999999999961,0],[1.307000000000016,-0.7467000000000041],[0.7100000000000364,-1.2693000000000012],[0,-2.594666666666669],[0,-1.493299999999991],[-1.081999999999994,-0.9707000000000079],[-1.680000000000064,0],[-1.232000000000085,0.8586999999999989],[-1.754666666666708,-0.8773333333333255],[0.5599999999999454,-1.493300000000005],[1.269999999999982,-1.157300000000006],[1.717999999999961,-0.6347000000000094],[2.389999999999986,0],[1.866999999999962,0.8960000000000008],[1.045999999999935,1.568000000000012],[0,6.794666666666672],[-2.015999999999963,0],[0,-1.829333333333338],[0.4293333333333749,0.05599999999999739],[-0.70900000000006,1.2319999999999993],[-1.081999999999994,0.8960000000000008],[-1.380999999999972,0.4853000000000094],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[159.072,42.392],[159.072,0],[165.4,0],[165.4,42.392],[159.072,42.392],[159.072,42.392],[159.072,42.392]],"i":[[0,0],[0,14.13066666666667],[-2.109333333333325,0],[0,-14.13066666666667],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-14.13066666666667],[2.109333333333325,0],[0,14.13066666666667],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[138.952,43.06400000000001],[130.888,40.992],[125.456,35.28],[123.496,27.16],[125.456,19.040000000000006],[130.832,13.49600000000001],[138.448,11.424000000000007],[144.552,12.600000000000009],[149.088,15.848],[151.888,20.49600000000001],[152.896,26.096],[152.84,27.608],[152.616,29.064000000000007],[128.48,29.064000000000007],[128.48,24.024],[149.032,24.024],[146.008,26.320000000000007],[145.616,21.448000000000008],[142.816,18.032],[138.448,16.744],[133.968,18.032],[130.944,21.616],[130.104,27.216000000000008],[130.944,32.592],[134.192,36.176],[139.008,37.464],[143.65599999999995,36.232],[146.736,33.040000000000006],[151.888,35.56],[149.088,39.42400000000001],[144.60799999999995,42.11200000000001],[138.952,43.06400000000001],[138.952,43.06400000000001],[138.952,43.06400000000001]],"i":[[0,0],[2.351999999999975,1.381299999999996],[1.307000000000016,2.389300000000006],[0,2.986699999999999],[-1.307000000000016,2.35199999999999],[-2.240000000000009,1.343999999999994],[-2.836999999999989,0],[-1.79200000000003,-0.784000000000006],[-1.231999999999971,-1.381299999999996],[-0.6349999999999909,-1.754700000000014],[0,-1.978700000000003],[0.03699999999992087,-0.5227000000000004],[0.1119999999999663,-0.4480000000000075],[8.04533333333336,0],[0,1.680000000000007],[-6.850666666666712,0],[1.008000000000038,-0.7653333333333308],[0.6349999999999909,1.4187000000000012],[1.269000000000005,0.8213000000000079],[1.680000000000064,0],[1.307000000000016,-0.8586999999999989],[0.70900000000006,-1.567999999999998],[-0.1490000000000009,-2.202700000000007],[-0.7469999999999573,-1.530699999999996],[-1.380999999999972,-0.8586999999999989],[-1.79200000000003,0],[-1.268999999999892,0.8213000000000079],[-0.7469999999999573,1.306699999999992],[-1.717333333333386,-0.8400000000000034],[1.269000000000005,-1.157300000000006],[1.755000000000109,-0.6720000000000113],[2.052999999999997,0],[0,0],[0,0]],"o":[[-3.024000000000001,0],[-2.315000000000055,-1.4187000000000012],[-1.307000000000016,-2.426699999999997],[0,-3.061299999999989],[1.343999999999937,-2.352000000000004],[2.240000000000009,-1.3813000000000102],[2.277000000000044,0],[1.79200000000003,0.7839999999999918],[1.232000000000085,1.344000000000008],[0.6720000000000255,1.7547],[0,0.4852999999999952],[-0.03700000000003456,0.5227000000000004],[-8.04533333333336,0],[0,-1.680000000000007],[6.850666666666712,0],[-1.008000000000038,0.7653333333333308],[0.3729999999999336,-1.829300000000003],[-0.59699999999998,-1.456000000000003],[-1.232000000000085,-0.8586999999999989],[-1.67999999999995,0],[-1.306999999999903,0.8213000000000079],[-0.7089999999999463,1.530699999999996],[-0.1870000000000118,2.053299999999993],[0.7839999999999918,1.53070000000001],[1.418999999999983,0.8586999999999989],[1.828999999999951,0],[1.307000000000016,-0.8212999999999937],[1.717333333333386,0.8400000000000034],[-0.59699999999998,1.4187000000000012],[-1.231999999999971,1.11999999999999],[-1.716999999999985,0.6346999999999952],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[111.001,7.951999999999998],[111.001,0.6720000000000041],[117.329,0.6720000000000041],[117.329,7.951999999999998],[111.001,7.951999999999998],[111.001,7.951999999999998],[111.001,7.951999999999998]],"i":[[0,0],[0,2.426666666666662],[-2.109333333333325,0],[0,-2.426666666666662],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-2.426666666666662],[2.109333333333325,0],[0,2.426666666666662],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[111.001,42.392],[111.001,12.096],[117.329,12.096],[117.329,42.392],[111.001,42.392],[111.001,42.392],[111.001,42.392]],"i":[[0,0],[0,10.09866666666667],[-2.109333333333325,0],[0,-10.09866666666667],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-10.09866666666666],[2.109333333333325,0],[0,10.09866666666666],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[101.41,42.72800000000001],[94.01800000000003,40.040000000000006],[91.38599999999997,32.48],[91.38599999999997,17.808000000000007],[86.06600000000003,17.808000000000007],[86.06600000000003,12.096],[86.90599999999995,12.096],[90.21000000000004,10.864],[91.38599999999997,7.504000000000005],[91.38599999999997,5.152000000000001],[97.71400000000006,5.152000000000001],[97.71400000000006,12.096],[104.602,12.096],[104.602,17.808000000000007],[97.71400000000006,17.808000000000007],[97.71400000000006,32.2],[98.21799999999996,34.888000000000005],[99.84199999999998,36.568],[102.754,37.128],[103.76200000000006,37.072],[104.826,36.96000000000001],[104.826,42.392],[103.09,42.616],[101.41,42.72800000000001],[101.41,42.72800000000001],[101.41,42.72800000000001]],"i":[[0,0],[1.754999999999995,1.792000000000002],[0,3.248000000000005],[0,4.890666666666661],[1.773333333333312,0],[0,1.903999999999996],[-0.2799999999999727,0],[-0.7839999999999918,0.8212999999999937],[0,1.4187000000000012],[0,0.7839999999999989],[-2.109333333333325,0],[0,-2.314666666666668],[-2.295999999999935,0],[0,-1.903999999999996],[2.295999999999935,0],[0,-4.797333333333327],[-0.3360000000000127,-0.7467000000000041],[-0.7469999999999573,-0.4106999999999914],[-1.19500000000005,0],[-0.3730000000000473,0.03730000000000189],[-0.3360000000000127,0.03729999999998768],[0,-1.810666666666663],[0.6349999999999909,-0.07469999999999288],[0.4850000000000136,0],[0,0],[0,0]],"o":[[-3.173000000000002,0],[-1.754999999999995,-1.792000000000002],[0,-4.890666666666661],[-1.773333333333312,0],[0,-1.903999999999996],[0.2799999999999727,0],[1.419000000000096,0],[0.7839999999999918,-0.8213000000000079],[0,-0.7839999999999989],[2.109333333333325,0],[0,2.314666666666668],[2.295999999999935,0],[0,1.903999999999996],[-2.295999999999935,0],[0,4.797333333333327],[0,1.045299999999997],[0.3360000000000127,0.7092999999999989],[0.7470000000000709,0.3733000000000004],[0.2989999999999782,0],[0.3729999999999336,-0.03730000000000189],[0,1.810666666666663],[-0.5230000000000246,0.0747000000000071],[-0.6349999999999909,0.0747000000000071],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[78.71499999999997,42.72800000000001],[71.32299999999998,40.040000000000006],[68.69100000000003,32.48],[68.69100000000003,17.808000000000007],[63.37099999999998,17.808000000000007],[63.37099999999998,12.096],[64.21100000000001,12.096],[67.51499999999999,10.864],[68.69100000000003,7.504000000000005],[68.69100000000003,5.152000000000001],[75.019,5.152000000000001],[75.019,12.096],[81.90700000000004,12.096],[81.90700000000004,17.808000000000007],[75.019,17.808000000000007],[75.019,32.2],[75.52300000000002,34.888000000000005],[77.14699999999999,36.568],[80.05900000000003,37.128],[81.06700000000001,37.072],[82.13099999999997,36.96000000000001],[82.13099999999997,42.392],[80.39499999999998,42.616],[78.71499999999997,42.72800000000001],[78.71499999999997,42.72800000000001],[78.71499999999997,42.72800000000001]],"i":[[0,0],[1.754000000000019,1.792000000000002],[0,3.248000000000005],[0,4.890666666666661],[1.773333333333369,0],[0,1.903999999999996],[-0.2800000000000296,0],[-0.7839999999999918,0.8212999999999937],[0,1.4187000000000012],[0,0.7839999999999989],[-2.109333333333325,0],[0,-2.314666666666668],[-2.295999999999992,0],[0,-1.903999999999996],[2.295999999999992,0],[0,-4.797333333333327],[-0.3360000000000127,-0.7467000000000041],[-0.7470000000000141,-0.4106999999999914],[-1.19500000000005,0],[-0.3740000000000236,0.03730000000000189],[-0.3360000000000127,0.03729999999998768],[0,-1.810666666666663],[0.6340000000000146,-0.07469999999999288],[0.4850000000000136,0],[0,0],[0,0]],"o":[[-3.173999999999978,0],[-1.754999999999995,-1.792000000000002],[0,-4.890666666666661],[-1.773333333333369,0],[0,-1.903999999999996],[0.2800000000000296,0],[1.418000000000006,0],[0.7839999999999918,-0.8213000000000079],[0,-0.7839999999999989],[2.109333333333325,0],[0,2.314666666666668],[2.295999999999992,0],[0,1.903999999999996],[-2.295999999999992,0],[0,4.797333333333327],[0,1.045299999999997],[0.3359999999999559,0.7092999999999989],[0.7460000000000377,0.3733000000000004],[0.297999999999945,0],[0.3730000000000473,-0.03730000000000189],[0,1.810666666666663],[-0.5230000000000246,0.0747000000000071],[-0.6349999999999909,0.0747000000000071],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[44.18799999999999,37.184],[48.94799999999998,35.896],[52.19600000000003,32.36800000000001],[53.428,27.216000000000008],[52.19600000000003,22.12],[48.94799999999998,18.592],[44.18799999999999,17.304],[39.428,18.592],[36.12400000000002,22.12],[34.94799999999998,27.216000000000008],[36.12400000000002,32.36800000000001],[39.428,35.896],[44.18799999999999,37.184],[44.18799999999999,37.184],[44.18799999999999,37.184]],"i":[[0,0],[-1.381999999999948,0.8586999999999989],[-0.7840000000000487,1.493299999999991],[0,1.903999999999996],[0.8209999999999695,1.493299999999991],[1.381000000000029,0.8586999999999989],[1.79200000000003,0],[1.418000000000006,-0.8586999999999989],[0.8209999999999695,-1.493300000000005],[0,-1.904000000000011],[-0.7840000000000487,-1.5307000000000102],[-1.382000000000005,-0.8586999999999989],[-1.754999999999995,0],[0,0],[0,0]],"o":[[1.79200000000003,0],[1.381000000000029,-0.8586999999999989],[0.8209999999999695,-1.5307000000000102],[0,-1.904000000000011],[-0.7840000000000487,-1.493300000000005],[-1.381999999999948,-0.8586999999999989],[-1.754999999999995,0],[-1.382000000000005,0.8586999999999989],[-0.7840000000000487,1.493299999999991],[0,1.903999999999996],[0.8209999999999695,1.493299999999991],[1.418000000000006,0.8586999999999989],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[44.18799999999999,43.06400000000001],[36.18000000000001,40.992],[30.46800000000002,35.336],[28.33999999999997,27.216000000000008],[30.46800000000002,19.096],[36.18000000000001,13.49600000000001],[44.18799999999999,11.424000000000007],[52.19600000000003,13.49600000000001],[57.85199999999998,19.096],[59.98000000000002,27.216000000000008],[57.85199999999998,35.392],[52.139999999999986,41.048],[44.18799999999999,43.06400000000001],[44.18799999999999,43.06400000000001],[44.18799999999999,43.06400000000001]],"i":[[0,0],[2.425999999999988,1.381299999999996],[1.418000000000006,2.389300000000006],[0,3.024000000000001],[-1.41900000000004,2.352000000000004],[-2.389999999999986,1.343999999999994],[-2.949999999999989,0],[-2.352000000000032,-1.3813000000000102],[-1.381999999999948,-2.389300000000006],[0,-3.061300000000003],[1.418000000000006,-2.389299999999992],[2.38900000000001,-1.381299999999996],[2.912000000000035,0],[0,0],[0,0]],"o":[[-2.911999999999978,0],[-2.389999999999986,-1.381299999999996],[-1.41900000000004,-2.389299999999992],[0,-3.061300000000003],[1.418000000000006,-2.389300000000006],[2.38900000000001,-1.3813000000000102],[2.98599999999999,0],[2.388999999999953,1.343999999999994],[1.418000000000006,2.352000000000004],[0,3.061299999999989],[-1.418999999999983,2.389300000000006],[-2.389999999999986,1.343999999999994],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[0,42.392],[0,0.6720000000000041],[6.608000000000004,0.6720000000000041],[6.608000000000004,36.512],[24.639999999999986,36.512],[24.639999999999986,42.392],[0,42.392],[0,42.392],[0,42.392]],"i":[[0,0],[0,13.90666666666666],[-2.202666666666687,0],[0,-11.94666666666666],[-6.01066666666668,0],[0,-1.959999999999994],[8.21333333333331,0],[0,0],[0,0]],"o":[[0,-13.90666666666667],[2.202666666666687,0],[0,11.94666666666667],[6.01066666666668,0],[0,1.959999999999994],[-8.21333333333331,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[98.08047485351562,-21.67217254638672],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[246.681,42.392],[246.681,0],[253.009,0],[253.009,18.032],[252.001,17.248],[255.585,12.936000000000007],[261.297,11.424000000000007],[267.23299999999995,12.88],[271.265,16.912000000000006],[272.721,22.792],[272.721,42.392],[266.449,42.392],[266.449,24.528000000000006],[265.553,20.664],[263.201,18.2],[259.729,17.304],[256.25699999999995,18.2],[253.849,20.664],[253.009,24.528000000000006],[253.009,42.392],[246.681,42.392],[246.681,42.392],[246.681,42.392]],"i":[[0,0],[0,14.13066666666667],[-2.109333333333325,0],[0,-6.010666666666665],[0.3360000000000127,0.2613333333333259],[-1.643000000000029,0.9706999999999937],[-2.166000000000054,0],[-1.717999999999961,-0.9706999999999937],[-0.9710000000000036,-1.717300000000009],[0,-2.202699999999993],[0,-6.533333333333331],[2.090666666666721,0],[0,5.954666666666668],[0.59699999999998,1.045299999999997],[1.007999999999925,0.5600000000000023],[1.305999999999926,0],[1.045000000000073,-0.5973000000000042],[0.59699999999998,-1.082700000000003],[0,-1.493300000000005],[0,-5.954666666666668],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-14.13066666666667],[2.109333333333325,0],[0,6.010666666666665],[-0.3360000000000127,-0.2613333333333259],[0.7459999999999809,-1.903999999999996],[1.641999999999967,-1.0080000000000098],[2.240000000000009,0],[1.717000000000098,0.9707000000000079],[0.9700000000000273,1.717299999999994],[0,6.533333333333331],[-2.090666666666721,0],[0,-5.954666666666668],[0,-1.5307000000000102],[-0.5599999999999454,-1.082700000000003],[-1.008000000000038,-0.5973000000000042],[-1.270000000000095,0],[-1.007999999999953,0.5600000000000023],[-0.5600000000000023,1.082700000000003],[0,5.954666666666668],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[237.089,42.72800000000001],[229.697,40.040000000000006],[227.065,32.48],[227.065,17.808000000000007],[221.745,17.808000000000007],[221.745,12.096],[222.585,12.096],[225.889,10.864],[227.065,7.504000000000005],[227.065,5.152000000000001],[233.393,5.152000000000001],[233.393,12.096],[240.281,12.096],[240.281,17.808000000000007],[233.393,17.808000000000007],[233.393,32.2],[233.897,34.888000000000005],[235.521,36.568],[238.433,37.128],[239.441,37.072],[240.505,36.96000000000001],[240.505,42.392],[238.769,42.616],[237.089,42.72800000000001],[237.089,42.72800000000001],[237.089,42.72800000000001]],"i":[[0,0],[1.755000000000052,1.792000000000002],[0,3.248000000000005],[0,4.890666666666661],[1.773333333333369,0],[0,1.903999999999996],[-0.2800000000000296,0],[-0.7839999999999918,0.8212999999999937],[0,1.4187000000000012],[0,0.7839999999999989],[-2.109333333333325,0],[0,-2.314666666666668],[-2.295999999999992,0],[0,-1.903999999999996],[2.295999999999992,0],[0,-4.797333333333327],[-0.3360000000000127,-0.7467000000000041],[-0.7459999999999809,-0.4106999999999914],[-1.194000000000017,0],[-0.3729999999999905,0.03730000000000189],[-0.3360000000000127,0.03729999999998768],[0,-1.810666666666663],[0.6350000000000477,-0.07469999999999288],[0.48599999999999,0],[0,0],[0,0]],"o":[[-3.173000000000002,0],[-1.753999999999962,-1.792000000000002],[0,-4.890666666666661],[-1.773333333333369,0],[0,-1.903999999999996],[0.2800000000000296,0],[1.418999999999983,0],[0.7839999999999918,-0.8213000000000079],[0,-0.7839999999999989],[2.109333333333325,0],[0,2.314666666666668],[2.295999999999992,0],[0,1.903999999999996],[-2.295999999999992,0],[0,4.797333333333327],[0,1.045299999999997],[0.3359999999999559,0.7092999999999989],[0.7470000000000141,0.3733000000000004],[0.2989999999999782,0],[0.3740000000000236,-0.03730000000000189],[0,1.810666666666663],[-0.5220000000000482,0.0747000000000071],[-0.6339999999999577,0.0747000000000071],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[210.259,7.951999999999998],[210.259,0.6720000000000041],[216.587,0.6720000000000041],[216.587,7.951999999999998],[210.259,7.951999999999998],[210.259,7.951999999999998],[210.259,7.951999999999998]],"i":[[0,0],[0,2.426666666666662],[-2.109333333333325,0],[0,-2.426666666666662],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-2.426666666666662],[2.109333333333325,0],[0,2.426666666666662],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[210.259,42.392],[210.259,12.096],[216.587,12.096],[216.587,42.392],[210.259,42.392],[210.259,42.392],[210.259,42.392]],"i":[[0,0],[0,10.09866666666667],[-2.109333333333325,0],[0,-10.09866666666667],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-10.09866666666666],[2.109333333333325,0],[0,10.09866666666666],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[169.688,42.392],[159.272,12.096],[165.992,12.096],[173.944,36.232],[171.592,36.232],[179.712,12.096],[185.48,12.096],[193.544,36.232],[191.192,36.232],[199.2,12.096],[205.92,12.096],[195.448,42.392],[189.736,42.392],[181.56,17.696],[183.632,17.696],[175.456,42.392],[169.688,42.392],[169.688,42.392],[169.688,42.392]],"i":[[0,0],[3.47199999999998,10.09866666666667],[-2.240000000000009,0],[-2.650666666666666,-8.045333333333332],[0.7839999999999918,0],[-2.706666666666649,8.045333333333332],[-1.922666666666657,0],[-2.687999999999988,-8.045333333333332],[0.7839999999999918,0],[-2.669333333333327,8.045333333333332],[-2.240000000000009,0],[3.490666666666641,-10.09866666666667],[1.903999999999996,0],[2.725333333333367,8.232],[-0.6906666666666865,0],[2.72533333333331,-8.232],[1.922666666666657,0],[0,0],[0,0]],"o":[[-3.47199999999998,-10.09866666666666],[2.240000000000009,0],[2.650666666666666,8.045333333333332],[-0.7839999999999918,0],[2.706666666666649,-8.045333333333332],[1.922666666666657,0],[2.687999999999988,8.045333333333332],[-0.7839999999999918,0],[2.669333333333327,-8.045333333333332],[2.240000000000009,0],[-3.490666666666641,10.09866666666666],[-1.903999999999996,0],[-2.725333333333367,-8.232],[0.6906666666666865,0],[-2.72533333333331,8.232],[-1.922666666666657,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[155.86146545410156,56.001014709472656],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[132.444,43.06400000000001],[124.38,40.992],[118.948,35.28],[116.988,27.16],[118.948,19.040000000000006],[124.324,13.49600000000001],[131.94,11.424000000000007],[138.044,12.600000000000009],[142.58,15.848],[145.38,20.49600000000001],[146.388,26.096],[146.332,27.608],[146.108,29.064000000000007],[121.972,29.064000000000007],[121.972,24.024],[142.524,24.024],[139.5,26.320000000000007],[139.108,21.448000000000008],[136.308,18.032],[131.94,16.744],[127.46,18.032],[124.436,21.616],[123.596,27.216000000000008],[124.436,32.592],[127.684,36.176],[132.5,37.464],[137.148,36.232],[140.228,33.040000000000006],[145.38,35.56],[142.58,39.42400000000001],[138.1,42.11200000000001],[132.444,43.06400000000001],[132.444,43.06400000000001],[132.444,43.06400000000001]],"i":[[0,0],[2.351999999999975,1.381299999999996],[1.305999999999983,2.389300000000006],[0,2.986699999999999],[-1.307000000000016,2.35199999999999],[-2.240000000000009,1.343999999999994],[-2.838000000000022,0],[-1.79200000000003,-0.784000000000006],[-1.232000000000028,-1.381299999999996],[-0.6350000000000477,-1.754700000000014],[0,-1.978700000000003],[0.03699999999997772,-0.5227000000000004],[0.1120000000000232,-0.4480000000000075],[8.045333333333303,0],[0,1.680000000000007],[-6.850666666666655,0],[1.007999999999981,-0.7653333333333308],[0.6340000000000146,1.4187000000000012],[1.269000000000005,0.8213000000000079],[1.67999999999995,0],[1.305999999999983,-0.8586999999999989],[0.7090000000000032,-1.567999999999998],[-0.1499999999999773,-2.202700000000007],[-0.7470000000000141,-1.530699999999996],[-1.382000000000005,-0.8586999999999989],[-1.791999999999973,0],[-1.269999999999982,0.8213000000000079],[-0.7469999999999573,1.306699999999992],[-1.717333333333329,-0.8400000000000034],[1.269000000000005,-1.157300000000006],[1.754000000000019,-0.6720000000000113],[2.052999999999997,0],[0,0],[0,0]],"o":[[-3.024000000000001,0],[-2.314999999999998,-1.4187000000000012],[-1.307000000000016,-2.426699999999997],[0,-3.061299999999989],[1.343999999999994,-2.352000000000004],[2.240000000000009,-1.3813000000000102],[2.276999999999987,0],[1.791999999999973,0.7839999999999918],[1.231999999999971,1.344000000000008],[0.6719999999999686,1.7547],[0,0.4852999999999952],[-0.03800000000001091,0.5227000000000004],[-8.045333333333303,0],[0,-1.680000000000007],[6.850666666666655,0],[-1.007999999999981,0.7653333333333308],[0.3730000000000473,-1.829300000000003],[-0.5979999999999563,-1.456000000000003],[-1.232000000000028,-0.8586999999999989],[-1.680000000000007,0],[-1.307000000000016,0.8213000000000079],[-0.7100000000000364,1.530699999999996],[-0.186999999999955,2.053299999999993],[0.7839999999999918,1.53070000000001],[1.418000000000006,0.8586999999999989],[1.829000000000008,0],[1.305999999999983,-0.8212999999999937],[1.717333333333329,0.8400000000000034],[-0.5980000000000132,1.4187000000000012],[-1.232000000000028,1.11999999999999],[-1.718000000000018,0.6346999999999952],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[95.32,37.184],[100.024,35.896],[103.328,32.36800000000001],[104.56,27.216000000000008],[103.328,22.12],[100.024,18.592],[95.32,17.304],[90.56,18.592],[87.256,22.12],[86.08000000000001,27.216000000000008],[87.256,32.36800000000001],[90.50399999999999,35.896],[95.32,37.184],[95.32,37.184],[95.32,37.184]],"i":[[0,0],[-1.381,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.820999999999998,1.493299999999991],[1.419000000000011,0.8586999999999989],[1.754999999999995,0],[1.418999999999983,-0.8586999999999989],[0.7839999999999918,-1.493300000000005],[0,-1.904000000000011],[-0.7839999999999918,-1.5307000000000102],[-1.381,-0.8586999999999989],[-1.792000000000002,0],[0,0],[0,0]],"o":[[1.754999999999995,0],[1.419000000000011,-0.8586999999999989],[0.820999999999998,-1.5307000000000102],[0,-1.904000000000011],[-0.7839999999999918,-1.493300000000005],[-1.381,-0.8586999999999989],[-1.754999999999995,0],[-1.419000000000011,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.7839999999999918,1.493299999999991],[1.419000000000011,0.8586999999999989],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[94.70400000000001,43.06400000000001],[86.864,40.992],[81.43199999999999,35.28],[79.47200000000001,27.216000000000008],[81.488,19.152],[86.91999999999999,13.49600000000001],[94.648,11.424000000000007],[101.088,12.88],[105.512,16.912000000000006],[104.56,18.36800000000001],[104.56,0],[110.832,0],[110.832,42.392],[104.84,42.392],[104.84,36.232],[105.568,37.408],[101.088,41.608],[94.70400000000001,43.06400000000001],[94.70400000000001,43.06400000000001],[94.70400000000001,43.06400000000001]],"i":[[0,0],[2.314999999999998,1.381299999999996],[1.344000000000023,2.389300000000006],[0,2.986699999999999],[-1.343999999999994,2.389300000000006],[-2.276999999999987,1.381299999999996],[-2.875,0],[-1.8669999999999902,-0.9706999999999937],[-1.082999999999998,-1.717300000000009],[0.3173333333333233,-0.4853333333333296],[0,6.122666666666674],[-2.090666666666664,0],[0,-14.13066666666667],[1.99733333333333,0],[0,2.053333333333327],[-0.242666666666679,-0.3919999999999959],[1.941000000000003,-0.9707000000000079],[2.314999999999998,0],[0,0],[0,0]],"o":[[-2.912000000000006,0],[-2.277000000000015,-1.4187000000000012],[-1.306999999999988,-2.389300000000006],[0,-2.986699999999999],[1.343999999999994,-2.389300000000006],[2.277000000000015,-1.3813000000000102],[2.426999999999992,0],[1.867000000000019,0.9707000000000079],[-0.3173333333333233,0.4853333333333296],[0,-6.122666666666674],[2.090666666666664,0],[0,14.13066666666667],[-1.99733333333333,0],[0,-2.053333333333327],[0.242666666666679,0.3919999999999959],[-1.045000000000016,1.829300000000003],[-1.941000000000003,0.9706999999999937],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[57.40100000000001,43.06400000000001],[51.968999999999994,42],[48.38499999999999,38.976],[47.09700000000001,34.384],[48.161,29.960000000000008],[51.577,26.656000000000006],[57.345,24.752],[67.87299999999999,23.016000000000005],[67.87299999999999,28],[58.577,29.624],[54.881,31.248],[53.70500000000001,34.16],[54.992999999999995,37.016000000000005],[58.40899999999999,38.08],[62.88900000000001,36.96000000000001],[65.91300000000001,33.992],[66.977,29.792],[66.977,22.008],[65.297,18.36800000000001],[60.929,16.912000000000006],[56.505,18.256],[53.761,21.616],[48.496999999999986,18.98400000000001],[51.240999999999985,15.064000000000007],[55.66499999999999,12.376],[61.09700000000001,11.424000000000007],[67.42500000000001,12.768],[71.737,16.52],[73.305,22.008],[73.305,42.392],[67.257,42.392],[67.257,36.904],[68.54499999999999,37.072],[65.80099999999999,40.264],[62.04900000000001,42.336],[57.40100000000001,43.06400000000001],[57.40100000000001,43.06400000000001],[57.40100000000001,43.06400000000001]],"i":[[0,0],[1.568000000000012,0.7092999999999989],[0.8590000000000089,1.2693000000000012],[0,1.7547],[-0.7090000000000032,1.306699999999992],[-1.531000000000006,0.8960000000000008],[-2.314999999999998,0.3733000000000004],[-3.509333333333331,0.5786666666666633],[0,-1.661333333333332],[3.098666666666674,-0.541333333333327],[0.7839999999999918,-0.784000000000006],[0,-1.194699999999997],[-0.8590000000000089,-0.7467000000000041],[-1.381,0],[-1.269000000000005,0.7466999999999899],[-0.7090000000000032,1.2319999999999993],[0,1.530699999999996],[0,2.594666666666669],[1.120000000000005,0.9332999999999885],[1.829000000000008,0],[1.269000000000005,-0.8960000000000008],[0.5970000000000084,-1.381299999999996],[1.754666666666679,0.8773333333333255],[-1.268999999999977,1.11999999999999],[-1.680000000000007,0.6346999999999952],[-1.903999999999996,0],[-1.829000000000008,-0.8960000000000008],[-1.0080000000000098,-1.6053],[0,-2.090699999999998],[0,-6.794666666666672],[2.015999999999991,0],[0,1.829333333333338],[-0.429333333333318,-0.05599999999999739],[1.120000000000005,-0.8959999999999866],[1.418999999999983,-0.4852999999999952],[1.716999999999985,0],[0,0],[0,0]],"o":[[-2.053000000000026,0],[-1.531000000000006,-0.7467000000000041],[-0.8589999999999804,-1.306699999999992],[0,-1.642700000000005],[0.7469999999999857,-1.306700000000006],[1.531000000000006,-0.8960000000000008],[3.509333333333331,-0.5786666666666633],[0,1.661333333333332],[-3.098666666666674,0.541333333333327],[-1.680000000000007,0.2987000000000108],[-0.7839999999999918,0.7467000000000041],[0,1.157300000000006],[0.896000000000015,0.7092999999999989],[1.717000000000013,0],[1.306999999999988,-0.7467000000000041],[0.7089999999999748,-1.2693000000000012],[0,-2.594666666666669],[0,-1.493299999999991],[-1.082999999999998,-0.9707000000000079],[-1.680000000000007,0],[-1.2319999999999993,0.8586999999999989],[-1.754666666666679,-0.8773333333333255],[0.5600000000000023,-1.493300000000005],[1.269000000000005,-1.157300000000006],[1.717000000000013,-0.6347000000000094],[2.388999999999982,0],[1.86699999999999,0.8960000000000008],[1.045000000000016,1.568000000000012],[0,6.794666666666672],[-2.015999999999991,0],[0,-1.829333333333338],[0.429333333333318,0.05599999999999739],[-0.7089999999999748,1.2319999999999993],[-1.082999999999998,0.8960000000000008],[-1.381,0.4853000000000094],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[0,42.392],[0,0.6720000000000041],[6.159999999999997,0.6720000000000041],[21.84,22.400000000000006],[18.75999999999999,22.400000000000006],[34.16,0.6720000000000041],[40.31999999999999,0.6720000000000041],[40.31999999999999,42.392],[33.768,42.392],[33.768,8.456000000000003],[36.232,9.128],[20.49600000000001,30.632000000000005],[19.824000000000012,30.632000000000005],[4.424000000000007,9.128],[6.608000000000004,8.456000000000003],[6.608000000000004,42.392],[0,42.392],[0,42.392],[0,42.392]],"i":[[0,0],[0,13.90666666666666],[-2.053333333333342,0],[-5.226666666666659,-7.242666666666665],[1.026666666666671,0],[-5.133333333333326,7.242666666666672],[-2.053333333333342,0],[0,-13.90666666666667],[2.183999999999997,0],[0,11.312],[-0.8213333333333424,-0.2240000000000038],[5.245333333333321,-7.168000000000006],[0.2239999999999895,0],[5.133333333333326,7.168000000000006],[-0.7280000000000086,0.2240000000000038],[0,-11.312],[2.202666666666659,0],[0,0],[0,0]],"o":[[0,-13.90666666666667],[2.053333333333342,0],[5.226666666666659,7.242666666666672],[-1.026666666666671,0],[5.133333333333326,-7.242666666666665],[2.053333333333342,0],[0,13.90666666666666],[-2.183999999999997,0],[0,-11.312],[0.8213333333333424,0.2240000000000038],[-5.245333333333321,7.168000000000006],[-0.2239999999999895,0],[-5.133333333333326,-7.168000000000006],[0.7280000000000086,-0.2240000000000038],[0,11.312],[-2.202666666666659,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[2.91259765625,56.001014709472656],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[702.6863719370097,144],"ix":2},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":72,"ix":2}},{"ty":"fl","c":{"a":0,"k":[0,0,0],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[56.54167175292969,-0.000022762338630855083],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":80,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"tr","p":{"a":0,"k":[122.0000003294881,25.00000012138912],"ix":2},"a":{"a":0,"k":[56.54167175292969,-0.00002288818359375],"ix":2},"s":{"a":0,"k":[34.403572049765366,34.403572049765366],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":0,"k":[-29.82349395751953,-25.66876983642578],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[119.882333278656,119.882333278656],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"refId":"0","w":52,"h":93,"ind":8,"ty":0,"nm":"ball4 (In/Out)","sr":1,"ks":{"p":{"a":0,"k":[197,103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":1,"k":[{"t":0,"s":[0],"h":1},{"t":52,"s":[100],"h":1}],"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0,"parent":7},{"ddd":0,"ind":9,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":0,"k":[-29.82349395751953,-25.66876983642578],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[119.882333278656,119.882333278656],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"refId":"1","w":52,"h":93,"ind":10,"ty":0,"nm":"ball 4 (In/Out)","sr":1,"ks":{"p":{"a":0,"k":[124,103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":1,"k":[{"t":0,"s":[0],"h":1},{"t":43,"s":[100],"h":1}],"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0,"parent":9},{"ddd":0,"ind":11,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":0,"k":[-29.82349395751953,-25.66876983642578],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[119.882333278656,119.882333278656],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"refId":"2","w":52,"h":93,"ind":12,"ty":0,"nm":"ball 3 (In/Out)","sr":1,"ks":{"p":{"a":0,"k":[51,103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":1,"k":[{"t":0,"s":[0],"h":1},{"t":35,"s":[100],"h":1}],"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0,"parent":11},{"ddd":0,"ind":13,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":0,"k":[-29.82349395751953,-25.66876983642578],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[119.882333278656,119.882333278656],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"refId":"3","w":52,"h":93,"ind":14,"ty":0,"nm":"ball3 (In/Out)","sr":1,"ks":{"p":{"a":0,"k":[197,103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":1,"k":[{"t":0,"s":[100],"h":1},{"t":52,"s":[0],"h":1}],"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0,"parent":13},{"ddd":0,"ind":15,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":0,"k":[-29.82349395751953,-25.66876983642578],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[119.882333278656,119.882333278656],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"refId":"4","w":52,"h":93,"ind":16,"ty":0,"nm":"ball 2 (In/Out)","sr":1,"ks":{"p":{"a":0,"k":[124,103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":1,"k":[{"t":-8,"s":[100],"h":1},{"t":43,"s":[0],"h":1}],"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0,"parent":15},{"ddd":0,"ind":17,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":0,"k":[-29.82349395751953,-25.66876983642578],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[119.882333278656,119.882333278656],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0},{"ddd":0,"refId":"5","w":52,"h":93,"ind":18,"ty":0,"nm":"ball 1 (In/Out)","sr":1,"ks":{"p":{"a":0,"k":[51,103],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":1,"k":[{"t":-17,"s":[100],"h":1},{"t":35,"s":[0],"h":1}],"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":101,"st":0,"bm":0,"parent":17}],"markers":[]} \ No newline at end of file diff --git a/frontend/public/lotties/user.json b/frontend/public/lotties/user.json new file mode 100644 index 000000000..7a58c45f8 --- /dev/null +++ b/frontend/public/lotties/user.json @@ -0,0 +1 @@ +{"v":"5.7.5","fr":100,"ip":0,"op":150,"w":500,"h":500,"nm":"Comp 1","ddd":0,"metadata":{},"assets":[{"id":"0","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Body","sr":1,"ks":{"p":{"a":0,"k":[-399,-399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"Body","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":false,"v":[[-207.06,75.05],[0,-75.06],[207.06,75.05],[207.06,75.06]],"i":[[0,0],[-96.65,0],[-28.46,-87.15],[0,0]],"o":[[28.46,-87.15],[96.65,0],[0,0],[0,0]]}}},{"ty":"st","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"w":{"a":0,"k":40,"ix":2},"lc":1,"lj":1,"ml":4},{"ty":"tr","p":{"a":1,"k":[{"t":70,"s":[750,957.834],"i":{"x":[0.27],"y":[1]},"o":{"x":[0.68],"y":[0]}},{"t":130,"s":[1277,957.834],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Layer 2 - box","sr":1,"ks":{"p":{"a":0,"k":[-399,-399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"rc","d":1,"s":{"a":0,"k":[702,702],"ix":2},"p":{"a":0,"k":[750,750],"ix":2},"r":{"a":0,"k":0,"ix":2}},{"ty":"fl","c":{"a":0,"k":[0,0,0],"ix":2},"o":{"a":0,"k":0,"ix":2},"r":1,"bm":0}],"ip":0,"op":151,"st":0,"bm":0}]},{"id":"1","layers":[{"ddd":0,"ind":3,"ty":4,"nm":"Layer 2","sr":1,"ks":{"p":{"a":0,"k":[-399,-399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"td":1,"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","nm":"Group 1","it":[{"ty":"el","d":1,"s":{"a":0,"k":[701.102,701.102],"ix":2},"p":{"a":0,"k":[0,0],"ix":2}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"tr","p":{"a":0,"k":[750,750],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"refId":"0","w":702,"h":702,"ind":4,"ty":0,"nm":"Body (Masked)","sr":1,"ks":{"p":{"a":0,"k":[750,750],"ix":2},"a":{"a":0,"k":[750,750],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":151,"st":0,"bm":0,"tt":1}]},{"id":"2","layers":[{"ddd":0,"ind":5,"ty":4,"nm":"Head","sr":1,"ks":{"p":{"a":0,"k":[-399,-399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"Head","it":[{"ty":"el","d":1,"s":{"a":0,"k":[238.478,238.478],"ix":2},"p":{"a":0,"k":[0,0],"ix":2}},{"ty":"st","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"w":{"a":0,"k":40,"ix":2},"lc":1,"lj":1,"ml":4},{"ty":"tr","p":{"a":1,"k":[{"t":39,"s":[750,702.735],"i":{"x":[0.27],"y":[1]},"o":{"x":[0.68],"y":[0]}},{"t":101,"s":[1258,702.735],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"Layer 1 - box","sr":1,"ks":{"p":{"a":0,"k":[-399,-399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"rc","d":1,"s":{"a":0,"k":[702,702],"ix":2},"p":{"a":0,"k":[750,750],"ix":2},"r":{"a":0,"k":0,"ix":2}},{"ty":"fl","c":{"a":0,"k":[0,0,0],"ix":2},"o":{"a":0,"k":0,"ix":2},"r":1,"bm":0}],"ip":0,"op":151,"st":0,"bm":0}]},{"id":"3","layers":[{"ddd":0,"ind":7,"ty":4,"nm":"Layer 1","sr":1,"ks":{"p":{"a":0,"k":[-399,-399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"td":1,"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","nm":"Group 1","it":[{"ty":"el","d":1,"s":{"a":0,"k":[701.102,701.102],"ix":2},"p":{"a":0,"k":[0,0],"ix":2}},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"tr","p":{"a":0,"k":[750,750],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"refId":"2","w":702,"h":702,"ind":8,"ty":0,"nm":"Head (Masked)","sr":1,"ks":{"p":{"a":0,"k":[750,750],"ix":2},"a":{"a":0,"k":[750,750],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":151,"st":0,"bm":0,"tt":1}]}],"layers":[{"ddd":0,"ind":12345679,"ty":4,"nm":"Group Layer 8","sr":1,"ks":{"p":{"a":0,"k":[365,464.38524590163934,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[51.229508196721305,51.229508196721305,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[220.741,37.184],[225.501,35.896],[228.749,32.36800000000001],[229.981,27.216000000000008],[228.749,22.12],[225.501,18.592],[220.741,17.304],[215.981,18.592],[212.677,22.12],[211.501,27.216000000000008],[212.677,32.36800000000001],[215.981,35.896],[220.741,37.184],[220.741,37.184],[220.741,37.184]],"i":[[0,0],[-1.380999999999972,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.8220000000000027,1.493299999999991],[1.382000000000062,0.8586999999999989],[1.79200000000003,0],[1.418999999999983,-0.8586999999999989],[0.8220000000000027,-1.493300000000005],[0,-1.904000000000011],[-0.7839999999999918,-1.5307000000000102],[-1.380999999999972,-0.8586999999999989],[-1.754000000000019,0],[0,0],[0,0]],"o":[[1.79200000000003,0],[1.382000000000062,-0.8586999999999989],[0.8220000000000027,-1.5307000000000102],[0,-1.904000000000011],[-0.7839999999999918,-1.493300000000005],[-1.380999999999972,-0.8586999999999989],[-1.754000000000019,0],[-1.380999999999972,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.8220000000000027,1.493299999999991],[1.418999999999983,0.8586999999999989],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[221.357,43.06400000000001],[214.917,41.608],[210.49300000000005,37.408],[211.221,36.232],[211.221,42.392],[205.173,42.392],[205.173,0],[211.501,0],[211.501,18.36800000000001],[210.49300000000005,16.912000000000006],[214.973,12.88],[221.357,11.424000000000007],[229.085,13.49600000000001],[234.51700000000005,19.152],[236.533,27.216000000000008],[234.51700000000005,35.28],[229.141,40.992],[221.357,43.06400000000001],[221.357,43.06400000000001],[221.357,43.06400000000001]],"i":[[0,0],[1.942000000000007,0.9706999999999937],[1.045999999999935,1.829300000000003],[-0.2426666666666506,0.3919999999999959],[0,-2.053333333333327],[2.015999999999963,0],[0,14.13066666666667],[-2.109333333333325,0],[0,-6.122666666666674],[0.3360000000000127,0.4853333333333296],[-1.865999999999985,0.9707000000000079],[-2.38900000000001,0],[-2.277000000000044,-1.3813000000000102],[-1.30600000000004,-2.389300000000006],[0,-2.986699999999999],[1.343999999999937,-2.389300000000006],[2.27800000000002,-1.4187000000000012],[2.912000000000035,0],[0,0],[0,0]],"o":[[-2.351999999999975,0],[-1.903999999999996,-0.9707000000000079],[0.2426666666666506,-0.3919999999999959],[0,2.053333333333327],[-2.015999999999963,0],[0,-14.13066666666667],[2.109333333333325,0],[0,6.122666666666667],[-0.3360000000000127,-0.4853333333333296],[1.120000000000005,-1.717300000000009],[1.867000000000075,-0.9706999999999937],[2.875,0],[2.314999999999941,1.381299999999996],[1.343999999999937,2.389300000000006],[0,2.986699999999999],[-1.30600000000004,2.389300000000006],[-2.27699999999993,1.381299999999996],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[181.87,43.06400000000001],[176.438,42],[172.854,38.976],[171.566,34.384],[172.63,29.960000000000008],[176.046,26.656000000000006],[181.814,24.752],[192.342,23.016000000000005],[192.342,28],[183.046,29.624],[179.35,31.248],[178.174,34.16],[179.462,37.016000000000005],[182.878,38.08],[187.35799999999995,36.96000000000001],[190.38199999999995,33.992],[191.446,29.792],[191.446,22.008],[189.766,18.36800000000001],[185.398,16.912000000000006],[180.974,18.256],[178.23,21.616],[172.966,18.98400000000001],[175.71,15.064000000000007],[180.134,12.376],[185.566,11.424000000000007],[191.894,12.768],[196.206,16.52],[197.774,22.008],[197.774,42.392],[191.726,42.392],[191.726,36.904],[193.014,37.072],[190.27,40.264],[186.518,42.336],[181.87,43.06400000000001],[181.87,43.06400000000001],[181.87,43.06400000000001]],"i":[[0,0],[1.567999999999984,0.7092999999999989],[0.8589999999999236,1.2693000000000012],[0,1.7547],[-0.7089999999999463,1.306699999999992],[-1.530000000000086,0.8960000000000008],[-2.313999999999965,0.3733000000000004],[-3.509333333333302,0.5786666666666633],[0,-1.661333333333332],[3.098666666666645,-0.541333333333327],[0.7839999999999918,-0.784000000000006],[0,-1.194699999999997],[-0.8579999999999472,-0.7467000000000041],[-1.381000000000085,0],[-1.268999999999892,0.7466999999999899],[-0.7089999999999463,1.2319999999999993],[0,1.530699999999996],[0,2.594666666666669],[1.120000000000005,0.9332999999999885],[1.829999999999927,0],[1.269999999999982,-0.8960000000000008],[0.5979999999999563,-1.381299999999996],[1.754666666666708,0.8773333333333255],[-1.269000000000005,1.11999999999999],[-1.680000000000064,0.6346999999999952],[-1.903999999999996,0],[-1.828999999999951,-0.8960000000000008],[-1.008000000000038,-1.6053],[0,-2.090699999999998],[0,-6.794666666666672],[2.015999999999963,0],[0,1.829333333333338],[-0.4293333333333749,-0.05599999999999739],[1.120000000000005,-0.8959999999999866],[1.418999999999983,-0.4852999999999952],[1.717999999999961,0],[0,0],[0,0]],"o":[[-2.052999999999997,0],[-1.529999999999973,-0.7467000000000041],[-0.8580000000000609,-1.306699999999992],[0,-1.642700000000005],[0.7469999999999573,-1.306700000000006],[1.530999999999949,-0.8960000000000008],[3.509333333333302,-0.5786666666666633],[0,1.661333333333332],[-3.098666666666645,0.541333333333327],[-1.680000000000064,0.2987000000000108],[-0.7839999999999918,0.7467000000000041],[0,1.157300000000006],[0.8959999999999582,0.7092999999999989],[1.717999999999961,0],[1.307000000000016,-0.7467000000000041],[0.7100000000000364,-1.2693000000000012],[0,-2.594666666666669],[0,-1.493299999999991],[-1.081999999999994,-0.9707000000000079],[-1.680000000000064,0],[-1.232000000000085,0.8586999999999989],[-1.754666666666708,-0.8773333333333255],[0.5599999999999454,-1.493300000000005],[1.269999999999982,-1.157300000000006],[1.717999999999961,-0.6347000000000094],[2.389999999999986,0],[1.866999999999962,0.8960000000000008],[1.045999999999935,1.568000000000012],[0,6.794666666666672],[-2.015999999999963,0],[0,-1.829333333333338],[0.4293333333333749,0.05599999999999739],[-0.70900000000006,1.2319999999999993],[-1.081999999999994,0.8960000000000008],[-1.380999999999972,0.4853000000000094],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[159.072,42.392],[159.072,0],[165.4,0],[165.4,42.392],[159.072,42.392],[159.072,42.392],[159.072,42.392]],"i":[[0,0],[0,14.13066666666667],[-2.109333333333325,0],[0,-14.13066666666667],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-14.13066666666667],[2.109333333333325,0],[0,14.13066666666667],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[138.952,43.06400000000001],[130.888,40.992],[125.456,35.28],[123.496,27.16],[125.456,19.040000000000006],[130.832,13.49600000000001],[138.448,11.424000000000007],[144.552,12.600000000000009],[149.088,15.848],[151.888,20.49600000000001],[152.896,26.096],[152.84,27.608],[152.616,29.064000000000007],[128.48,29.064000000000007],[128.48,24.024],[149.032,24.024],[146.008,26.320000000000007],[145.616,21.448000000000008],[142.816,18.032],[138.448,16.744],[133.968,18.032],[130.944,21.616],[130.104,27.216000000000008],[130.944,32.592],[134.192,36.176],[139.008,37.464],[143.65599999999995,36.232],[146.736,33.040000000000006],[151.888,35.56],[149.088,39.42400000000001],[144.60799999999995,42.11200000000001],[138.952,43.06400000000001],[138.952,43.06400000000001],[138.952,43.06400000000001]],"i":[[0,0],[2.351999999999975,1.381299999999996],[1.307000000000016,2.389300000000006],[0,2.986699999999999],[-1.307000000000016,2.35199999999999],[-2.240000000000009,1.343999999999994],[-2.836999999999989,0],[-1.79200000000003,-0.784000000000006],[-1.231999999999971,-1.381299999999996],[-0.6349999999999909,-1.754700000000014],[0,-1.978700000000003],[0.03699999999992087,-0.5227000000000004],[0.1119999999999663,-0.4480000000000075],[8.04533333333336,0],[0,1.680000000000007],[-6.850666666666712,0],[1.008000000000038,-0.7653333333333308],[0.6349999999999909,1.4187000000000012],[1.269000000000005,0.8213000000000079],[1.680000000000064,0],[1.307000000000016,-0.8586999999999989],[0.70900000000006,-1.567999999999998],[-0.1490000000000009,-2.202700000000007],[-0.7469999999999573,-1.530699999999996],[-1.380999999999972,-0.8586999999999989],[-1.79200000000003,0],[-1.268999999999892,0.8213000000000079],[-0.7469999999999573,1.306699999999992],[-1.717333333333386,-0.8400000000000034],[1.269000000000005,-1.157300000000006],[1.755000000000109,-0.6720000000000113],[2.052999999999997,0],[0,0],[0,0]],"o":[[-3.024000000000001,0],[-2.315000000000055,-1.4187000000000012],[-1.307000000000016,-2.426699999999997],[0,-3.061299999999989],[1.343999999999937,-2.352000000000004],[2.240000000000009,-1.3813000000000102],[2.277000000000044,0],[1.79200000000003,0.7839999999999918],[1.232000000000085,1.344000000000008],[0.6720000000000255,1.7547],[0,0.4852999999999952],[-0.03700000000003456,0.5227000000000004],[-8.04533333333336,0],[0,-1.680000000000007],[6.850666666666712,0],[-1.008000000000038,0.7653333333333308],[0.3729999999999336,-1.829300000000003],[-0.59699999999998,-1.456000000000003],[-1.232000000000085,-0.8586999999999989],[-1.67999999999995,0],[-1.306999999999903,0.8213000000000079],[-0.7089999999999463,1.530699999999996],[-0.1870000000000118,2.053299999999993],[0.7839999999999918,1.53070000000001],[1.418999999999983,0.8586999999999989],[1.828999999999951,0],[1.307000000000016,-0.8212999999999937],[1.717333333333386,0.8400000000000034],[-0.59699999999998,1.4187000000000012],[-1.231999999999971,1.11999999999999],[-1.716999999999985,0.6346999999999952],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[111.001,7.951999999999998],[111.001,0.6720000000000041],[117.329,0.6720000000000041],[117.329,7.951999999999998],[111.001,7.951999999999998],[111.001,7.951999999999998],[111.001,7.951999999999998]],"i":[[0,0],[0,2.426666666666662],[-2.109333333333325,0],[0,-2.426666666666662],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-2.426666666666662],[2.109333333333325,0],[0,2.426666666666662],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[111.001,42.392],[111.001,12.096],[117.329,12.096],[117.329,42.392],[111.001,42.392],[111.001,42.392],[111.001,42.392]],"i":[[0,0],[0,10.09866666666667],[-2.109333333333325,0],[0,-10.09866666666667],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-10.09866666666666],[2.109333333333325,0],[0,10.09866666666666],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[101.41,42.72800000000001],[94.01800000000003,40.040000000000006],[91.38599999999997,32.48],[91.38599999999997,17.808000000000007],[86.06600000000003,17.808000000000007],[86.06600000000003,12.096],[86.90599999999995,12.096],[90.21000000000004,10.864],[91.38599999999997,7.504000000000005],[91.38599999999997,5.152000000000001],[97.71400000000006,5.152000000000001],[97.71400000000006,12.096],[104.602,12.096],[104.602,17.808000000000007],[97.71400000000006,17.808000000000007],[97.71400000000006,32.2],[98.21799999999996,34.888000000000005],[99.84199999999998,36.568],[102.754,37.128],[103.76200000000006,37.072],[104.826,36.96000000000001],[104.826,42.392],[103.09,42.616],[101.41,42.72800000000001],[101.41,42.72800000000001],[101.41,42.72800000000001]],"i":[[0,0],[1.754999999999995,1.792000000000002],[0,3.248000000000005],[0,4.890666666666661],[1.773333333333312,0],[0,1.903999999999996],[-0.2799999999999727,0],[-0.7839999999999918,0.8212999999999937],[0,1.4187000000000012],[0,0.7839999999999989],[-2.109333333333325,0],[0,-2.314666666666668],[-2.295999999999935,0],[0,-1.903999999999996],[2.295999999999935,0],[0,-4.797333333333327],[-0.3360000000000127,-0.7467000000000041],[-0.7469999999999573,-0.4106999999999914],[-1.19500000000005,0],[-0.3730000000000473,0.03730000000000189],[-0.3360000000000127,0.03729999999998768],[0,-1.810666666666663],[0.6349999999999909,-0.07469999999999288],[0.4850000000000136,0],[0,0],[0,0]],"o":[[-3.173000000000002,0],[-1.754999999999995,-1.792000000000002],[0,-4.890666666666661],[-1.773333333333312,0],[0,-1.903999999999996],[0.2799999999999727,0],[1.419000000000096,0],[0.7839999999999918,-0.8213000000000079],[0,-0.7839999999999989],[2.109333333333325,0],[0,2.314666666666668],[2.295999999999935,0],[0,1.903999999999996],[-2.295999999999935,0],[0,4.797333333333327],[0,1.045299999999997],[0.3360000000000127,0.7092999999999989],[0.7470000000000709,0.3733000000000004],[0.2989999999999782,0],[0.3729999999999336,-0.03730000000000189],[0,1.810666666666663],[-0.5230000000000246,0.0747000000000071],[-0.6349999999999909,0.0747000000000071],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[78.71499999999997,42.72800000000001],[71.32299999999998,40.040000000000006],[68.69100000000003,32.48],[68.69100000000003,17.808000000000007],[63.37099999999998,17.808000000000007],[63.37099999999998,12.096],[64.21100000000001,12.096],[67.51499999999999,10.864],[68.69100000000003,7.504000000000005],[68.69100000000003,5.152000000000001],[75.019,5.152000000000001],[75.019,12.096],[81.90700000000004,12.096],[81.90700000000004,17.808000000000007],[75.019,17.808000000000007],[75.019,32.2],[75.52300000000002,34.888000000000005],[77.14699999999999,36.568],[80.05900000000003,37.128],[81.06700000000001,37.072],[82.13099999999997,36.96000000000001],[82.13099999999997,42.392],[80.39499999999998,42.616],[78.71499999999997,42.72800000000001],[78.71499999999997,42.72800000000001],[78.71499999999997,42.72800000000001]],"i":[[0,0],[1.754000000000019,1.792000000000002],[0,3.248000000000005],[0,4.890666666666661],[1.773333333333369,0],[0,1.903999999999996],[-0.2800000000000296,0],[-0.7839999999999918,0.8212999999999937],[0,1.4187000000000012],[0,0.7839999999999989],[-2.109333333333325,0],[0,-2.314666666666668],[-2.295999999999992,0],[0,-1.903999999999996],[2.295999999999992,0],[0,-4.797333333333327],[-0.3360000000000127,-0.7467000000000041],[-0.7470000000000141,-0.4106999999999914],[-1.19500000000005,0],[-0.3740000000000236,0.03730000000000189],[-0.3360000000000127,0.03729999999998768],[0,-1.810666666666663],[0.6340000000000146,-0.07469999999999288],[0.4850000000000136,0],[0,0],[0,0]],"o":[[-3.173999999999978,0],[-1.754999999999995,-1.792000000000002],[0,-4.890666666666661],[-1.773333333333369,0],[0,-1.903999999999996],[0.2800000000000296,0],[1.418000000000006,0],[0.7839999999999918,-0.8213000000000079],[0,-0.7839999999999989],[2.109333333333325,0],[0,2.314666666666668],[2.295999999999992,0],[0,1.903999999999996],[-2.295999999999992,0],[0,4.797333333333327],[0,1.045299999999997],[0.3359999999999559,0.7092999999999989],[0.7460000000000377,0.3733000000000004],[0.297999999999945,0],[0.3730000000000473,-0.03730000000000189],[0,1.810666666666663],[-0.5230000000000246,0.0747000000000071],[-0.6349999999999909,0.0747000000000071],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[44.18799999999999,37.184],[48.94799999999998,35.896],[52.19600000000003,32.36800000000001],[53.428,27.216000000000008],[52.19600000000003,22.12],[48.94799999999998,18.592],[44.18799999999999,17.304],[39.428,18.592],[36.12400000000002,22.12],[34.94799999999998,27.216000000000008],[36.12400000000002,32.36800000000001],[39.428,35.896],[44.18799999999999,37.184],[44.18799999999999,37.184],[44.18799999999999,37.184]],"i":[[0,0],[-1.381999999999948,0.8586999999999989],[-0.7840000000000487,1.493299999999991],[0,1.903999999999996],[0.8209999999999695,1.493299999999991],[1.381000000000029,0.8586999999999989],[1.79200000000003,0],[1.418000000000006,-0.8586999999999989],[0.8209999999999695,-1.493300000000005],[0,-1.904000000000011],[-0.7840000000000487,-1.5307000000000102],[-1.382000000000005,-0.8586999999999989],[-1.754999999999995,0],[0,0],[0,0]],"o":[[1.79200000000003,0],[1.381000000000029,-0.8586999999999989],[0.8209999999999695,-1.5307000000000102],[0,-1.904000000000011],[-0.7840000000000487,-1.493300000000005],[-1.381999999999948,-0.8586999999999989],[-1.754999999999995,0],[-1.382000000000005,0.8586999999999989],[-0.7840000000000487,1.493299999999991],[0,1.903999999999996],[0.8209999999999695,1.493299999999991],[1.418000000000006,0.8586999999999989],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[44.18799999999999,43.06400000000001],[36.18000000000001,40.992],[30.46800000000002,35.336],[28.33999999999997,27.216000000000008],[30.46800000000002,19.096],[36.18000000000001,13.49600000000001],[44.18799999999999,11.424000000000007],[52.19600000000003,13.49600000000001],[57.85199999999998,19.096],[59.98000000000002,27.216000000000008],[57.85199999999998,35.392],[52.139999999999986,41.048],[44.18799999999999,43.06400000000001],[44.18799999999999,43.06400000000001],[44.18799999999999,43.06400000000001]],"i":[[0,0],[2.425999999999988,1.381299999999996],[1.418000000000006,2.389300000000006],[0,3.024000000000001],[-1.41900000000004,2.352000000000004],[-2.389999999999986,1.343999999999994],[-2.949999999999989,0],[-2.352000000000032,-1.3813000000000102],[-1.381999999999948,-2.389300000000006],[0,-3.061300000000003],[1.418000000000006,-2.389299999999992],[2.38900000000001,-1.381299999999996],[2.912000000000035,0],[0,0],[0,0]],"o":[[-2.911999999999978,0],[-2.389999999999986,-1.381299999999996],[-1.41900000000004,-2.389299999999992],[0,-3.061300000000003],[1.418000000000006,-2.389300000000006],[2.38900000000001,-1.3813000000000102],[2.98599999999999,0],[2.388999999999953,1.343999999999994],[1.418000000000006,2.352000000000004],[0,3.061299999999989],[-1.418999999999983,2.389300000000006],[-2.389999999999986,1.343999999999994],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[0,42.392],[0,0.6720000000000041],[6.608000000000004,0.6720000000000041],[6.608000000000004,36.512],[24.639999999999986,36.512],[24.639999999999986,42.392],[0,42.392],[0,42.392],[0,42.392]],"i":[[0,0],[0,13.90666666666666],[-2.202666666666687,0],[0,-11.94666666666666],[-6.01066666666668,0],[0,-1.959999999999994],[8.21333333333331,0],[0,0],[0,0]],"o":[[0,-13.90666666666667],[2.202666666666687,0],[0,11.94666666666667],[6.01066666666668,0],[0,1.959999999999994],[-8.21333333333331,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[98.08047485351562,-21.67217254638672],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[246.681,42.392],[246.681,0],[253.009,0],[253.009,18.032],[252.001,17.248],[255.585,12.936000000000007],[261.297,11.424000000000007],[267.23299999999995,12.88],[271.265,16.912000000000006],[272.721,22.792],[272.721,42.392],[266.449,42.392],[266.449,24.528000000000006],[265.553,20.664],[263.201,18.2],[259.729,17.304],[256.25699999999995,18.2],[253.849,20.664],[253.009,24.528000000000006],[253.009,42.392],[246.681,42.392],[246.681,42.392],[246.681,42.392]],"i":[[0,0],[0,14.13066666666667],[-2.109333333333325,0],[0,-6.010666666666665],[0.3360000000000127,0.2613333333333259],[-1.643000000000029,0.9706999999999937],[-2.166000000000054,0],[-1.717999999999961,-0.9706999999999937],[-0.9710000000000036,-1.717300000000009],[0,-2.202699999999993],[0,-6.533333333333331],[2.090666666666721,0],[0,5.954666666666668],[0.59699999999998,1.045299999999997],[1.007999999999925,0.5600000000000023],[1.305999999999926,0],[1.045000000000073,-0.5973000000000042],[0.59699999999998,-1.082700000000003],[0,-1.493300000000005],[0,-5.954666666666668],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-14.13066666666667],[2.109333333333325,0],[0,6.010666666666665],[-0.3360000000000127,-0.2613333333333259],[0.7459999999999809,-1.903999999999996],[1.641999999999967,-1.0080000000000098],[2.240000000000009,0],[1.717000000000098,0.9707000000000079],[0.9700000000000273,1.717299999999994],[0,6.533333333333331],[-2.090666666666721,0],[0,-5.954666666666668],[0,-1.5307000000000102],[-0.5599999999999454,-1.082700000000003],[-1.008000000000038,-0.5973000000000042],[-1.270000000000095,0],[-1.007999999999953,0.5600000000000023],[-0.5600000000000023,1.082700000000003],[0,5.954666666666668],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[237.089,42.72800000000001],[229.697,40.040000000000006],[227.065,32.48],[227.065,17.808000000000007],[221.745,17.808000000000007],[221.745,12.096],[222.585,12.096],[225.889,10.864],[227.065,7.504000000000005],[227.065,5.152000000000001],[233.393,5.152000000000001],[233.393,12.096],[240.281,12.096],[240.281,17.808000000000007],[233.393,17.808000000000007],[233.393,32.2],[233.897,34.888000000000005],[235.521,36.568],[238.433,37.128],[239.441,37.072],[240.505,36.96000000000001],[240.505,42.392],[238.769,42.616],[237.089,42.72800000000001],[237.089,42.72800000000001],[237.089,42.72800000000001]],"i":[[0,0],[1.755000000000052,1.792000000000002],[0,3.248000000000005],[0,4.890666666666661],[1.773333333333369,0],[0,1.903999999999996],[-0.2800000000000296,0],[-0.7839999999999918,0.8212999999999937],[0,1.4187000000000012],[0,0.7839999999999989],[-2.109333333333325,0],[0,-2.314666666666668],[-2.295999999999992,0],[0,-1.903999999999996],[2.295999999999992,0],[0,-4.797333333333327],[-0.3360000000000127,-0.7467000000000041],[-0.7459999999999809,-0.4106999999999914],[-1.194000000000017,0],[-0.3729999999999905,0.03730000000000189],[-0.3360000000000127,0.03729999999998768],[0,-1.810666666666663],[0.6350000000000477,-0.07469999999999288],[0.48599999999999,0],[0,0],[0,0]],"o":[[-3.173000000000002,0],[-1.753999999999962,-1.792000000000002],[0,-4.890666666666661],[-1.773333333333369,0],[0,-1.903999999999996],[0.2800000000000296,0],[1.418999999999983,0],[0.7839999999999918,-0.8213000000000079],[0,-0.7839999999999989],[2.109333333333325,0],[0,2.314666666666668],[2.295999999999992,0],[0,1.903999999999996],[-2.295999999999992,0],[0,4.797333333333327],[0,1.045299999999997],[0.3359999999999559,0.7092999999999989],[0.7470000000000141,0.3733000000000004],[0.2989999999999782,0],[0.3740000000000236,-0.03730000000000189],[0,1.810666666666663],[-0.5220000000000482,0.0747000000000071],[-0.6339999999999577,0.0747000000000071],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[210.259,7.951999999999998],[210.259,0.6720000000000041],[216.587,0.6720000000000041],[216.587,7.951999999999998],[210.259,7.951999999999998],[210.259,7.951999999999998],[210.259,7.951999999999998]],"i":[[0,0],[0,2.426666666666662],[-2.109333333333325,0],[0,-2.426666666666662],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-2.426666666666662],[2.109333333333325,0],[0,2.426666666666662],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[210.259,42.392],[210.259,12.096],[216.587,12.096],[216.587,42.392],[210.259,42.392],[210.259,42.392],[210.259,42.392]],"i":[[0,0],[0,10.09866666666667],[-2.109333333333325,0],[0,-10.09866666666667],[2.109333333333325,0],[0,0],[0,0]],"o":[[0,-10.09866666666666],[2.109333333333325,0],[0,10.09866666666666],[-2.109333333333325,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[169.688,42.392],[159.272,12.096],[165.992,12.096],[173.944,36.232],[171.592,36.232],[179.712,12.096],[185.48,12.096],[193.544,36.232],[191.192,36.232],[199.2,12.096],[205.92,12.096],[195.448,42.392],[189.736,42.392],[181.56,17.696],[183.632,17.696],[175.456,42.392],[169.688,42.392],[169.688,42.392],[169.688,42.392]],"i":[[0,0],[3.47199999999998,10.09866666666667],[-2.240000000000009,0],[-2.650666666666666,-8.045333333333332],[0.7839999999999918,0],[-2.706666666666649,8.045333333333332],[-1.922666666666657,0],[-2.687999999999988,-8.045333333333332],[0.7839999999999918,0],[-2.669333333333327,8.045333333333332],[-2.240000000000009,0],[3.490666666666641,-10.09866666666667],[1.903999999999996,0],[2.725333333333367,8.232],[-0.6906666666666865,0],[2.72533333333331,-8.232],[1.922666666666657,0],[0,0],[0,0]],"o":[[-3.47199999999998,-10.09866666666666],[2.240000000000009,0],[2.650666666666666,8.045333333333332],[-0.7839999999999918,0],[2.706666666666649,-8.045333333333332],[1.922666666666657,0],[2.687999999999988,8.045333333333332],[-0.7839999999999918,0],[2.669333333333327,-8.045333333333332],[2.240000000000009,0],[-3.490666666666641,10.09866666666666],[-1.903999999999996,0],[-2.725333333333367,-8.232],[0.6906666666666865,0],[-2.72533333333331,8.232],[-1.922666666666657,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-354.5325317382812,-77.50520324707031],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[155.86146545410156,56.001014709472656],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[132.444,43.06400000000001],[124.38,40.992],[118.948,35.28],[116.988,27.16],[118.948,19.040000000000006],[124.324,13.49600000000001],[131.94,11.424000000000007],[138.044,12.600000000000009],[142.58,15.848],[145.38,20.49600000000001],[146.388,26.096],[146.332,27.608],[146.108,29.064000000000007],[121.972,29.064000000000007],[121.972,24.024],[142.524,24.024],[139.5,26.320000000000007],[139.108,21.448000000000008],[136.308,18.032],[131.94,16.744],[127.46,18.032],[124.436,21.616],[123.596,27.216000000000008],[124.436,32.592],[127.684,36.176],[132.5,37.464],[137.148,36.232],[140.228,33.040000000000006],[145.38,35.56],[142.58,39.42400000000001],[138.1,42.11200000000001],[132.444,43.06400000000001],[132.444,43.06400000000001],[132.444,43.06400000000001]],"i":[[0,0],[2.351999999999975,1.381299999999996],[1.305999999999983,2.389300000000006],[0,2.986699999999999],[-1.307000000000016,2.35199999999999],[-2.240000000000009,1.343999999999994],[-2.838000000000022,0],[-1.79200000000003,-0.784000000000006],[-1.232000000000028,-1.381299999999996],[-0.6350000000000477,-1.754700000000014],[0,-1.978700000000003],[0.03699999999997772,-0.5227000000000004],[0.1120000000000232,-0.4480000000000075],[8.045333333333303,0],[0,1.680000000000007],[-6.850666666666655,0],[1.007999999999981,-0.7653333333333308],[0.6340000000000146,1.4187000000000012],[1.269000000000005,0.8213000000000079],[1.67999999999995,0],[1.305999999999983,-0.8586999999999989],[0.7090000000000032,-1.567999999999998],[-0.1499999999999773,-2.202700000000007],[-0.7470000000000141,-1.530699999999996],[-1.382000000000005,-0.8586999999999989],[-1.791999999999973,0],[-1.269999999999982,0.8213000000000079],[-0.7469999999999573,1.306699999999992],[-1.717333333333329,-0.8400000000000034],[1.269000000000005,-1.157300000000006],[1.754000000000019,-0.6720000000000113],[2.052999999999997,0],[0,0],[0,0]],"o":[[-3.024000000000001,0],[-2.314999999999998,-1.4187000000000012],[-1.307000000000016,-2.426699999999997],[0,-3.061299999999989],[1.343999999999994,-2.352000000000004],[2.240000000000009,-1.3813000000000102],[2.276999999999987,0],[1.791999999999973,0.7839999999999918],[1.231999999999971,1.344000000000008],[0.6719999999999686,1.7547],[0,0.4852999999999952],[-0.03800000000001091,0.5227000000000004],[-8.045333333333303,0],[0,-1.680000000000007],[6.850666666666655,0],[-1.007999999999981,0.7653333333333308],[0.3730000000000473,-1.829300000000003],[-0.5979999999999563,-1.456000000000003],[-1.232000000000028,-0.8586999999999989],[-1.680000000000007,0],[-1.307000000000016,0.8213000000000079],[-0.7100000000000364,1.530699999999996],[-0.186999999999955,2.053299999999993],[0.7839999999999918,1.53070000000001],[1.418000000000006,0.8586999999999989],[1.829000000000008,0],[1.305999999999983,-0.8212999999999937],[1.717333333333329,0.8400000000000034],[-0.5980000000000132,1.4187000000000012],[-1.232000000000028,1.11999999999999],[-1.718000000000018,0.6346999999999952],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[95.32,37.184],[100.024,35.896],[103.328,32.36800000000001],[104.56,27.216000000000008],[103.328,22.12],[100.024,18.592],[95.32,17.304],[90.56,18.592],[87.256,22.12],[86.08000000000001,27.216000000000008],[87.256,32.36800000000001],[90.50399999999999,35.896],[95.32,37.184],[95.32,37.184],[95.32,37.184]],"i":[[0,0],[-1.381,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.820999999999998,1.493299999999991],[1.419000000000011,0.8586999999999989],[1.754999999999995,0],[1.418999999999983,-0.8586999999999989],[0.7839999999999918,-1.493300000000005],[0,-1.904000000000011],[-0.7839999999999918,-1.5307000000000102],[-1.381,-0.8586999999999989],[-1.792000000000002,0],[0,0],[0,0]],"o":[[1.754999999999995,0],[1.419000000000011,-0.8586999999999989],[0.820999999999998,-1.5307000000000102],[0,-1.904000000000011],[-0.7839999999999918,-1.493300000000005],[-1.381,-0.8586999999999989],[-1.754999999999995,0],[-1.419000000000011,0.8586999999999989],[-0.7839999999999918,1.493299999999991],[0,1.903999999999996],[0.7839999999999918,1.493299999999991],[1.419000000000011,0.8586999999999989],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[94.70400000000001,43.06400000000001],[86.864,40.992],[81.43199999999999,35.28],[79.47200000000001,27.216000000000008],[81.488,19.152],[86.91999999999999,13.49600000000001],[94.648,11.424000000000007],[101.088,12.88],[105.512,16.912000000000006],[104.56,18.36800000000001],[104.56,0],[110.832,0],[110.832,42.392],[104.84,42.392],[104.84,36.232],[105.568,37.408],[101.088,41.608],[94.70400000000001,43.06400000000001],[94.70400000000001,43.06400000000001],[94.70400000000001,43.06400000000001]],"i":[[0,0],[2.314999999999998,1.381299999999996],[1.344000000000023,2.389300000000006],[0,2.986699999999999],[-1.343999999999994,2.389300000000006],[-2.276999999999987,1.381299999999996],[-2.875,0],[-1.8669999999999902,-0.9706999999999937],[-1.082999999999998,-1.717300000000009],[0.3173333333333233,-0.4853333333333296],[0,6.122666666666674],[-2.090666666666664,0],[0,-14.13066666666667],[1.99733333333333,0],[0,2.053333333333327],[-0.242666666666679,-0.3919999999999959],[1.941000000000003,-0.9707000000000079],[2.314999999999998,0],[0,0],[0,0]],"o":[[-2.912000000000006,0],[-2.277000000000015,-1.4187000000000012],[-1.306999999999988,-2.389300000000006],[0,-2.986699999999999],[1.343999999999994,-2.389300000000006],[2.277000000000015,-1.3813000000000102],[2.426999999999992,0],[1.867000000000019,0.9707000000000079],[-0.3173333333333233,0.4853333333333296],[0,-6.122666666666674],[2.090666666666664,0],[0,14.13066666666667],[-1.99733333333333,0],[0,-2.053333333333327],[0.242666666666679,0.3919999999999959],[-1.045000000000016,1.829300000000003],[-1.941000000000003,0.9706999999999937],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[57.40100000000001,43.06400000000001],[51.968999999999994,42],[48.38499999999999,38.976],[47.09700000000001,34.384],[48.161,29.960000000000008],[51.577,26.656000000000006],[57.345,24.752],[67.87299999999999,23.016000000000005],[67.87299999999999,28],[58.577,29.624],[54.881,31.248],[53.70500000000001,34.16],[54.992999999999995,37.016000000000005],[58.40899999999999,38.08],[62.88900000000001,36.96000000000001],[65.91300000000001,33.992],[66.977,29.792],[66.977,22.008],[65.297,18.36800000000001],[60.929,16.912000000000006],[56.505,18.256],[53.761,21.616],[48.496999999999986,18.98400000000001],[51.240999999999985,15.064000000000007],[55.66499999999999,12.376],[61.09700000000001,11.424000000000007],[67.42500000000001,12.768],[71.737,16.52],[73.305,22.008],[73.305,42.392],[67.257,42.392],[67.257,36.904],[68.54499999999999,37.072],[65.80099999999999,40.264],[62.04900000000001,42.336],[57.40100000000001,43.06400000000001],[57.40100000000001,43.06400000000001],[57.40100000000001,43.06400000000001]],"i":[[0,0],[1.568000000000012,0.7092999999999989],[0.8590000000000089,1.2693000000000012],[0,1.7547],[-0.7090000000000032,1.306699999999992],[-1.531000000000006,0.8960000000000008],[-2.314999999999998,0.3733000000000004],[-3.509333333333331,0.5786666666666633],[0,-1.661333333333332],[3.098666666666674,-0.541333333333327],[0.7839999999999918,-0.784000000000006],[0,-1.194699999999997],[-0.8590000000000089,-0.7467000000000041],[-1.381,0],[-1.269000000000005,0.7466999999999899],[-0.7090000000000032,1.2319999999999993],[0,1.530699999999996],[0,2.594666666666669],[1.120000000000005,0.9332999999999885],[1.829000000000008,0],[1.269000000000005,-0.8960000000000008],[0.5970000000000084,-1.381299999999996],[1.754666666666679,0.8773333333333255],[-1.268999999999977,1.11999999999999],[-1.680000000000007,0.6346999999999952],[-1.903999999999996,0],[-1.829000000000008,-0.8960000000000008],[-1.0080000000000098,-1.6053],[0,-2.090699999999998],[0,-6.794666666666672],[2.015999999999991,0],[0,1.829333333333338],[-0.429333333333318,-0.05599999999999739],[1.120000000000005,-0.8959999999999866],[1.418999999999983,-0.4852999999999952],[1.716999999999985,0],[0,0],[0,0]],"o":[[-2.053000000000026,0],[-1.531000000000006,-0.7467000000000041],[-0.8589999999999804,-1.306699999999992],[0,-1.642700000000005],[0.7469999999999857,-1.306700000000006],[1.531000000000006,-0.8960000000000008],[3.509333333333331,-0.5786666666666633],[0,1.661333333333332],[-3.098666666666674,0.541333333333327],[-1.680000000000007,0.2987000000000108],[-0.7839999999999918,0.7467000000000041],[0,1.157300000000006],[0.896000000000015,0.7092999999999989],[1.717000000000013,0],[1.306999999999988,-0.7467000000000041],[0.7089999999999748,-1.2693000000000012],[0,-2.594666666666669],[0,-1.493299999999991],[-1.082999999999998,-0.9707000000000079],[-1.680000000000007,0],[-1.2319999999999993,0.8586999999999989],[-1.754666666666679,-0.8773333333333255],[0.5600000000000023,-1.493300000000005],[1.269000000000005,-1.157300000000006],[1.717000000000013,-0.6347000000000094],[2.388999999999982,0],[1.86699999999999,0.8960000000000008],[1.045000000000016,1.568000000000012],[0,6.794666666666672],[-2.015999999999991,0],[0,-1.829333333333338],[0.429333333333318,0.05599999999999739],[-0.7089999999999748,1.2319999999999993],[-1.082999999999998,0.8960000000000008],[-1.381,0.4853000000000094],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"sh","d":1,"ks":{"a":0,"k":{"c":true,"v":[[0,42.392],[0,0.6720000000000041],[6.159999999999997,0.6720000000000041],[21.84,22.400000000000006],[18.75999999999999,22.400000000000006],[34.16,0.6720000000000041],[40.31999999999999,0.6720000000000041],[40.31999999999999,42.392],[33.768,42.392],[33.768,8.456000000000003],[36.232,9.128],[20.49600000000001,30.632000000000005],[19.824000000000012,30.632000000000005],[4.424000000000007,9.128],[6.608000000000004,8.456000000000003],[6.608000000000004,42.392],[0,42.392],[0,42.392],[0,42.392]],"i":[[0,0],[0,13.90666666666666],[-2.053333333333342,0],[-5.226666666666659,-7.242666666666665],[1.026666666666671,0],[-5.133333333333326,7.242666666666672],[-2.053333333333342,0],[0,-13.90666666666667],[2.183999999999997,0],[0,11.312],[-0.8213333333333424,-0.2240000000000038],[5.245333333333321,-7.168000000000006],[0.2239999999999895,0],[5.133333333333326,7.168000000000006],[-0.7280000000000086,0.2240000000000038],[0,-11.312],[2.202666666666659,0],[0,0],[0,0]],"o":[[0,-13.90666666666667],[2.053333333333342,0],[5.226666666666659,7.242666666666672],[-1.026666666666671,0],[5.133333333333326,-7.242666666666665],[2.053333333333342,0],[0,13.90666666666666],[-2.183999999999997,0],[0,-11.312],[0.8213333333333424,0.2240000000000038],[-5.245333333333321,7.168000000000006],[-0.2239999999999895,0],[-5.133333333333326,-7.168000000000006],[0.7280000000000086,-0.2240000000000038],[0,11.312],[-2.202666666666659,0],[0,0],[0,0],[0,0]]}}},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[-211.7300415039062,-77.67320251464844],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"fl","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tr","p":{"a":0,"k":[2.91259765625,56.001014709472656],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[702.6863719370097,144],"ix":2},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":72,"ix":2}},{"ty":"fl","c":{"a":0,"k":[0,0,0],"ix":2},"o":{"a":0,"k":100,"ix":2},"r":1,"bm":0},{"ty":"tm","s":{"a":0,"k":0,"ix":2},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":2},"m":1},{"ty":"tr","p":{"a":0,"k":[56.54167175292969,-0.000022762338630855083],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[99.99999403953552,99.99999403953552],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":80,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]},{"ty":"tr","p":{"a":0,"k":[122.0000003294881,25.00000012138912],"ix":2},"a":{"a":0,"k":[56.54167175292969,-0.00002288818359375],"ix":2},"s":{"a":0,"k":[34.403572049765366,34.403572049765366],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"ind":9,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":1,"k":[{"t":70,"s":[-202.21206665039062,-204.2413330078125],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}},{"t":81,"s":[-201.96864318847656,-195.74130249023438],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[60.26248335838318,60.53290367126465],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"refId":"1","w":702,"h":702,"ind":4,"ty":0,"nm":"Body (Masked)","sr":1,"ks":{"p":{"a":0,"k":[399,399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":151,"st":0,"bm":0,"parent":9},{"ddd":0,"ind":10,"ty":3,"nm":"","sr":1,"ks":{"p":{"a":1,"k":[{"t":39,"s":[-202.21206665039062,-204.2413330078125],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}},{"t":81,"s":[-201.96864318847656,-195.74130249023438],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[60.26248335838318,60.53290367126465],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":151,"st":0,"bm":0},{"ddd":0,"refId":"3","w":702,"h":702,"ind":8,"ty":0,"nm":"Head (Masked)","sr":1,"ks":{"p":{"a":0,"k":[399,399],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"ip":0,"op":151,"st":0,"bm":0,"parent":10},{"ddd":0,"ind":11,"ty":4,"nm":"Circle","sr":1,"ks":{"p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}},"ao":0,"shapes":[{"ty":"gr","nm":"Circle","it":[{"ty":"el","d":1,"s":{"a":0,"k":[422.5014900854009,424.39742128057475],"ix":2},"p":{"a":0,"k":[0,0],"ix":2}},{"ty":"st","c":{"a":0,"k":[1,1,1],"ix":2},"o":{"a":0,"k":100,"ix":2},"w":{"a":0,"k":21,"ix":2},"lc":1,"lj":1,"ml":4},{"ty":"tr","p":{"a":1,"k":[{"t":0,"s":[249.75657653808594,233.2445068359375],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}},{"t":81,"s":[250,241.74453735351562],"i":{"x":[0.75],"y":[0.75]},"o":{"x":[0.25],"y":[0.25]}}],"ix":2},"a":{"a":0,"k":[0,0],"ix":2},"s":{"a":0,"k":[100,100],"ix":2},"r":{"a":0,"k":0,"ix":2},"o":{"a":0,"k":100,"ix":2},"sk":{"a":0,"k":0,"ix":2},"sa":{"a":0,"k":0,"ix":2}}]}],"ip":0,"op":151,"st":0,"bm":0}],"markers":[]} \ No newline at end of file diff --git a/frontend/src/components/navigation/SecretDashboardPathBreadcrumb.tsx b/frontend/src/components/navigation/SecretDashboardPathBreadcrumb.tsx new file mode 100644 index 000000000..584a3f6c7 --- /dev/null +++ b/frontend/src/components/navigation/SecretDashboardPathBreadcrumb.tsx @@ -0,0 +1,87 @@ +import { faCheck, faCopy } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { Link } from "@tanstack/react-router"; +import { twMerge } from "tailwind-merge"; + +import { useTimedReset } from "@app/hooks"; +import { ProjectType } from "@app/hooks/api/workspace/types"; + +import { createNotification } from "../notifications"; +import { IconButton, Tooltip } from "../v2"; + +type Props = { + secretPathSegments: string[]; + selectedPathSegmentIndex: number; + environmentSlug: string; + projectId: string; +}; + +export const SecretDashboardPathBreadcrumb = ({ + secretPathSegments, + selectedPathSegmentIndex, + environmentSlug, + projectId +}: Props) => { + const [, isCopying, setIsCopying] = useTimedReset({ + initialState: false + }); + + const newSecretPath = `/${secretPathSegments.slice(0, selectedPathSegmentIndex + 1).join("/")}`; + const isLastItem = secretPathSegments.length === selectedPathSegmentIndex + 1; + const folderName = secretPathSegments.at(selectedPathSegmentIndex); + + return ( +
+ {isLastItem ? ( +
+ + {folderName} + + + { + if (isCopying) return; + setIsCopying(true); + navigator.clipboard.writeText(newSecretPath); + + createNotification({ + text: "Copied secret path to clipboard", + type: "info" + }); + }} + className="opacity-0 transition duration-75 hover:bg-bunker-100/10 group-hover:opacity-100" + > + + + +
+ ) : ( + ({ ...query, secretPath: newSecretPath })} + className={twMerge( + "text-sm font-semibold transition-all hover:text-primary", + isCopying && "text-primary" + )} + > + {folderName} + + )} +
+ ); +}; diff --git a/frontend/src/components/v2/Breadcrumb/Breadcrumb.tsx b/frontend/src/components/v2/Breadcrumb/Breadcrumb.tsx new file mode 100644 index 000000000..d7b78c67a --- /dev/null +++ b/frontend/src/components/v2/Breadcrumb/Breadcrumb.tsx @@ -0,0 +1,217 @@ +/* eslint-disable react/prop-types */ +import React from "react"; +import { faCaretDown, faChevronRight, faEllipsis } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { Link, ReactNode } from "@tanstack/react-router"; +import { LinkComponentProps } from "node_modules/@tanstack/react-router/dist/esm/link"; +import { twMerge } from "tailwind-merge"; + +import { + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuLabel, + DropdownMenuTrigger +} from "../Dropdown"; + +const Breadcrumb = React.forwardRef< + HTMLElement, + React.ComponentPropsWithoutRef<"nav"> & { + separator?: React.ReactNode; + } +>(({ ...props }, ref) => + + )} + +
+ {breadcrumbs ? ( + + ) : null}
+ handlePopUpToggle("createOrg", false)} + />

diff --git a/frontend/src/layouts/OrganizationLayout/components/MenuIconButton/MenuIconButton.tsx b/frontend/src/layouts/OrganizationLayout/components/MenuIconButton/MenuIconButton.tsx new file mode 100644 index 000000000..3d8aff590 --- /dev/null +++ b/frontend/src/layouts/OrganizationLayout/components/MenuIconButton/MenuIconButton.tsx @@ -0,0 +1,63 @@ +import { ComponentPropsWithRef, ElementType, useRef } from "react"; +import { DotLottie, DotLottieReact } from "@lottiefiles/dotlottie-react"; +import { twMerge } from "tailwind-merge"; + +import { MenuItemProps } from "@app/components/v2"; + +export const MenuIconButton = ({ + children, + icon, + className, + isDisabled, + isSelected, + as: Item = "div", + description, + // wrapping in forward ref with generic component causes the loss of ts definitions on props + inputRef, + lottieIconMode = "forward", + ...props +}: MenuItemProps & + ComponentPropsWithRef & { lottieIconMode?: "reverse" | "forward" }): JSX.Element => { + const iconRef = useRef(null); + return ( + iconRef.current?.play()} + onMouseLeave={() => iconRef.current?.stop()} + ref={inputRef} + {...props} + > +

+ {icon && ( +
+ { + iconRef.current = el; + }} + src={`/lotties/${icon}.json`} + loop + className="h-full w-full" + mode={lottieIconMode} + /> +
+ )} +
+ {children} +
+ + ); +}; diff --git a/frontend/src/layouts/OrganizationLayout/components/MenuIconButton/index.tsx b/frontend/src/layouts/OrganizationLayout/components/MenuIconButton/index.tsx new file mode 100644 index 000000000..6655c7091 --- /dev/null +++ b/frontend/src/layouts/OrganizationLayout/components/MenuIconButton/index.tsx @@ -0,0 +1 @@ +export { MenuIconButton } from "./MenuIconButton"; diff --git a/frontend/src/layouts/OrganizationLayout/components/MinimizedOrgSidebar/MinimizedOrgSidebar.tsx b/frontend/src/layouts/OrganizationLayout/components/MinimizedOrgSidebar/MinimizedOrgSidebar.tsx new file mode 100644 index 000000000..eb4f56577 --- /dev/null +++ b/frontend/src/layouts/OrganizationLayout/components/MinimizedOrgSidebar/MinimizedOrgSidebar.tsx @@ -0,0 +1,488 @@ +import { useState } from "react"; +import { faGithub, faSlack } from "@fortawesome/free-brands-svg-icons"; +import { + faArrowUpRightFromSquare, + faBook, + faCheck, + faCog, + faEnvelope, + faInfinity, + faInfo, + faInfoCircle, + faMoneyBill, + faSignOut, + faUser, + faUsers +} from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useQueryClient } from "@tanstack/react-query"; +import { Link, linkOptions, useLocation, useNavigate, useRouter } from "@tanstack/react-router"; + +import { Mfa } from "@app/components/auth/Mfa"; +import { CreateOrgModal } from "@app/components/organization/CreateOrgModal"; +import SecurityClient from "@app/components/utilities/SecurityClient"; +import { + Button, + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuLabel, + DropdownMenuTrigger +} from "@app/components/v2"; +import { envConfig } from "@app/config/env"; +import { useOrganization, useSubscription, useUser } from "@app/context"; +import { usePopUp, useToggle } from "@app/hooks"; +import { + useGetOrganizations, + useGetOrgTrialUrl, + useLogoutUser, + useSelectOrganization, + workspaceKeys +} from "@app/hooks/api"; +import { authKeys } from "@app/hooks/api/auth/queries"; +import { MfaMethod } from "@app/hooks/api/auth/types"; +import { SubscriptionPlan } from "@app/hooks/api/types"; +import { AuthMethod } from "@app/hooks/api/users/types"; +import { ProjectType } from "@app/hooks/api/workspace/types"; +import { navigateUserToOrg } from "@app/pages/auth/LoginPage/Login.utils"; + +import { MenuIconButton } from "../MenuIconButton"; + +const getPlan = (subscription: SubscriptionPlan) => { + if (subscription.dynamicSecret) return "Enterprise Plan"; + if (subscription.pitRecovery) return "Pro Plan"; + return "Free Plan"; +}; + +export const INFISICAL_SUPPORT_OPTIONS = [ + [ + , + "Support Forum", + "https://infisical.com/slack" + ], + [ + , + "Read Docs", + "https://infisical.com/docs/documentation/getting-started/introduction" + ], + [ + , + "GitHub Issues", + "https://github.com/Infisical/infisical/issues" + ], + [ + , + "Email Support", + "mailto:support@infisical.com" + ] +]; + +export const MinimizedOrgSidebar = () => { + const [shouldShowMfa, toggleShowMfa] = useToggle(false); + const [requiredMfaMethod, setRequiredMfaMethod] = useState(MfaMethod.EMAIL); + const [mfaSuccessCallback, setMfaSuccessCallback] = useState<() => void>(() => {}); + const { subscription } = useSubscription(); + + const { user } = useUser(); + const { mutateAsync } = useGetOrgTrialUrl(); + + const { currentOrg } = useOrganization(); + const { data: orgs } = useGetOrganizations(); + + const { popUp, handlePopUpToggle } = usePopUp(["createOrg"] as const); + const { mutateAsync: selectOrganization } = useSelectOrganization(); + const navigate = useNavigate(); + const router = useRouter(); + const location = useLocation(); + const queryClient = useQueryClient(); + + const isMoreSelected = ( + [ + linkOptions({ to: "/organization/access-management" }).to, + linkOptions({ to: "/organization/settings" }).to, + linkOptions({ to: "/organization/audit-logs" }).to + ] as string[] + ).includes(location.pathname); + + const handleOrgChange = async (orgId: string) => { + queryClient.removeQueries({ queryKey: authKeys.getAuthToken }); + queryClient.removeQueries({ queryKey: workspaceKeys.getAllUserWorkspace() }); + + const { token, isMfaEnabled, mfaMethod } = await selectOrganization({ + organizationId: orgId + }); + + if (isMfaEnabled) { + SecurityClient.setMfaToken(token); + if (mfaMethod) { + setRequiredMfaMethod(mfaMethod); + } + toggleShowMfa.on(); + setMfaSuccessCallback(() => () => handleOrgChange(orgId)); + return; + } + await router.invalidate(); + await navigateUserToOrg(navigate, orgId); + }; + + const logout = useLogoutUser(); + const logOutUser = async () => { + try { + console.log("Logging out..."); + await logout.mutateAsync(); + navigate({ to: "/login" }); + } catch (error) { + console.error(error); + } + }; + + if (shouldShowMfa) { + return ( +
+ toggleShowMfa.off()} + /> +
+ ); + } + + return ( + <> + + handlePopUpToggle("createOrg", false)} + /> + + ); +}; diff --git a/frontend/src/layouts/OrganizationLayout/components/MinimizedOrgSidebar/index.tsx b/frontend/src/layouts/OrganizationLayout/components/MinimizedOrgSidebar/index.tsx new file mode 100644 index 000000000..f8df49034 --- /dev/null +++ b/frontend/src/layouts/OrganizationLayout/components/MinimizedOrgSidebar/index.tsx @@ -0,0 +1 @@ +export { MinimizedOrgSidebar } from "./MinimizedOrgSidebar"; diff --git a/frontend/src/layouts/OrganizationLayout/components/SidebarFooter/SidebarFooter.tsx b/frontend/src/layouts/OrganizationLayout/components/SidebarFooter/SidebarFooter.tsx deleted file mode 100644 index 6a634a9c4..000000000 --- a/frontend/src/layouts/OrganizationLayout/components/SidebarFooter/SidebarFooter.tsx +++ /dev/null @@ -1,130 +0,0 @@ -import { faGithub, faSlack } from "@fortawesome/free-brands-svg-icons"; -import { - faBook, - faEnvelope, - faInfinity, - faInfo, - faPlus, - faQuestion -} from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { Link } from "@tanstack/react-router"; - -import { WishForm } from "@app/components/features/WishForm"; -import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuItem, - DropdownMenuTrigger -} from "@app/components/v2"; -import { envConfig } from "@app/config/env"; -import { useOrganization, useSubscription } from "@app/context"; -import { useGetOrgTrialUrl } from "@app/hooks/api"; - -export const INFISICAL_SUPPORT_OPTIONS = [ - [ - , - "Support Forum", - "https://infisical.com/slack" - ], - [ - , - "Read Docs", - "https://infisical.com/docs/documentation/getting-started/introduction" - ], - [ - , - "GitHub Issues", - "https://github.com/Infisical/infisical/issues" - ], - [ - , - "Email Support", - "mailto:support@infisical.com" - ] -]; - -export const SidebarFooter = () => { - const { subscription } = useSubscription(); - const { currentOrg } = useOrganization(); - - const { mutateAsync } = useGetOrgTrialUrl(); - - return ( -
- {(window.location.origin.includes("https://app.infisical.com") || - window.location.origin.includes("https://gamma.infisical.com")) && } - -
- - Invite people -
- - - -
- - Help & Support -
-
- - {INFISICAL_SUPPORT_OPTIONS.map(([icon, text, url]) => ( - - -
- {icon} -
{text}
-
-
-
- ))} - {envConfig.PLATFORM_VERSION && ( -
- - Version: {envConfig.PLATFORM_VERSION} -
- )} -
-
- {subscription && subscription.slug === "starter" && !subscription.has_used_trial && ( - - )} -
- ); -}; diff --git a/frontend/src/layouts/OrganizationLayout/components/SidebarFooter/index.tsx b/frontend/src/layouts/OrganizationLayout/components/SidebarFooter/index.tsx deleted file mode 100644 index bb9714b13..000000000 --- a/frontend/src/layouts/OrganizationLayout/components/SidebarFooter/index.tsx +++ /dev/null @@ -1 +0,0 @@ -export { SidebarFooter } from "./SidebarFooter"; diff --git a/frontend/src/layouts/OrganizationLayout/components/SidebarHeader/SidebarHeader.tsx b/frontend/src/layouts/OrganizationLayout/components/SidebarHeader/SidebarHeader.tsx index 98683c2e5..8c16668f3 100644 --- a/frontend/src/layouts/OrganizationLayout/components/SidebarHeader/SidebarHeader.tsx +++ b/frontend/src/layouts/OrganizationLayout/components/SidebarHeader/SidebarHeader.tsx @@ -1,169 +1,27 @@ -import { faAngleDown, faArrowUpRightFromSquare, faCheck } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { Link, useNavigate } from "@tanstack/react-router"; +import { useOrganization, useSubscription } from "@app/context"; +import { SubscriptionPlan } from "@app/hooks/api/types"; -import { - Button, - DropdownMenu, - DropdownMenuContent, - DropdownMenuItem, - DropdownMenuTrigger -} from "@app/components/v2"; -import { useOrganization, useUser } from "@app/context"; -import { useGetOrganizations, useLogoutUser } from "@app/hooks/api"; -import { AuthMethod } from "@app/hooks/api/users/types"; - -type Prop = { - onChangeOrg: (orgId: string) => void; +const getPlan = (subscription: SubscriptionPlan) => { + if (subscription.dynamicSecret) return "Enterprise Plan"; + if (subscription.pitRecovery) return "Pro Plan"; + return "Free Plan"; }; -export const SidebarHeader = ({ onChangeOrg }: Prop) => { +export const SidebarHeader = () => { const { currentOrg } = useOrganization(); - const { user } = useUser(); - const navigate = useNavigate(); - const { data: orgs } = useGetOrganizations(); - - const logout = useLogoutUser(); - const logOutUser = async () => { - try { - console.log("Logging out..."); - await logout.mutateAsync(); - navigate({ to: "/login" }); - } catch (error) { - console.error(error); - } - }; + const { subscription } = useSubscription(); return ( -
- - -
-
- {currentOrg?.name.charAt(0)} -
-
- {currentOrg?.name} -
- -
-
- -
{user?.username}
- {orgs?.map((org) => { - return ( - - - - ); - })} - -
- - - - - -
- {user?.firstName?.charAt(0)} - {user?.lastName && user?.lastName?.charAt(0)} -
-
- -
{user?.username}
- - Personal Settings - - - - Documentation - - - - - - Join Slack Community - - - - {user?.superAdmin && ( - - - Server Admin Console - - - )} - - - Organization Admin Console - - -
- - - +
+
+ {currentOrg?.name.charAt(0)} +
+
+
+ {currentOrg?.name} +
+
{getPlan(subscription)}
+
); }; diff --git a/frontend/src/layouts/PersonalSettingsLayout/PersonalSettingsLayout.tsx b/frontend/src/layouts/PersonalSettingsLayout/PersonalSettingsLayout.tsx index 8071d5043..5ae5edd37 100644 --- a/frontend/src/layouts/PersonalSettingsLayout/PersonalSettingsLayout.tsx +++ b/frontend/src/layouts/PersonalSettingsLayout/PersonalSettingsLayout.tsx @@ -14,7 +14,7 @@ import { envConfig } from "@app/config/env"; import { ProjectType } from "@app/hooks/api/workspace/types"; import { InsecureConnectionBanner } from "../OrganizationLayout/components/InsecureConnectionBanner"; -import { INFISICAL_SUPPORT_OPTIONS } from "../OrganizationLayout/components/SidebarFooter/SidebarFooter"; +import { INFISICAL_SUPPORT_OPTIONS } from "../OrganizationLayout/components/MinimizedOrgSidebar/MinimizedOrgSidebar"; export const PersonalSettingsLayout = () => { const { t } = useTranslation(); diff --git a/frontend/src/layouts/ProjectLayout/ProjectLayout.tsx b/frontend/src/layouts/ProjectLayout/ProjectLayout.tsx index 1f73202bd..af82b83f0 100644 --- a/frontend/src/layouts/ProjectLayout/ProjectLayout.tsx +++ b/frontend/src/layouts/ProjectLayout/ProjectLayout.tsx @@ -1,48 +1,30 @@ -import { useState } from "react"; import { useTranslation } from "react-i18next"; import { faMobile } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { useQueryClient } from "@tanstack/react-query"; -import { Link, Outlet, useNavigate, useRouter } from "@tanstack/react-router"; +import { Link, Outlet, useRouterState } from "@tanstack/react-router"; +import { motion } from "framer-motion"; -import { Mfa } from "@app/components/auth/Mfa"; -import SecurityClient from "@app/components/utilities/SecurityClient"; -import { Menu, MenuItem } from "@app/components/v2"; -import { useUser, useWorkspace } from "@app/context"; -import { useToggle } from "@app/hooks"; import { - useGetAccessRequestsCount, - useGetSecretApprovalRequestCount, - useSelectOrganization, - workspaceKeys -} from "@app/hooks/api"; -import { authKeys } from "@app/hooks/api/auth/queries"; -import { MfaMethod } from "@app/hooks/api/auth/types"; + BreadcrumbContainer, + Menu, + MenuGroup, + MenuItem, + TBreadcrumbFormat +} from "@app/components/v2"; +import { useWorkspace } from "@app/context"; +import { useGetAccessRequestsCount, useGetSecretApprovalRequestCount } from "@app/hooks/api"; import { ProjectType } from "@app/hooks/api/workspace/types"; -import { navigateUserToOrg } from "@app/pages/auth/LoginPage/Login.utils"; -import { InsecureConnectionBanner } from "../OrganizationLayout/components/InsecureConnectionBanner"; -import { SidebarFooter } from "../OrganizationLayout/components/SidebarFooter"; import { ProjectSelect } from "./components/ProjectSelect"; -import { SidebarHeader } from "./components/SidebarHeader"; // This is a generic layout shared by all types of projects. // If the product layout differs significantly, create a new layout as needed. export const ProjectLayout = () => { const { currentWorkspace } = useWorkspace(); - const navigate = useNavigate(); - - const [shouldShowMfa, toggleShowMfa] = useToggle(false); - const [requiredMfaMethod, setRequiredMfaMethod] = useState(MfaMethod.EMAIL); - const [mfaSuccessCallback, setMfaSuccessCallback] = useState<() => void>(() => {}); - - const { user } = useUser(); - - const { mutateAsync: selectOrganization } = useSelectOrganization(); + const matches = useRouterState({ select: (s) => s.matches.at(-1)?.context }); + const breadcrumbs = matches && "breadcrumbs" in matches ? matches.breadcrumbs : undefined; const { t } = useTranslation(); - const router = useRouter(); - const queryClient = useQueryClient(); const workspaceId = currentWorkspace?.id || ""; const projectSlug = currentWorkspace?.slug || ""; @@ -63,191 +45,168 @@ export const ProjectLayout = () => { const pendingRequestsCount = (secretApprovalReqCount?.open || 0) + (accessApprovalRequestCount?.pendingCount || 0); - const handleOrgChange = async (orgId: string) => { - queryClient.removeQueries({ queryKey: authKeys.getAuthToken }); - queryClient.removeQueries({ queryKey: workspaceKeys.getAllUserWorkspace() }); - - const { token, isMfaEnabled, mfaMethod } = await selectOrganization({ - organizationId: orgId - }); - - if (isMfaEnabled) { - SecurityClient.setMfaToken(token); - if (mfaMethod) { - setRequiredMfaMethod(mfaMethod); - } - toggleShowMfa.on(); - setMfaSuccessCallback(() => () => handleOrgChange(orgId)); - return; - } - await router.invalidate(); - await navigateUserToOrg(navigate, orgId); - }; - - if (shouldShowMfa) { - return ( -
- toggleShowMfa.off()} - /> -
- ); - } - return ( <>
- {!window.isSecureContext && }
- -
+ +
+ {breadcrumbs ? ( + + ) : null} -
+
diff --git a/frontend/src/layouts/ProjectLayout/components/ProjectSelect/ProjectSelect.tsx b/frontend/src/layouts/ProjectLayout/components/ProjectSelect/ProjectSelect.tsx index 0ba943b7b..10d6889a5 100644 --- a/frontend/src/layouts/ProjectLayout/components/ProjectSelect/ProjectSelect.tsx +++ b/frontend/src/layouts/ProjectLayout/components/ProjectSelect/ProjectSelect.tsx @@ -167,7 +167,7 @@ export const ProjectSelect = () => { }, [workspaces, projectFavorites, currentWorkspace]); return ( -
+

{currentWorkspace?.type ? getProjectTitle(currentWorkspace?.type) : "Project"}

diff --git a/frontend/src/pages/auth/LoginPage/LoginPage.tsx b/frontend/src/pages/auth/LoginPage/LoginPage.tsx index 8ecf29424..c7f121bb1 100644 --- a/frontend/src/pages/auth/LoginPage/LoginPage.tsx +++ b/frontend/src/pages/auth/LoginPage/LoginPage.tsx @@ -80,7 +80,7 @@ export const LoginPage = () => { />
-
{renderView()}
; +
{renderView()}
); }; diff --git a/frontend/src/pages/auth/LoginSsoPage/LoginSsoPage.tsx b/frontend/src/pages/auth/LoginSsoPage/LoginSsoPage.tsx index 7cf6d90b1..5af256d1a 100644 --- a/frontend/src/pages/auth/LoginSsoPage/LoginSsoPage.tsx +++ b/frontend/src/pages/auth/LoginSsoPage/LoginSsoPage.tsx @@ -59,7 +59,7 @@ export const LoginSsoPage = () => { />
-
{renderView()}
; +
{renderView()}
); }; diff --git a/frontend/src/pages/auth/SignUpSsoPage/SignUpSsoPage.tsx b/frontend/src/pages/auth/SignUpSsoPage/SignUpSsoPage.tsx index 6c2788845..a13cfcfc6 100644 --- a/frontend/src/pages/auth/SignUpSsoPage/SignUpSsoPage.tsx +++ b/frontend/src/pages/auth/SignUpSsoPage/SignUpSsoPage.tsx @@ -89,7 +89,7 @@ export const SignupSsoPage = () => { alt="Infisical Logo" />
-
{renderView()}
; +
{renderView()}
); }; diff --git a/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/CertAuthDetailsByIDPage.tsx b/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/CertAuthDetailsByIDPage.tsx index 3c753fb52..75d0ca139 100644 --- a/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/CertAuthDetailsByIDPage.tsx +++ b/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/CertAuthDetailsByIDPage.tsx @@ -1,6 +1,4 @@ import { Helmet } from "react-helmet"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -13,6 +11,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -80,34 +79,17 @@ const Page = () => { return (
{data && ( -
- -
-

{data.friendlyName}

+
+
- +
- + {
-
+
diff --git a/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/route.tsx b/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/route.tsx index 112d0c4c1..00244eb98 100644 --- a/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/route.tsx +++ b/frontend/src/pages/cert-manager/CertAuthDetailsByIDPage/route.tsx @@ -1,9 +1,25 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { CertAuthDetailsByIDPage } from "./CertAuthDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId" )({ - component: CertAuthDetailsByIDPage + component: CertAuthDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Certificate Authorities", + link: linkOptions({ + to: "/cert-manager/$projectId/overview", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/cert-manager/CertificatesPage/CertificatesPage.tsx b/frontend/src/pages/cert-manager/CertificatesPage/CertificatesPage.tsx index e18782cdc..0d212e797 100644 --- a/frontend/src/pages/cert-manager/CertificatesPage/CertificatesPage.tsx +++ b/frontend/src/pages/cert-manager/CertificatesPage/CertificatesPage.tsx @@ -2,7 +2,7 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; import { ProjectPermissionCan } from "@app/components/permissions"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/context"; import { CaTab, CertificatesTab, PkiAlertsTab } from "./components"; @@ -19,11 +19,9 @@ export const CertificatesPage = () => {
{t("common.head-title", { title: "Certificates" })} - - -
-

Internal PKI

+
+ Certificates diff --git a/frontend/src/pages/cert-manager/CertificatesPage/route.tsx b/frontend/src/pages/cert-manager/CertificatesPage/route.tsx index eec2b6007..431812886 100644 --- a/frontend/src/pages/cert-manager/CertificatesPage/route.tsx +++ b/frontend/src/pages/cert-manager/CertificatesPage/route.tsx @@ -3,7 +3,7 @@ import { createFileRoute } from "@tanstack/react-router"; import { CertificatesPage } from "./CertificatesPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview" )({ component: CertificatesPage }); diff --git a/frontend/src/pages/cert-manager/PkiCollectionDetailsByIDPage/PkiCollectionDetailsByIDPage.tsx b/frontend/src/pages/cert-manager/PkiCollectionDetailsByIDPage/PkiCollectionDetailsByIDPage.tsx index c0f7b6e97..5cd8bf7c6 100644 --- a/frontend/src/pages/cert-manager/PkiCollectionDetailsByIDPage/PkiCollectionDetailsByIDPage.tsx +++ b/frontend/src/pages/cert-manager/PkiCollectionDetailsByIDPage/PkiCollectionDetailsByIDPage.tsx @@ -1,7 +1,5 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -14,6 +12,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -74,34 +73,17 @@ export const PkiCollectionPage = () => { return (
{data && ( -
- -
-

{data.name}

+
+
- +
- + {
-
+
{ + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Certificate Collections", + link: linkOptions({ + to: "/cert-manager/$projectId/overview", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/cert-manager/SettingsPage/SettingsPage.tsx b/frontend/src/pages/cert-manager/SettingsPage/SettingsPage.tsx index 99ec9033f..dce31f01b 100644 --- a/frontend/src/pages/cert-manager/SettingsPage/SettingsPage.tsx +++ b/frontend/src/pages/cert-manager/SettingsPage/SettingsPage.tsx @@ -1,7 +1,7 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { ProjectGeneralTab } from "./components/ProjectGeneralTab"; @@ -14,12 +14,9 @@ export const SettingsPage = () => {
{t("common.head-title", { title: t("settings.project.title") })} - -
-
-

{t("settings.project.title")}

-
+
+ {tabs.map((tab) => ( diff --git a/frontend/src/pages/cert-manager/SettingsPage/route.tsx b/frontend/src/pages/cert-manager/SettingsPage/route.tsx index bf769e482..8717adace 100644 --- a/frontend/src/pages/cert-manager/SettingsPage/route.tsx +++ b/frontend/src/pages/cert-manager/SettingsPage/route.tsx @@ -3,7 +3,17 @@ import { createFileRoute } from "@tanstack/react-router"; import { SettingsPage } from "./SettingsPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings" )({ - component: SettingsPage + component: SettingsPage, + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Settings" + } + ] + }; + } }); diff --git a/frontend/src/pages/cert-manager/layout.tsx b/frontend/src/pages/cert-manager/layout.tsx index 9bd48a65c..54a9b06d3 100644 --- a/frontend/src/pages/cert-manager/layout.tsx +++ b/frontend/src/pages/cert-manager/layout.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { workspaceKeys } from "@app/hooks/api"; import { fetchUserProjectPermissions, roleQueryKeys } from "@app/hooks/api/roles/queries"; @@ -6,11 +6,11 @@ import { fetchWorkspaceById } from "@app/hooks/api/workspace/queries"; import { ProjectLayout } from "@app/layouts/ProjectLayout"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" )({ component: ProjectLayout, beforeLoad: async ({ params, context }) => { - await context.queryClient.ensureQueryData({ + const project = await context.queryClient.ensureQueryData({ queryKey: workspaceKeys.getWorkspaceById(params.projectId), queryFn: () => fetchWorkspaceById(params.projectId) }); @@ -21,5 +21,21 @@ export const Route = createFileRoute( }), queryFn: () => fetchUserProjectPermissions({ workspaceId: params.projectId }) }); + + return { + breadcrumbs: [ + { + label: "Cert Managers", + link: linkOptions({ to: "/organization/cert-manager/overview" }) + }, + { + label: project.name, + link: linkOptions({ + to: "/cert-manager/$projectId/overview", + params: { projectId: project.id } + }) + } + ] + }; } }); diff --git a/frontend/src/pages/kms/OverviewPage/OverviewPage.tsx b/frontend/src/pages/kms/OverviewPage/OverviewPage.tsx index 1d36210e0..405c4a515 100644 --- a/frontend/src/pages/kms/OverviewPage/OverviewPage.tsx +++ b/frontend/src/pages/kms/OverviewPage/OverviewPage.tsx @@ -2,6 +2,7 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; import { ProjectPermissionCan } from "@app/components/permissions"; +import { PageHeader } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/context"; import { CmekTable } from "./components"; @@ -13,15 +14,13 @@ export const OverviewPage = () => {
{t("common.head-title", { title: "KMS" })} - -
-
-

Key Management System

-

- Manage keys and perform cryptographic operations. -

+
+ {
{t("common.head-title", { title: t("settings.project.title") })} - -
-
-

{t("settings.project.title")}

-
+
+ {tabs.map((tab) => ( diff --git a/frontend/src/pages/kms/SettingsPage/route.tsx b/frontend/src/pages/kms/SettingsPage/route.tsx index c5578c700..e5499c51b 100644 --- a/frontend/src/pages/kms/SettingsPage/route.tsx +++ b/frontend/src/pages/kms/SettingsPage/route.tsx @@ -3,7 +3,17 @@ import { createFileRoute } from "@tanstack/react-router"; import { SettingsPage } from "./SettingsPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings" + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings" )({ - component: SettingsPage + component: SettingsPage, + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Settings" + } + ] + }; + } }); diff --git a/frontend/src/pages/kms/layout.tsx b/frontend/src/pages/kms/layout.tsx index 7a8cfe7e3..bd2d48595 100644 --- a/frontend/src/pages/kms/layout.tsx +++ b/frontend/src/pages/kms/layout.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { workspaceKeys } from "@app/hooks/api"; import { fetchUserProjectPermissions, roleQueryKeys } from "@app/hooks/api/roles/queries"; @@ -6,11 +6,11 @@ import { fetchWorkspaceById } from "@app/hooks/api/workspace/queries"; import { ProjectLayout } from "@app/layouts/ProjectLayout"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" )({ component: ProjectLayout, beforeLoad: async ({ params, context }) => { - await context.queryClient.ensureQueryData({ + const project = await context.queryClient.ensureQueryData({ queryKey: workspaceKeys.getWorkspaceById(params.projectId), queryFn: () => fetchWorkspaceById(params.projectId) }); @@ -21,5 +21,21 @@ export const Route = createFileRoute( }), queryFn: () => fetchUserProjectPermissions({ workspaceId: params.projectId }) }); + + return { + breadcrumbs: [ + { + label: "KMS", + link: linkOptions({ to: "/organization/kms/overview" }) + }, + { + label: project.name, + link: linkOptions({ + to: "/kms/$projectId/overview", + params: { projectId: project.id } + }) + } + ] + }; } }); diff --git a/frontend/src/pages/organization/AccessManagementPage/AccessManagementPage.tsx b/frontend/src/pages/organization/AccessManagementPage/AccessManagementPage.tsx index 264b3e5b7..2aa8f2748 100644 --- a/frontend/src/pages/organization/AccessManagementPage/AccessManagementPage.tsx +++ b/frontend/src/pages/organization/AccessManagementPage/AccessManagementPage.tsx @@ -2,7 +2,7 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; import { useNavigate, useSearch } from "@tanstack/react-router"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; import { OrgPermissionActions, OrgPermissionSubjects, useOrgPermission } from "@app/context"; import { OrgAccessControlTabSections } from "@app/types/org"; @@ -59,8 +59,11 @@ export const AccessManagementPage = () => { {t("common.head-title", { title: t("settings.org.title") })} -
-

Organization Access Control

+
+ {tabSections diff --git a/frontend/src/pages/organization/AccessManagementPage/route.tsx b/frontend/src/pages/organization/AccessManagementPage/route.tsx index 82aa55681..1401f57c1 100644 --- a/frontend/src/pages/organization/AccessManagementPage/route.tsx +++ b/frontend/src/pages/organization/AccessManagementPage/route.tsx @@ -1,4 +1,6 @@ -import { createFileRoute, stripSearchParams } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions, stripSearchParams } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -12,12 +14,24 @@ const AccessControlPageQuerySchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/access-management" + "/_authenticate/_inject-org-details/_org-layout/organization/access-management" )({ component: AccessManagementPage, validateSearch: zodValidator(AccessControlPageQuerySchema), search: { // strip default values middlewares: [stripSearchParams({ action: "" })] - } + }, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/" }) + }, + { + label: "access control" + } + ] + }) }); diff --git a/frontend/src/pages/organization/AdminPage/AdminPage.tsx b/frontend/src/pages/organization/AdminPage/AdminPage.tsx index f170f1d52..5e1ac12c9 100644 --- a/frontend/src/pages/organization/AdminPage/AdminPage.tsx +++ b/frontend/src/pages/organization/AdminPage/AdminPage.tsx @@ -2,7 +2,7 @@ import { useState } from "react"; import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { OrgAdminProjects } from "./components/OrgAdminProjects"; @@ -17,13 +17,13 @@ export const AdminPage = () => { <> {t("common.head-title", { title: t("settings.org.title") })} - -
-
-
-

Organization Admin Console

-
+
+
+ setActiveTab(el as TabSections)}> Projects diff --git a/frontend/src/pages/organization/AdminPage/route.tsx b/frontend/src/pages/organization/AdminPage/route.tsx index 0c660fb19..f0d6b4985 100644 --- a/frontend/src/pages/organization/AdminPage/route.tsx +++ b/frontend/src/pages/organization/AdminPage/route.tsx @@ -1,9 +1,23 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { AdminPage } from "./AdminPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/admin" + "/_authenticate/_inject-org-details/_org-layout/organization/admin" )({ - component: AdminPage + component: AdminPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: "Admin Console" + } + ] + }) }); diff --git a/frontend/src/pages/organization/AppConnections/GithubOauthCallbackPage/route.tsx b/frontend/src/pages/organization/AppConnections/GithubOauthCallbackPage/route.tsx index 889c30082..a69c27aee 100644 --- a/frontend/src/pages/organization/AppConnections/GithubOauthCallbackPage/route.tsx +++ b/frontend/src/pages/organization/AppConnections/GithubOauthCallbackPage/route.tsx @@ -11,7 +11,7 @@ const GitHubOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback" + "/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback" )({ component: GitHubOAuthCallbackPage, validateSearch: zodValidator(GitHubOAuthCallbackPageQueryParamsSchema), diff --git a/frontend/src/pages/organization/AuditLogsPage/AuditLogsPage.tsx b/frontend/src/pages/organization/AuditLogsPage/AuditLogsPage.tsx index 9db066248..737a09b66 100644 --- a/frontend/src/pages/organization/AuditLogsPage/AuditLogsPage.tsx +++ b/frontend/src/pages/organization/AuditLogsPage/AuditLogsPage.tsx @@ -1,5 +1,7 @@ import { Helmet } from "react-helmet"; +import { PageHeader } from "@app/components/v2"; + import { LogsSection } from "./components"; export const AuditLogsPage = () => { @@ -11,11 +13,11 @@ export const AuditLogsPage = () => {
-
-
-

Audit Logs

-
-
+
+
diff --git a/frontend/src/pages/organization/AuditLogsPage/route.tsx b/frontend/src/pages/organization/AuditLogsPage/route.tsx index 5123ffe64..11b2eea70 100644 --- a/frontend/src/pages/organization/AuditLogsPage/route.tsx +++ b/frontend/src/pages/organization/AuditLogsPage/route.tsx @@ -1,9 +1,23 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { AuditLogsPage } from "./AuditLogsPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/audit-logs" + "/_authenticate/_inject-org-details/_org-layout/organization/audit-logs" )({ - component: AuditLogsPage + component: AuditLogsPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: "Audit Logs" + } + ] + }) }); diff --git a/frontend/src/pages/organization/BillingPage/route.tsx b/frontend/src/pages/organization/BillingPage/route.tsx index d699c39bf..d76f26195 100644 --- a/frontend/src/pages/organization/BillingPage/route.tsx +++ b/frontend/src/pages/organization/BillingPage/route.tsx @@ -3,7 +3,7 @@ import { createFileRoute } from "@tanstack/react-router"; import { BillingPage } from "./BillingPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/billing" + "/_authenticate/_inject-org-details/_org-layout/organization/billing" )({ component: BillingPage }); diff --git a/frontend/src/pages/organization/CertManagerOverviewPage/route.tsx b/frontend/src/pages/organization/CertManagerOverviewPage/route.tsx index a4e8bb63c..92fd906e8 100644 --- a/frontend/src/pages/organization/CertManagerOverviewPage/route.tsx +++ b/frontend/src/pages/organization/CertManagerOverviewPage/route.tsx @@ -1,9 +1,23 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { CertManagerOverviewPage } from "./CertManagerOverviewPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview" + "/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview" )({ - component: CertManagerOverviewPage + component: CertManagerOverviewPage, + context: () => ({ + breadcrumbs: [ + { + label: "Products", + icon: () => + }, + { + label: "Cert Management", + link: linkOptions({ to: "/organization/cert-manager/overview" }) + } + ] + }) }); diff --git a/frontend/src/pages/organization/GroupDetailsByIDPage/GroupDetailsByIDPage.tsx b/frontend/src/pages/organization/GroupDetailsByIDPage/GroupDetailsByIDPage.tsx index cf2ef0fad..4cda2c61d 100644 --- a/frontend/src/pages/organization/GroupDetailsByIDPage/GroupDetailsByIDPage.tsx +++ b/frontend/src/pages/organization/GroupDetailsByIDPage/GroupDetailsByIDPage.tsx @@ -1,7 +1,5 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -15,6 +13,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Spinner, Tooltip } from "@app/components/v2"; @@ -83,34 +82,17 @@ const Page = () => { return (
{data && ( -
- -
-

{data.group.name}

+
+
- +
- + {(isAllowed) => ( {
-
+
diff --git a/frontend/src/pages/organization/GroupDetailsByIDPage/route.tsx b/frontend/src/pages/organization/GroupDetailsByIDPage/route.tsx index 7814110e6..83ead0221 100644 --- a/frontend/src/pages/organization/GroupDetailsByIDPage/route.tsx +++ b/frontend/src/pages/organization/GroupDetailsByIDPage/route.tsx @@ -1,9 +1,27 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { GroupDetailsByIDPage } from "./GroupDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/groups/$groupId" + "/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId" )({ - component: GroupDetailsByIDPage + component: GroupDetailsByIDPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: "Access Control", + link: linkOptions({ to: "/organization/access-management" }) + }, + { + label: "groups" + } + ] + }) }); diff --git a/frontend/src/pages/organization/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx b/frontend/src/pages/organization/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx index 246cefce1..5fff4d474 100644 --- a/frontend/src/pages/organization/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx +++ b/frontend/src/pages/organization/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx @@ -1,8 +1,6 @@ import { useState } from "react"; import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -16,6 +14,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -165,30 +164,13 @@ const Page = () => { return (
{data && ( -
- -
-

{data.identity.name}

+
+
- +
@@ -257,7 +239,7 @@ const Page = () => {
-
+
diff --git a/frontend/src/pages/organization/IdentityDetailsByIDPage/route.tsx b/frontend/src/pages/organization/IdentityDetailsByIDPage/route.tsx index de43184d3..20edc25c1 100644 --- a/frontend/src/pages/organization/IdentityDetailsByIDPage/route.tsx +++ b/frontend/src/pages/organization/IdentityDetailsByIDPage/route.tsx @@ -1,9 +1,27 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { IdentityDetailsByIDPage } from "./IdentityDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/identities/$identityId" + "/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId" )({ - component: IdentityDetailsByIDPage + component: IdentityDetailsByIDPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: "Access Control", + link: linkOptions({ to: "/organization/access-management" }) + }, + { + label: "identities" + } + ] + }) }); diff --git a/frontend/src/pages/organization/KmsOverviewPage/route.tsx b/frontend/src/pages/organization/KmsOverviewPage/route.tsx index 3c9f96924..dcce98bd4 100644 --- a/frontend/src/pages/organization/KmsOverviewPage/route.tsx +++ b/frontend/src/pages/organization/KmsOverviewPage/route.tsx @@ -1,9 +1,23 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { KmsOverviewPage } from "./KmsOverviewPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/kms/overview" + "/_authenticate/_inject-org-details/_org-layout/organization/kms/overview" )({ - component: KmsOverviewPage + component: KmsOverviewPage, + context: () => ({ + breadcrumbs: [ + { + label: "Products", + icon: () => + }, + { + label: "KMS", + link: linkOptions({ to: "/organization/kms/overview" }) + } + ] + }) }); diff --git a/frontend/src/pages/organization/NoOrgPage/route.tsx b/frontend/src/pages/organization/NoOrgPage/route.tsx index 70c49f387..5c5573dc8 100644 --- a/frontend/src/pages/organization/NoOrgPage/route.tsx +++ b/frontend/src/pages/organization/NoOrgPage/route.tsx @@ -3,7 +3,7 @@ import { createFileRoute } from "@tanstack/react-router"; import { NoOrgPage } from "./NoOrgPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/none" + "/_authenticate/_inject-org-details/_org-layout/organization/none" )({ component: NoOrgPage }); diff --git a/frontend/src/pages/organization/RoleByIDPage/RoleByIDPage.tsx b/frontend/src/pages/organization/RoleByIDPage/RoleByIDPage.tsx index a8443957f..a3165709a 100644 --- a/frontend/src/pages/organization/RoleByIDPage/RoleByIDPage.tsx +++ b/frontend/src/pages/organization/RoleByIDPage/RoleByIDPage.tsx @@ -1,7 +1,5 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -14,6 +12,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -78,31 +77,14 @@ export const Page = () => { return (
{data && ( -
- -
-

{data.name}

+
+ {isCustomRole && (
- +
@@ -144,7 +126,7 @@ export const Page = () => {
)} -
+
diff --git a/frontend/src/pages/organization/RoleByIDPage/route.tsx b/frontend/src/pages/organization/RoleByIDPage/route.tsx index d0d65f661..bf6ba92d1 100644 --- a/frontend/src/pages/organization/RoleByIDPage/route.tsx +++ b/frontend/src/pages/organization/RoleByIDPage/route.tsx @@ -1,9 +1,27 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RoleByIDPage } from "./RoleByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/roles/$roleId" + "/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId" )({ - component: RoleByIDPage + component: RoleByIDPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: "Access Control", + link: linkOptions({ to: "/organization/access-management" }) + }, + { + label: "Roles" + } + ] + }) }); diff --git a/frontend/src/pages/organization/SecretManagerOverviewPage/SecretManagerOverviewPage.tsx b/frontend/src/pages/organization/SecretManagerOverviewPage/SecretManagerOverviewPage.tsx index 1588ae970..7d3f7009a 100644 --- a/frontend/src/pages/organization/SecretManagerOverviewPage/SecretManagerOverviewPage.tsx +++ b/frontend/src/pages/organization/SecretManagerOverviewPage/SecretManagerOverviewPage.tsx @@ -22,7 +22,15 @@ import { UpgradePlanModal } from "@app/components/license/UpgradePlanModal"; import { createNotification } from "@app/components/notifications"; import { OrgPermissionCan } from "@app/components/permissions"; import { NewProjectModal } from "@app/components/projects"; -import { Button, IconButton, Input, Pagination, Skeleton, Tooltip } from "@app/components/v2"; +import { + Button, + IconButton, + Input, + PageHeader, + Pagination, + Skeleton, + Tooltip +} from "@app/components/v2"; import { OrgPermissionActions, OrgPermissionSubjects, @@ -50,13 +58,6 @@ enum ProjectOrderBy { Name = "name" } -const formatTitle = (type: ProjectType) => { - if (type === ProjectType.SecretManager) return "Secret Management"; - if (type === ProjectType.CertificateManager) return "Cert Management"; - if (type === ProjectType.KMS) return "Key Management"; - return "SSH"; -}; - const formatDescription = (type: ProjectType) => { if (type === ProjectType.SecretManager) return "Securely store, manage, and rotate various application secrets, such as database credentials, API keys, etc."; @@ -365,13 +366,13 @@ export const ProductOverviewPage = ({ type }: Props) => { } return ( -
+
{t("common.head-title", { title: t("settings.members.title") })} {!serverDetails?.redisConfigured && ( -
+

Announcements

{
)} -
-
-

{formatTitle(type)}

-
-
-

{formatDescription(type)}

-
-
+
+ +
({ + breadcrumbs: [ + { + label: "Products", + icon: () => + }, + { + label: "Secret Management" + } + ] + }) }); diff --git a/frontend/src/pages/organization/SecretScanningPage/SecretScanningPage.tsx b/frontend/src/pages/organization/SecretScanningPage/SecretScanningPage.tsx index e85af2044..2b07ee2a3 100644 --- a/frontend/src/pages/organization/SecretScanningPage/SecretScanningPage.tsx +++ b/frontend/src/pages/organization/SecretScanningPage/SecretScanningPage.tsx @@ -5,7 +5,7 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { useSearch } from "@tanstack/react-router"; import { OrgPermissionCan } from "@app/components/permissions"; -import { Button, NoticeBanner, Pagination } from "@app/components/v2"; +import { Button, NoticeBanner, PageHeader, Pagination } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; import { OrgPermissionActions, @@ -111,11 +111,11 @@ export const SecretScanningPage = withPermission(
-
-
Secret Scanning
-
- Automatically monitor your GitHub activity and prevent secret leaks -
+
+ {config.isSecretScanningDisabled && ( We are working on improving the performance of secret scanning due to increased diff --git a/frontend/src/pages/organization/SecretScanningPage/route.tsx b/frontend/src/pages/organization/SecretScanningPage/route.tsx index d77c728fa..75ad085e8 100644 --- a/frontend/src/pages/organization/SecretScanningPage/route.tsx +++ b/frontend/src/pages/organization/SecretScanningPage/route.tsx @@ -1,4 +1,6 @@ -import { createFileRoute, stripSearchParams } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions, stripSearchParams } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,10 +12,10 @@ const SecretScanningQueryParams = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/secret-scanning" + "/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning" )({ - component: SecretScanningPage, validateSearch: zodValidator(SecretScanningQueryParams), + component: SecretScanningPage, search: { middlewares: [ stripSearchParams({ @@ -21,5 +23,17 @@ export const Route = createFileRoute( state: "" }) ] - } + }, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/" }) + }, + { + label: "Secret Scanning" + } + ] + }) }); diff --git a/frontend/src/pages/organization/SecretSharingPage/SecretSharingPage.tsx b/frontend/src/pages/organization/SecretSharingPage/SecretSharingPage.tsx index f5aa294f8..2eee282db 100644 --- a/frontend/src/pages/organization/SecretSharingPage/SecretSharingPage.tsx +++ b/frontend/src/pages/organization/SecretSharingPage/SecretSharingPage.tsx @@ -3,6 +3,8 @@ import { useTranslation } from "react-i18next"; import { faArrowUpRightFromSquare } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { PageHeader } from "@app/components/v2"; + import { ShareSecretSection } from "./components"; export const SecretSharingPage = () => { @@ -18,28 +20,25 @@ export const SecretSharingPage = () => {
-
-
-
-

Secret Sharing

-

Share secrets securely using a shareable link

-
- -
+
diff --git a/frontend/src/pages/organization/SecretSharingPage/route.tsx b/frontend/src/pages/organization/SecretSharingPage/route.tsx index fec2f8925..0a3a52b1d 100644 --- a/frontend/src/pages/organization/SecretSharingPage/route.tsx +++ b/frontend/src/pages/organization/SecretSharingPage/route.tsx @@ -1,9 +1,23 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { SecretSharingPage } from "./SecretSharingPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/secret-sharing" + "/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing" )({ - component: SecretSharingPage + component: SecretSharingPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/" }) + }, + { + label: "secret sharing" + } + ] + }) }); diff --git a/frontend/src/pages/organization/SettingsPage/SettingsPage.tsx b/frontend/src/pages/organization/SettingsPage/SettingsPage.tsx index 32ee0ae1c..263672313 100644 --- a/frontend/src/pages/organization/SettingsPage/SettingsPage.tsx +++ b/frontend/src/pages/organization/SettingsPage/SettingsPage.tsx @@ -1,6 +1,8 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; +import { PageHeader } from "@app/components/v2"; + import { OrgTabGroup } from "./components"; export const SettingsPage = () => { @@ -11,11 +13,9 @@ export const SettingsPage = () => { {t("common.head-title", { title: t("settings.org.title") })} -
-
-
-

{t("settings.org.title")}

-
+
+
+
diff --git a/frontend/src/pages/organization/SettingsPage/route.tsx b/frontend/src/pages/organization/SettingsPage/route.tsx index d19733c89..803191e1f 100644 --- a/frontend/src/pages/organization/SettingsPage/route.tsx +++ b/frontend/src/pages/organization/SettingsPage/route.tsx @@ -1,4 +1,6 @@ -import { createFileRoute, stripSearchParams } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions, stripSearchParams } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,11 +11,23 @@ const SettingsPageQueryParams = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/settings" + "/_authenticate/_inject-org-details/_org-layout/organization/settings" )({ component: SettingsPage, validateSearch: zodValidator(SettingsPageQueryParams), search: { middlewares: [stripSearchParams({ selectedTab: "" })] - } + }, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/" }) + }, + { + label: "Settings" + } + ] + }) }); diff --git a/frontend/src/pages/organization/SshOverviewPage/route.tsx b/frontend/src/pages/organization/SshOverviewPage/route.tsx index 4fd99a812..9ae5ebe7e 100644 --- a/frontend/src/pages/organization/SshOverviewPage/route.tsx +++ b/frontend/src/pages/organization/SshOverviewPage/route.tsx @@ -1,9 +1,23 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { SshOverviewPage } from "./SshOverviewPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/ssh/overview" + "/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview" )({ - component: SshOverviewPage + component: SshOverviewPage, + context: () => ({ + breadcrumbs: [ + { + label: "Products", + icon: () => + }, + { + label: "SSH", + link: linkOptions({ to: "/organization/ssh/overview" }) + } + ] + }) }); diff --git a/frontend/src/pages/organization/UserDetailsByIDPage/UserDetailsByIDPage.tsx b/frontend/src/pages/organization/UserDetailsByIDPage/UserDetailsByIDPage.tsx index 2a4e9ca57..ed0b46888 100644 --- a/frontend/src/pages/organization/UserDetailsByIDPage/UserDetailsByIDPage.tsx +++ b/frontend/src/pages/organization/UserDetailsByIDPage/UserDetailsByIDPage.tsx @@ -1,7 +1,5 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -15,6 +13,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -118,143 +117,132 @@ const Page = withPermission( return (
{membership && ( -
- -
-

- {membership.user.firstName || membership.user.lastName +

+ - {userId !== membership.user.id && ( - - -
- - - -
-
- - - {(isAllowed) => ( - - handlePopUpOpen("orgMembership", { - membershipId: membership.id, - role: membership.role, - roleId: membership.roleId - }) - } - disabled={!isAllowed} - > - Edit User - - )} - - - {(isAllowed) => ( - { - if (currentOrg?.scimEnabled) { - createNotification({ - text: "You cannot manage users from Infisical when SCIM is enabled for your organization", - type: "error" - }); - return; + : "-" + } + > +
+ {userId !== membership.user.id && ( + + +
+ + + +
+
+ + + {(isAllowed) => ( + + handlePopUpOpen("orgMembership", { + membershipId: membership.id, + role: membership.role, + roleId: membership.roleId + }) } - - if (!membership.isActive) { - // activate user - await updateOrgMembership({ - organizationId: orgId, - membershipId, - isActive: true - }); - - return; + disabled={!isAllowed} + > + Edit User + + )} + + + {(isAllowed) => ( + { + if (currentOrg?.scimEnabled) { + createNotification({ + text: "You cannot manage users from Infisical when SCIM is enabled for your organization", + type: "error" + }); + return; + } - // deactivate user - handlePopUpOpen("deactivateMember", { - orgMembershipId: membershipId, - username: membership.user.username - }); - }} - disabled={!isAllowed} - > - {`${membership.isActive ? "Deactivate" : "Activate"} User`} - - )} - - - {(isAllowed) => ( - { - if (currentOrg?.scimEnabled) { - createNotification({ - text: "You cannot manage users from Infisical when SCIM is enabled for your organization", - type: "error" + if (!membership.isActive) { + // activate user + await updateOrgMembership({ + organizationId: orgId, + membershipId, + isActive: true + }); + + return; + } + + // deactivate user + handlePopUpOpen("deactivateMember", { + orgMembershipId: membershipId, + username: membership.user.username }); - return; - } + }} + disabled={!isAllowed} + > + {`${membership.isActive ? "Deactivate" : "Activate"} User`} + + )} + + + {(isAllowed) => ( + { + if (currentOrg?.scimEnabled) { + createNotification({ + text: "You cannot manage users from Infisical when SCIM is enabled for your organization", + type: "error" + }); + return; + } - handlePopUpOpen("removeMember", { - orgMembershipId: membershipId, - username: membership.user.username - }); - }} - disabled={!isAllowed} - > - Remove User - - )} - - -
- )} -
+ handlePopUpOpen("removeMember", { + orgMembershipId: membershipId, + username: membership.user.username + }); + }} + disabled={!isAllowed} + > + Remove User +
+ )} +
+
+
+ )} +
+
diff --git a/frontend/src/pages/organization/UserDetailsByIDPage/route.tsx b/frontend/src/pages/organization/UserDetailsByIDPage/route.tsx index 37bac8f73..2792bebfc 100644 --- a/frontend/src/pages/organization/UserDetailsByIDPage/route.tsx +++ b/frontend/src/pages/organization/UserDetailsByIDPage/route.tsx @@ -1,9 +1,27 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { UserDetailsByIDPage } from "./UserDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/organization/_layout/members/$membershipId" + "/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId" )({ - component: UserDetailsByIDPage + component: UserDetailsByIDPage, + context: () => ({ + breadcrumbs: [ + { + label: "Home", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: "Access Control", + link: linkOptions({ to: "/organization/access-management" }) + }, + { + label: "Users" + } + ] + }) }); diff --git a/frontend/src/pages/organization/layout.tsx b/frontend/src/pages/organization/layout.tsx index 646a27ff3..79bdbf216 100644 --- a/frontend/src/pages/organization/layout.tsx +++ b/frontend/src/pages/organization/layout.tsx @@ -2,6 +2,6 @@ import { createFileRoute } from "@tanstack/react-router"; import { OrganizationLayout } from "@app/layouts/OrganizationLayout"; -export const Route = createFileRoute("/_authenticate/_inject-org-details/organization/_layout")({ +export const Route = createFileRoute("/_authenticate/_inject-org-details/_org-layout")({ component: OrganizationLayout }); diff --git a/frontend/src/pages/project/AccessControlPage/AccessControlPage.tsx b/frontend/src/pages/project/AccessControlPage/AccessControlPage.tsx index 2fbc9e67a..219de8305 100644 --- a/frontend/src/pages/project/AccessControlPage/AccessControlPage.tsx +++ b/frontend/src/pages/project/AccessControlPage/AccessControlPage.tsx @@ -2,9 +2,8 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; import { useNavigate, useSearch } from "@tanstack/react-router"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub, useWorkspace } from "@app/context"; -import { getProjectTitle } from "@app/helpers/project"; import { withProjectPermission } from "@app/hoc"; import { ProjectType } from "@app/hooks/api/workspace/types"; import { ProjectAccessControlTabs } from "@app/types/project"; @@ -38,11 +37,11 @@ const Page = withProjectPermission( return (
-
-

- {currentWorkspace?.type ? getProjectTitle(currentWorkspace?.type) : "Project"} Access - Control -

+
+ Users diff --git a/frontend/src/pages/project/AccessControlPage/route-cert-manager.tsx b/frontend/src/pages/project/AccessControlPage/route-cert-manager.tsx index 1bea9fc9e..b5bb55e71 100644 --- a/frontend/src/pages/project/AccessControlPage/route-cert-manager.tsx +++ b/frontend/src/pages/project/AccessControlPage/route-cert-manager.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -11,8 +11,24 @@ const AccessControlPageQuerySchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management" )({ component: AccessControlPage, - validateSearch: zodValidator(AccessControlPageQuerySchema) + validateSearch: zodValidator(AccessControlPageQuerySchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/cert-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/project/AccessControlPage/route-kms.tsx b/frontend/src/pages/project/AccessControlPage/route-kms.tsx index 1262dda77..c77c24b4d 100644 --- a/frontend/src/pages/project/AccessControlPage/route-kms.tsx +++ b/frontend/src/pages/project/AccessControlPage/route-kms.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -11,8 +11,24 @@ const AccessControlPageQuerySchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management" + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management" )({ component: AccessControlPage, - validateSearch: zodValidator(AccessControlPageQuerySchema) + validateSearch: zodValidator(AccessControlPageQuerySchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/kms/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/project/AccessControlPage/route-secret-manager.tsx b/frontend/src/pages/project/AccessControlPage/route-secret-manager.tsx index 4b9bb1b9d..b3c0bec00 100644 --- a/frontend/src/pages/project/AccessControlPage/route-secret-manager.tsx +++ b/frontend/src/pages/project/AccessControlPage/route-secret-manager.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -11,8 +11,24 @@ const AccessControlPageQuerySchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management" )({ component: AccessControlPage, - validateSearch: zodValidator(AccessControlPageQuerySchema) + validateSearch: zodValidator(AccessControlPageQuerySchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/secret-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/project/AccessControlPage/route-ssh.tsx b/frontend/src/pages/project/AccessControlPage/route-ssh.tsx index 49e53aa63..897f6214b 100644 --- a/frontend/src/pages/project/AccessControlPage/route-ssh.tsx +++ b/frontend/src/pages/project/AccessControlPage/route-ssh.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -11,8 +11,24 @@ const AccessControlPageQuerySchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management" )({ component: AccessControlPage, - validateSearch: zodValidator(AccessControlPageQuerySchema) + validateSearch: zodValidator(AccessControlPageQuerySchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/ssh/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/project/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx b/frontend/src/pages/project/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx index 865a79206..80ae5dd2e 100644 --- a/frontend/src/pages/project/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx +++ b/frontend/src/pages/project/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx @@ -1,16 +1,13 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; import { subject } from "@casl/ability"; -import { faChevronLeft } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; -import { format } from "date-fns"; +import { formatRelative } from "date-fns"; import { createNotification } from "@app/components/notifications"; import { ProjectPermissionCan } from "@app/components/permissions"; -import { Button, DeleteActionModal, EmptyState, Spinner } from "@app/components/v2"; +import { Button, DeleteActionModal, EmptyState, PageHeader, Spinner } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub, useWorkspace } from "@app/context"; -import { getProjectTitle } from "@app/helpers/project"; import { usePopUp } from "@app/hooks"; import { useDeleteIdentityFromWorkspace, @@ -82,78 +79,37 @@ const Page = () => { } return ( -
-
- -
+
{identityMembershipDetails ? ( <> -
-
-
-

- Project Identity Access -

-
- +
+ + {(isAllowed) => ( + - )} - -
-
-
-
- Name - {identityMembershipDetails && ( -

- {identityMembershipDetails?.identity?.name} -

- )} -
-
-
- Joined on{" "} - {identityMembershipDetails?.createdAt && - format(new Date(identityMembershipDetails?.createdAt || ""), "yyyy-MM-dd")} -
+ Remove Identity + + )} +
-
+ { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/cert-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Identities" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/IdentityDetailsByIDPage/route-kms.tsx b/frontend/src/pages/project/IdentityDetailsByIDPage/route-kms.tsx index 77f0e3d44..cc7f91492 100644 --- a/frontend/src/pages/project/IdentityDetailsByIDPage/route-kms.tsx +++ b/frontend/src/pages/project/IdentityDetailsByIDPage/route-kms.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { IdentityDetailsByIDPage } from "./IdentityDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId" + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId" )({ - component: IdentityDetailsByIDPage + component: IdentityDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/kms/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Identities" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/IdentityDetailsByIDPage/route-secret-manager.tsx b/frontend/src/pages/project/IdentityDetailsByIDPage/route-secret-manager.tsx index 66e1245e2..ceb4bd51c 100644 --- a/frontend/src/pages/project/IdentityDetailsByIDPage/route-secret-manager.tsx +++ b/frontend/src/pages/project/IdentityDetailsByIDPage/route-secret-manager.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { IdentityDetailsByIDPage } from "./IdentityDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId" )({ - component: IdentityDetailsByIDPage + component: IdentityDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/secret-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Identities" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/IdentityDetailsByIDPage/route-ssh.tsx b/frontend/src/pages/project/IdentityDetailsByIDPage/route-ssh.tsx index 8159205c9..9c36de469 100644 --- a/frontend/src/pages/project/IdentityDetailsByIDPage/route-ssh.tsx +++ b/frontend/src/pages/project/IdentityDetailsByIDPage/route-ssh.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { IdentityDetailsByIDPage } from "./IdentityDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId" )({ - component: IdentityDetailsByIDPage + component: IdentityDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/ssh/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Identities" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/MemberDetailsByIDPage/MemberDetailsByIDPage.tsx b/frontend/src/pages/project/MemberDetailsByIDPage/MemberDetailsByIDPage.tsx index c3a714ba9..790214141 100644 --- a/frontend/src/pages/project/MemberDetailsByIDPage/MemberDetailsByIDPage.tsx +++ b/frontend/src/pages/project/MemberDetailsByIDPage/MemberDetailsByIDPage.tsx @@ -1,21 +1,18 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; -import { format } from "date-fns"; +import { formatRelative } from "date-fns"; import { UpgradePlanModal } from "@app/components/license/UpgradePlanModal"; import { createNotification } from "@app/components/notifications"; import { ProjectPermissionCan } from "@app/components/permissions"; -import { Button, DeleteActionModal, EmptyState, Spinner } from "@app/components/v2"; +import { Button, DeleteActionModal, EmptyState, PageHeader, Spinner } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub, useOrganization, useWorkspace } from "@app/context"; -import { getProjectTitle } from "@app/helpers/project"; import { usePopUp } from "@app/hooks"; import { useDeleteUserFromWorkspace, useGetWorkspaceUserDetails } from "@app/hooks/api"; @@ -82,77 +79,37 @@ export const Page = () => { } return ( -
-
- -
+
{membershipDetails ? ( <> -
-
-
-

Project User Access

-
- - {(isAllowed) => ( - - )} - -
-
-
-
- Name - {membershipDetails && ( -

- {membershipDetails.user.firstName || membershipDetails.user.lastName - ? `${membershipDetails.user.firstName} ${membershipDetails.user.lastName}` - : "-"} -

- )} -
-
- Email - {membershipDetails &&

{membershipDetails?.user?.email}

} -
-
-
- Joined on{" "} - {membershipDetails?.createdAt && - format(new Date(membershipDetails?.createdAt || ""), "yyyy-MM-dd")} -
-
-
+ + + {(isAllowed) => ( + + )} + + { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/cert-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Users" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/MemberDetailsByIDPage/route-kms.tsx b/frontend/src/pages/project/MemberDetailsByIDPage/route-kms.tsx index 95e7fd025..cba632e6c 100644 --- a/frontend/src/pages/project/MemberDetailsByIDPage/route-kms.tsx +++ b/frontend/src/pages/project/MemberDetailsByIDPage/route-kms.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { MemberDetailsByIDPage } from "./MemberDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId" + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId" )({ - component: MemberDetailsByIDPage + component: MemberDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/kms/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Users" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/MemberDetailsByIDPage/route-secret-manager.tsx b/frontend/src/pages/project/MemberDetailsByIDPage/route-secret-manager.tsx index f5d826e20..e37fb4879 100644 --- a/frontend/src/pages/project/MemberDetailsByIDPage/route-secret-manager.tsx +++ b/frontend/src/pages/project/MemberDetailsByIDPage/route-secret-manager.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { MemberDetailsByIDPage } from "./MemberDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId" )({ - component: MemberDetailsByIDPage + component: MemberDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/secret-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Users" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/MemberDetailsByIDPage/route-ssh.tsx b/frontend/src/pages/project/MemberDetailsByIDPage/route-ssh.tsx index 94b597179..8239f06eb 100644 --- a/frontend/src/pages/project/MemberDetailsByIDPage/route-ssh.tsx +++ b/frontend/src/pages/project/MemberDetailsByIDPage/route-ssh.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { MemberDetailsByIDPage } from "./MemberDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId" )({ - component: MemberDetailsByIDPage + component: MemberDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/ssh/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Users" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/RoleDetailsBySlugPage.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/RoleDetailsBySlugPage.tsx index 522ac4434..cca278230 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/RoleDetailsBySlugPage.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/RoleDetailsBySlugPage.tsx @@ -1,7 +1,5 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -14,6 +12,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub, useWorkspace } from "@app/context"; @@ -83,38 +82,18 @@ const Page = () => { return (
{data && ( -
- -
-

{data.name}

+
+ {isCustomRole && (
- +
- + {
)} -
+
diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/route-cert-manager.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/route-cert-manager.tsx index 7f9ec6791..b12d84c7f 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/route-cert-manager.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/route-cert-manager.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RoleDetailsBySlugPage } from "./RoleDetailsBySlugPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug" )({ - component: RoleDetailsBySlugPage + component: RoleDetailsBySlugPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/cert-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Roles" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/route-kms.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/route-kms.tsx index 1677d9401..307a191d9 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/route-kms.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/route-kms.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RoleDetailsBySlugPage } from "./RoleDetailsBySlugPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug" + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug" )({ - component: RoleDetailsBySlugPage + component: RoleDetailsBySlugPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/kms/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Roles" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/route-secret-manager.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/route-secret-manager.tsx index 4a2f18750..e7d9034c1 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/route-secret-manager.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/route-secret-manager.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RoleDetailsBySlugPage } from "./RoleDetailsBySlugPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug" )({ - component: RoleDetailsBySlugPage + component: RoleDetailsBySlugPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/secret-manager/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Roles" + } + ] + }; + } }); diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/route-ssh.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/route-ssh.tsx index 73b5826d4..ce97635e6 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/route-ssh.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/route-ssh.tsx @@ -1,9 +1,28 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RoleDetailsBySlugPage } from "./RoleDetailsBySlugPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug" )({ - component: RoleDetailsBySlugPage + component: RoleDetailsBySlugPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Access Control", + link: linkOptions({ + to: "/ssh/$projectId/access-management", + params: { + projectId: params.projectId + } + }) + }, + { + label: "Roles" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/IPAllowlistPage/route.tsx b/frontend/src/pages/secret-manager/IPAllowlistPage/route.tsx index a69050df2..891929e83 100644 --- a/frontend/src/pages/secret-manager/IPAllowlistPage/route.tsx +++ b/frontend/src/pages/secret-manager/IPAllowlistPage/route.tsx @@ -3,7 +3,7 @@ import { createFileRoute } from "@tanstack/react-router"; import { IPAllowListPage } from "./IPAllowlistPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist" )({ component: () => IPAllowListPage }); diff --git a/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/IntegrationsDetailsByIDPage.tsx b/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/IntegrationsDetailsByIDPage.tsx index 84150e792..ba6b8834e 100644 --- a/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/IntegrationsDetailsByIDPage.tsx +++ b/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/IntegrationsDetailsByIDPage.tsx @@ -1,8 +1,8 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { faChevronLeft, faEllipsis, faRefresh, faTrash } from "@fortawesome/free-solid-svg-icons"; +import { faRefresh, faTrash } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { useNavigate, useParams } from "@tanstack/react-router"; +import { useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; import { OrgPermissionCan } from "@app/components/permissions"; @@ -13,6 +13,7 @@ import { DropdownMenuItem, DropdownMenuTrigger, EmptyState, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -28,7 +29,6 @@ import { integrationSlugNameMapping } from "./IntegrationsDetailsByIDPage.utils" export const IntegrationDetailsByIDPage = () => { const { t } = useTranslation(); - const navigate = useNavigate(); const integrationId = useParams({ from: ROUTE_PATHS.SecretManager.IntegrationDetailsByIDPage.id, select: (el) => el.integrationId @@ -50,38 +50,21 @@ export const IntegrationDetailsByIDPage = () => { -
+
{integration ? ( -
- -
-

- {integrationSlugNameMapping[integration.integration]} Integration -

- +
- + { await syncIntegration({ @@ -119,13 +102,13 @@ export const IntegrationDetailsByIDPage = () => {
-
-
+ +
-
+
diff --git a/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/route.tsx b/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/route.tsx index 14661061d..94290372e 100644 --- a/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/route.tsx +++ b/frontend/src/pages/secret-manager/IntegrationsDetailsByIDPage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { IntegrationDetailsByIDPage } from "./IntegrationsDetailsByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId" )({ - component: IntegrationDetailsByIDPage + component: IntegrationDetailsByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Details" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/IntegrationsListPage/IntegrationsListPage.tsx b/frontend/src/pages/secret-manager/IntegrationsListPage/IntegrationsListPage.tsx index 5d87bbcf6..6ee64296e 100644 --- a/frontend/src/pages/secret-manager/IntegrationsListPage/IntegrationsListPage.tsx +++ b/frontend/src/pages/secret-manager/IntegrationsListPage/IntegrationsListPage.tsx @@ -163,7 +163,7 @@ const Page = () => { ); return ( -
+
{view === IntegrationView.List ? ( )}
-
+
{onViewActiveIntegrations && (
-
+
{isLoading && Array.from({ length: 12 }).map((_, index) => ( diff --git a/frontend/src/pages/secret-manager/IntegrationsListPage/components/FrameworkIntegrationSection/FrameworkIntegrationSection.tsx b/frontend/src/pages/secret-manager/IntegrationsListPage/components/FrameworkIntegrationSection/FrameworkIntegrationSection.tsx index 282b30311..211759dcc 100644 --- a/frontend/src/pages/secret-manager/IntegrationsListPage/components/FrameworkIntegrationSection/FrameworkIntegrationSection.tsx +++ b/frontend/src/pages/secret-manager/IntegrationsListPage/components/FrameworkIntegrationSection/FrameworkIntegrationSection.tsx @@ -12,11 +12,11 @@ export const FrameworkIntegrationSection = () => { return ( <> -
+

{t("integrations.framework-integrations")}

{t("integrations.click-to-setup")}

-
+
{sortedFrameworks.map((framework) => ( { return ( <> -
+

Infrastructure Integrations

Click on of the integration to read the documentation.

-
+
{sortedIntegrations.map((integration) => ( -
-

Integrations

-

Manage integrations with third-party services.

-
+
+

Active Integrations

diff --git a/frontend/src/pages/secret-manager/IntegrationsListPage/route.tsx b/frontend/src/pages/secret-manager/IntegrationsListPage/route.tsx index fbea3d346..bb0085aea 100644 --- a/frontend/src/pages/secret-manager/IntegrationsListPage/route.tsx +++ b/frontend/src/pages/secret-manager/IntegrationsListPage/route.tsx @@ -3,7 +3,17 @@ import { createFileRoute } from "@tanstack/react-router"; import { IntegrationsListPage } from "./IntegrationsListPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/" )({ - component: IntegrationsListPage + component: IntegrationsListPage, + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/OverviewPage/OverviewPage.tsx b/frontend/src/pages/secret-manager/OverviewPage/OverviewPage.tsx index 308f5f1a6..6f9d4c9b2 100644 --- a/frontend/src/pages/secret-manager/OverviewPage/OverviewPage.tsx +++ b/frontend/src/pages/secret-manager/OverviewPage/OverviewPage.tsx @@ -19,7 +19,6 @@ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { Link, useNavigate, useRouter, useSearch } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; -import NavHeader from "@app/components/navigation/NavHeader"; import { createNotification } from "@app/components/notifications"; import { ProjectPermissionCan } from "@app/components/permissions"; import { @@ -34,6 +33,7 @@ import { IconButton, Modal, ModalContent, + PageHeader, Pagination, Table, TableContainer, @@ -661,22 +661,17 @@ export const OverviewPage = () => { ); return ( -
+
{t("common.head-title", { title: t("dashboard.title") })} - - -
-
- -
-
-
-
-

Secrets Overview

+
+
+ Inject your secrets using { > more - . + . Click the Explore button to view the secret details section.

-
-
-
- -
- {userAvailableEnvs.length > 0 && ( - - - - - - - - - - {/* + } + /> +
+
+ +
+ {userAvailableEnvs.length > 0 && ( + + + + + + + + + + {/* */} - Filter project resources - { - e.preventDefault(); - handleToggleRowType(RowType.Folder); - }} - icon={filter[RowType.Folder] && } - iconPos="right" - > -
- - Folders -
-
- { - e.preventDefault(); - handleToggleRowType(RowType.DynamicSecret); - }} - icon={ - filter[RowType.DynamicSecret] && - } - iconPos="right" - > -
- - Dynamic Secrets -
-
- { - e.preventDefault(); - handleToggleRowType(RowType.Secret); - }} - icon={filter[RowType.Secret] && } - iconPos="right" - > -
- - Secrets -
-
- Choose visible environments - {userAvailableEnvs.map((availableEnv) => { - const { id: envId, name } = availableEnv; + Filter project resources + { + e.preventDefault(); + handleToggleRowType(RowType.Folder); + }} + icon={filter[RowType.Folder] && } + iconPos="right" + > +
+ + Folders +
+
+ { + e.preventDefault(); + handleToggleRowType(RowType.DynamicSecret); + }} + icon={filter[RowType.DynamicSecret] && } + iconPos="right" + > +
+ + Dynamic Secrets +
+
+ { + e.preventDefault(); + handleToggleRowType(RowType.Secret); + }} + icon={filter[RowType.Secret] && } + iconPos="right" + > +
+ + Secrets +
+
+ Choose visible environments + {userAvailableEnvs.map((availableEnv) => { + const { id: envId, name } = availableEnv; - const isEnvSelected = visibleEnvs.map((env) => env.id).includes(envId); - return ( - { - e.preventDefault(); - handleEnvSelect(envId); - }} - key={envId} - disabled={visibleEnvs?.length === 1} - icon={isEnvSelected && } - iconPos="right" - > -
{name}
-
- ); - })} + const isEnvSelected = visibleEnvs.map((env) => env.id).includes(envId); + return ( + { + e.preventDefault(); + handleEnvSelect(envId); + }} + key={envId} + disabled={visibleEnvs?.length === 1} + icon={isEnvSelected && } + iconPos="right" + > +
{name}
+
+ ); + })} +
+
+ )} + + {userAvailableEnvs.length > 0 && ( +
+ + handlePopUpToggle("misc", isOpen)} + > + + + + + + +
+ + {(isAllowed) => ( + + )} + +
- )} - - {userAvailableEnvs.length > 0 && ( -
- - handlePopUpToggle("misc", isOpen)} - > - - - - - - -
- - {(isAllowed) => ( - - )} - -
-
-
-
- )} -
+
+ )}
{ : TabSection.SecretApprovalRequests; return ( -
+
{t("common.head-title", { title: t("approval.title") })} - - -
- +
+ + + + Documentation + + + + diff --git a/frontend/src/pages/secret-manager/SecretApprovalsPage/route.tsx b/frontend/src/pages/secret-manager/SecretApprovalsPage/route.tsx index 6d26a3a2f..79a5c8fa6 100644 --- a/frontend/src/pages/secret-manager/SecretApprovalsPage/route.tsx +++ b/frontend/src/pages/secret-manager/SecretApprovalsPage/route.tsx @@ -9,8 +9,18 @@ const SecretApprovalPageQueryParams = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval" )({ component: SecretApprovalsPage, - validateSearch: zodValidator(SecretApprovalPageQueryParams) + validateSearch: zodValidator(SecretApprovalPageQueryParams), + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Approvals" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/SecretDashboardPage/SecretDashboardPage.tsx b/frontend/src/pages/secret-manager/SecretDashboardPage/SecretDashboardPage.tsx index 48708d67d..daf875a78 100644 --- a/frontend/src/pages/secret-manager/SecretDashboardPage/SecretDashboardPage.tsx +++ b/frontend/src/pages/secret-manager/SecretDashboardPage/SecretDashboardPage.tsx @@ -7,7 +7,6 @@ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams, useSearch } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; -import NavHeader from "@app/components/navigation/NavHeader"; import { createNotification } from "@app/components/notifications"; import { PermissionDeniedBanner } from "@app/components/permissions"; import { @@ -67,7 +66,6 @@ const LOADER_TEXT = [ ]; const Page = () => { - const { t } = useTranslation(); const { currentWorkspace } = useWorkspace(); const navigate = useNavigate({ from: ROUTE_PATHS.SecretManager.SecretDashboardPage.path @@ -264,18 +262,6 @@ const Page = () => { state === OrderByDirection.ASC ? OrderByDirection.DESC : OrderByDirection.ASC ); - const handleEnvChange = (slug: string) => { - navigate({ - params: { - envSlug: slug - }, - search: (state) => { - const newState = { ...state, secretPath: undefined }; - return newState; - } - }); - }; - const handleTagToggle = useCallback( (tagSlug: string) => setFilter((state) => { @@ -396,21 +382,8 @@ const Page = () => { setDebouncedSearchFilter(""); }; return ( -
+
-
- -
{!isRollbackMode ? ( <> { isSnapshotCountLoading={isSnapshotCountLoading} onToggleRowType={handleToggleRowType} onClickRollbackMode={() => handlePopUpToggle("snapshots", true)} + protectedBranchPolicyName={boardPolicy?.name} />
diff --git a/frontend/src/pages/secret-manager/SecretDashboardPage/components/ActionBar/ActionBar.tsx b/frontend/src/pages/secret-manager/SecretDashboardPage/components/ActionBar/ActionBar.tsx index 81c936bc7..e4de76198 100644 --- a/frontend/src/pages/secret-manager/SecretDashboardPage/components/ActionBar/ActionBar.tsx +++ b/frontend/src/pages/secret-manager/SecretDashboardPage/components/ActionBar/ActionBar.tsx @@ -15,6 +15,7 @@ import { faFolder, faFolderPlus, faKey, + faLock, faMinusSquare, faPlus, faTrash @@ -80,6 +81,7 @@ type Props = { isVisible?: boolean; snapshotCount: number; isSnapshotCountLoading?: boolean; + protectedBranchPolicyName?: string; onSearchChange: (term: string) => void; onToggleTagFilter: (tagId: string) => void; onVisibilityToggle: () => void; @@ -101,7 +103,8 @@ export const ActionBar = ({ onToggleTagFilter, onVisibilityToggle, onClickRollbackMode, - onToggleRowType + onToggleRowType, + protectedBranchPolicyName }: Props) => { const { handlePopUpOpen, handlePopUpToggle, handlePopUpClose, popUp } = usePopUp([ "addFolder", @@ -112,9 +115,9 @@ export const ActionBar = ({ "misc", "upgradePlan" ] as const); + const isProtectedBranch = Boolean(protectedBranchPolicyName); const { subscription } = useSubscription(); const { openPopUp } = usePopUpAction(); - const { mutateAsync: createFolder } = useCreateFolder(); const { mutateAsync: deleteBatchSecretV3 } = useDeleteSecretBatch(); const { mutateAsync: moveSecrets } = useMoveSecrets(); @@ -387,6 +390,15 @@ export const ActionBar = ({
+
+ {isProtectedBranch && ( + + + + + + )} +
diff --git a/frontend/src/pages/secret-manager/SecretDashboardPage/route.tsx b/frontend/src/pages/secret-manager/SecretDashboardPage/route.tsx index 9a5821124..bfc01680f 100644 --- a/frontend/src/pages/secret-manager/SecretDashboardPage/route.tsx +++ b/frontend/src/pages/secret-manager/SecretDashboardPage/route.tsx @@ -1,7 +1,10 @@ -import { createFileRoute, stripSearchParams } from "@tanstack/react-router"; +import { createFileRoute, linkOptions, stripSearchParams } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; +import { SecretDashboardPathBreadcrumb } from "@app/components/navigation/SecretDashboardPathBreadcrumb"; +import { BreadcrumbTypes } from "@app/components/v2"; + import { SecretDashboardPage } from "./SecretDashboardPage"; const SecretDashboardPageQueryParamsSchema = z.object({ @@ -9,13 +12,46 @@ const SecretDashboardPageQueryParamsSchema = z.object({ search: z.string().catch(""), tags: z.string().catch("") }); - export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug" )({ component: SecretDashboardPage, validateSearch: zodValidator(SecretDashboardPageQueryParamsSchema), search: { middlewares: [stripSearchParams({ secretPath: "/", search: "", tags: "" })] + }, + beforeLoad: ({ context, params, search }) => { + const secretPathSegments = search.secretPath.split("/").filter(Boolean); + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + type: BreadcrumbTypes.Dropdown, + label: context.project.environments.find((el) => el.slug === params.envSlug)?.name || "", + dropdownTitle: "Environments", + links: context.project.environments.map((el) => ({ + label: el.name, + link: linkOptions({ + to: "/secret-manager/$projectId/secrets/$envSlug", + params: { + projectId: params.projectId, + envSlug: el.slug + } + }) + })) + }, + ...secretPathSegments.map((_, index) => ({ + type: BreadcrumbTypes.Component, + component: () => ( + + ) + })) + ] + }; } }); diff --git a/frontend/src/pages/secret-manager/SecretRotationPage/SecretRotationPage.tsx b/frontend/src/pages/secret-manager/SecretRotationPage/SecretRotationPage.tsx index ef66cd069..c27d34cc4 100644 --- a/frontend/src/pages/secret-manager/SecretRotationPage/SecretRotationPage.tsx +++ b/frontend/src/pages/secret-manager/SecretRotationPage/SecretRotationPage.tsx @@ -20,6 +20,7 @@ import { DeleteActionModal, EmptyState, IconButton, + PageHeader, Skeleton, Spinner, Table, @@ -137,30 +138,25 @@ const Page = () => { }; return ( -
-
-
-

Secret Rotation

-

- Stop manually rotating secrets and automate credential rotation. -

-
- -
+
+ + + + Documentation + + + +
Rotated Secrets
@@ -374,7 +370,7 @@ export const SecretRotationPage = () => { const { t } = useTranslation(); return ( -
+
{t("common.head-title", { title: t("settings.project.title") })} diff --git a/frontend/src/pages/secret-manager/SecretRotationPage/route.tsx b/frontend/src/pages/secret-manager/SecretRotationPage/route.tsx index ad0c79c79..5413817ec 100644 --- a/frontend/src/pages/secret-manager/SecretRotationPage/route.tsx +++ b/frontend/src/pages/secret-manager/SecretRotationPage/route.tsx @@ -3,7 +3,17 @@ import { createFileRoute } from "@tanstack/react-router"; import { SecretRotationPage } from "./SecretRotationPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation" )({ - component: SecretRotationPage + component: SecretRotationPage, + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Secret Rotation" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/SettingsPage/SettingsPage.tsx b/frontend/src/pages/secret-manager/SettingsPage/SettingsPage.tsx index c96a37be5..b2c2e406f 100644 --- a/frontend/src/pages/secret-manager/SettingsPage/SettingsPage.tsx +++ b/frontend/src/pages/secret-manager/SettingsPage/SettingsPage.tsx @@ -1,7 +1,7 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { useWorkspace } from "@app/context"; import { ProjectType, ProjectVersion } from "@app/hooks/api/workspace/types"; @@ -42,12 +42,9 @@ export const SettingsPage = () => {
{t("common.head-title", { title: t("settings.project.title") })} - -
-
-

{t("settings.project.title")}

-
+
+ {tabs diff --git a/frontend/src/pages/secret-manager/SettingsPage/route.tsx b/frontend/src/pages/secret-manager/SettingsPage/route.tsx index 7996396c8..a6e7d79ed 100644 --- a/frontend/src/pages/secret-manager/SettingsPage/route.tsx +++ b/frontend/src/pages/secret-manager/SettingsPage/route.tsx @@ -3,7 +3,17 @@ import { createFileRoute } from "@tanstack/react-router"; import { SettingsPage } from "./SettingsPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings" )({ - component: SettingsPage + component: SettingsPage, + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Settings" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AwsParameterStoreAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AwsParameterStoreAuthorizePage/route.tsx index 9053974c7..c885d2e10 100644 --- a/frontend/src/pages/secret-manager/integrations/AwsParameterStoreAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AwsParameterStoreAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { AWSParameterStoreAuthorizeIntegrationPage } from "./AwsParameterStoreAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize" )({ - component: AWSParameterStoreAuthorizeIntegrationPage + component: AWSParameterStoreAuthorizeIntegrationPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "AWS Parameter Store" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AwsParameterStoreConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AwsParameterStoreConfigurePage/route.tsx index 3b8c4a3ea..ce686c860 100644 --- a/frontend/src/pages/secret-manager/integrations/AwsParameterStoreConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AwsParameterStoreConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const AwsParameterStoreConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create" )({ component: AWSParameterStoreConfigurePage, - validateSearch: zodValidator(AwsParameterStoreConfigurePageQueryParamsSchema) + validateSearch: zodValidator(AwsParameterStoreConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "AWS Parameter Store" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AwsSecretManagerAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AwsSecretManagerAuthorizePage/route.tsx index cf0172a4c..67230282e 100644 --- a/frontend/src/pages/secret-manager/integrations/AwsSecretManagerAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AwsSecretManagerAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { AWSSecretManagerAuthorizePage } from "./AwsSecretManagerAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize" )({ - component: AWSSecretManagerAuthorizePage + component: AWSSecretManagerAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "AWS Secret Manager" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AwsSecretManagerConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AwsSecretManagerConfigurePage/route.tsx index 2d8d0dafd..7275bc2aa 100644 --- a/frontend/src/pages/secret-manager/integrations/AwsSecretManagerConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AwsSecretManagerConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const AwsSecretManagerConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create" )({ component: AwsSecretManagerConfigurePage, - validateSearch: zodValidator(AwsSecretManagerConfigurePageQueryParamsSchema) + validateSearch: zodValidator(AwsSecretManagerConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "AWS Secret Manager" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationConfigurePage/route.tsx index 368db82e2..020941e0c 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const AzureAppConfigurationPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create" )({ component: AzureAppConfigurationConfigurePage, - validateSearch: zodValidator(AzureAppConfigurationPageQueryParamsSchema) + validateSearch: zodValidator(AzureAppConfigurationPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure App Configuration" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationOauthCallbackPage/route.tsx index 04ab9125f..5a94048d5 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureAppConfigurationOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const AzureAppConfigurationOauthCallbackPageQueryParamsSchema = z.object( }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback" )({ component: AzureAppConfigurationOauthCallbackPage, - validateSearch: zodValidator(AzureAppConfigurationOauthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(AzureAppConfigurationOauthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure App Configuration" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureDevopsAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureDevopsAuthorizePage/route.tsx index 13091e083..4dca8b8c6 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureDevopsAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureDevopsAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { AzureDevopsAuthorizePage } from "./AzureDevopsAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize" )({ - component: AzureDevopsAuthorizePage + component: AzureDevopsAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure Devops" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureDevopsConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureDevopsConfigurePage/route.tsx index 7585e904b..620e71660 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureDevopsConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureDevopsConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const AzureDevopsConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create" )({ component: AzureDevopsConfigurePage, - validateSearch: zodValidator(AzureDevopsConfigurePageQueryParamsSchema) + validateSearch: zodValidator(AzureDevopsConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure Devops" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/AzureKeyVaultAuthorizePage.tsx b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/AzureKeyVaultAuthorizePage.tsx index 419aa30bf..cbaa54eda 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/AzureKeyVaultAuthorizePage.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/AzureKeyVaultAuthorizePage.tsx @@ -1,13 +1,12 @@ +import { Helmet } from "react-helmet"; import { Controller, useForm } from "react-hook-form"; - import { faArrowUpRightFromSquare, faBookOpen } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { zodResolver } from "@hookform/resolvers/zod"; +import { useSearch } from "@tanstack/react-router"; import z from "zod"; import { Button, Card, CardTitle, FormControl, Input } from "@app/components/v2"; -import { Helmet } from "react-helmet"; -import { useSearch } from "@tanstack/react-router"; import { ROUTE_PATHS } from "@app/const/routes"; const schema = z.object({ @@ -18,7 +17,7 @@ type FormData = z.infer; export function AzureKeyVaultAuthorizePage() { const { state, clientId } = useSearch({ - from: ROUTE_PATHS.SecretManager.Integratons.AzureKeyVaultAuthorizePage.id, + from: ROUTE_PATHS.SecretManager.Integratons.AzureKeyVaultAuthorizePage.id }); const { control, handleSubmit } = useForm({ @@ -38,7 +37,7 @@ export function AzureKeyVaultAuthorizePage() { return (
- Authorize Azure Key Vault Integration + Authorize Azure Key Vault Integration @@ -56,12 +55,12 @@ export function AzureKeyVaultAuthorizePage() { target="_blank" rel="noopener noreferrer" > -
+
Docs
diff --git a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/route.tsx index cb8c47764..6d14a4bb7 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultAuthorizePage/route.tsx @@ -1,17 +1,33 @@ -import { createFileRoute } from "@tanstack/react-router"; -import z from 'zod' +import { createFileRoute, linkOptions } from "@tanstack/react-router"; +import z from "zod"; import { AzureKeyVaultAuthorizePage } from "./AzureKeyVaultAuthorizePage"; - const PageQueryParamsSchema = z.object({ state: z.string(), - clientId: z.string().optional(), + clientId: z.string().optional() }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize" )({ component: AzureKeyVaultAuthorizePage, - validateSearch: PageQueryParamsSchema + validateSearch: PageQueryParamsSchema, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure Key Vault" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultConfigurePage/route.tsx index 5bcbfdebc..773fa5468 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const AzureKeyVaultConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create" )({ component: AzureKeyVaultConfigurePage, - validateSearch: zodValidator(AzureKeyVaultConfigurePageQueryParamsSchema) + validateSearch: zodValidator(AzureKeyVaultConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure Key Vault" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultOauthCallbackPage/route.tsx index b4dbd438d..2e3e03455 100644 --- a/frontend/src/pages/secret-manager/integrations/AzureKeyVaultOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/AzureKeyVaultOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const AzureKeyVaultOauthCallbackQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback" )({ component: AzureKeyVaultOauthCallbackPage, - validateSearch: zodValidator(AzureKeyVaultOauthCallbackQueryParamsSchema) + validateSearch: zodValidator(AzureKeyVaultOauthCallbackQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Azure Key Vault" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/BitbucketConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/BitbucketConfigurePage/route.tsx index 514a915ef..d10fbbc80 100644 --- a/frontend/src/pages/secret-manager/integrations/BitbucketConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/BitbucketConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const BitbucketConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create" )({ component: BitbucketConfigurePage, - validateSearch: zodValidator(BitbucketConfigurePageQueryParamsSchema) + validateSearch: zodValidator(BitbucketConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Bitbucket" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/BitbucketOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/BitbucketOauthCallbackPage/route.tsx index 8762c4e06..be898d684 100644 --- a/frontend/src/pages/secret-manager/integrations/BitbucketOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/BitbucketOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const BitbucketOauthCallbackQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback" )({ component: BitbucketOauthCallbackPage, - validateSearch: zodValidator(BitbucketOauthCallbackQueryParamsSchema) + validateSearch: zodValidator(BitbucketOauthCallbackQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Bitbucket" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/ChecklyAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/ChecklyAuthorizePage/route.tsx index 680577ff9..cd38ff7ec 100644 --- a/frontend/src/pages/secret-manager/integrations/ChecklyAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/ChecklyAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { ChecklyAuthorizePage } from "./ChecklyAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize" )({ - component: ChecklyAuthorizePage + component: ChecklyAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Checkly" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/ChecklyConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/ChecklyConfigurePage/route.tsx index 831a881a4..832ecc202 100644 --- a/frontend/src/pages/secret-manager/integrations/ChecklyConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/ChecklyConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const ChecklyConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create" )({ component: ChecklyConfigurePage, - validateSearch: zodValidator(ChecklyConfigurePageQueryParamsSchema) + validateSearch: zodValidator(ChecklyConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Checkly" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CircleCIAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CircleCIAuthorizePage/route.tsx index 1fd0cd266..0fb0e577b 100644 --- a/frontend/src/pages/secret-manager/integrations/CircleCIAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CircleCIAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { CircleCIAuthorizePage } from "./CircleCIAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize" )({ - component: CircleCIAuthorizePage + component: CircleCIAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Circle CI" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/CircleCIConfigurePage.tsx b/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/CircleCIConfigurePage.tsx index 36a3b9964..e91a3ca89 100644 --- a/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/CircleCIConfigurePage.tsx +++ b/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/CircleCIConfigurePage.tsx @@ -187,7 +187,7 @@ export const CircleCIConfigurePage = () => { name="secretPath" render={({ field, fieldState: { error } }) => ( - + )} /> diff --git a/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/route.tsx index fd08b9870..7f3ed1d37 100644 --- a/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CircleCIConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const CircleCIConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create" )({ component: CircleCIConfigurePage, - validateSearch: zodValidator(CircleCIConfigurePageQueryParamsSchema) + validateSearch: zodValidator(CircleCIConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Circle CI" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/Cloud66AuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/Cloud66AuthorizePage/route.tsx index d73b4ff33..b0dd2c467 100644 --- a/frontend/src/pages/secret-manager/integrations/Cloud66AuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/Cloud66AuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { Cloud66AuthorizePage } from "./Cloud66AuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize" )({ - component: Cloud66AuthorizePage + component: Cloud66AuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Cloud 66" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/Cloud66ConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/Cloud66ConfigurePage/route.tsx index f3f3ec878..422d0ce5f 100644 --- a/frontend/src/pages/secret-manager/integrations/Cloud66ConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/Cloud66ConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const Cloud66ConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create" )({ component: Cloud66ConfigurePage, - validateSearch: zodValidator(Cloud66ConfigurePageQueryParamsSchema) + validateSearch: zodValidator(Cloud66ConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Cloud 66" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CloudflarePagesAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CloudflarePagesAuthorizePage/route.tsx index bdc5ba5f4..4f216cccb 100644 --- a/frontend/src/pages/secret-manager/integrations/CloudflarePagesAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CloudflarePagesAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { CloudflarePagesAuthorizePage } from "./CloudflarePagesAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize" )({ - component: CloudflarePagesAuthorizePage + component: CloudflarePagesAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Cloudflare Pages" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CloudflarePagesConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CloudflarePagesConfigurePage/route.tsx index 6ec6d2b2d..29310625e 100644 --- a/frontend/src/pages/secret-manager/integrations/CloudflarePagesConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CloudflarePagesConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const CloudflarePagesConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create" )({ component: CloudflarePagesConfigurePage, - validateSearch: zodValidator(CloudflarePagesConfigurePageQueryParamsSchema) + validateSearch: zodValidator(CloudflarePagesConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Cloudflare Pages" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CloudflareWorkersAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CloudflareWorkersAuthorizePage/route.tsx index 6365e26a3..0558baed2 100644 --- a/frontend/src/pages/secret-manager/integrations/CloudflareWorkersAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CloudflareWorkersAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { CloudflareWorkersAuthorizePage } from "./CloudflareWorkersAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize" )({ - component: CloudflareWorkersAuthorizePage + component: CloudflareWorkersAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Cloudflare Workers" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CloudflareWorkersConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CloudflareWorkersConfigurePage/route.tsx index 597000dec..1687628e3 100644 --- a/frontend/src/pages/secret-manager/integrations/CloudflareWorkersConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CloudflareWorkersConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const CloudflareWorkersConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create" )({ component: CloudflareWorkersConfigurePage, - validateSearch: zodValidator(CloudflareWorkersConfigurePageQueryParamsSchema) + validateSearch: zodValidator(CloudflareWorkersConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Cloudflare Workers" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CodefreshAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CodefreshAuthorizePage/route.tsx index 42e426306..443fc2267 100644 --- a/frontend/src/pages/secret-manager/integrations/CodefreshAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CodefreshAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { CodefreshAuthorizePage } from "./CodefreshAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize" )({ - component: CodefreshAuthorizePage + component: CodefreshAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Codefresh" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/CodefreshConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/CodefreshConfigurePage/route.tsx index bae29183c..717462908 100644 --- a/frontend/src/pages/secret-manager/integrations/CodefreshConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/CodefreshConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const CodefreshConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create" )({ component: CodefreshConfigurePage, - validateSearch: zodValidator(CodefreshConfigurePageQueryParamsSchema) + validateSearch: zodValidator(CodefreshConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Codefresh" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/DatabricksAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/DatabricksAuthorizePage/route.tsx index f1fc79379..a49d94583 100644 --- a/frontend/src/pages/secret-manager/integrations/DatabricksAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/DatabricksAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { DatabricksAuthorizePage } from "./DatabricksAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize" )({ - component: DatabricksAuthorizePage + component: DatabricksAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Databricks" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/DatabricksConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/DatabricksConfigurePage/route.tsx index 971678824..76bb65f1f 100644 --- a/frontend/src/pages/secret-manager/integrations/DatabricksConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/DatabricksConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const DatabricksConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create" )({ component: DatabricksConfigurePage, - validateSearch: zodValidator(DatabricksConfigurePageQueryParamsSchema) + validateSearch: zodValidator(DatabricksConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Databricks" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformAuthorizePage/route.tsx index a7f41e997..68277ce59 100644 --- a/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { DigitalOceanAppPlatformAuthorizePage } from "./DigitalOceanAppPlatformAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize" )({ - component: DigitalOceanAppPlatformAuthorizePage + component: DigitalOceanAppPlatformAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "DigitalOcean App Platform" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformConfigurePage/route.tsx index fb4e5edfa..80eaf0bae 100644 --- a/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/DigitalOceanAppPlatformConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const DigitalOceanAppPlatformConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create" )({ component: DigitalOceanAppPlatformConfigurePage, - validateSearch: zodValidator(DigitalOceanAppPlatformConfigurePageQueryParamsSchema) + validateSearch: zodValidator(DigitalOceanAppPlatformConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "DigitalOcean App Platform" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/FlyioAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/FlyioAuthorizePage/route.tsx index 752bd02e2..44e78a708 100644 --- a/frontend/src/pages/secret-manager/integrations/FlyioAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/FlyioAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { FlyioAuthorizePage } from "./FlyioAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize" )({ - component: FlyioAuthorizePage + component: FlyioAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Fly IO" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/FlyioConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/FlyioConfigurePage/route.tsx index 9aa21ef16..254068dbe 100644 --- a/frontend/src/pages/secret-manager/integrations/FlyioConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/FlyioConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const FlyioConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create" )({ component: FlyioConfigurePage, - validateSearch: zodValidator(FlyioConfigurePageQueryParamsSchema) + validateSearch: zodValidator(FlyioConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Fly IO" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GcpSecretManagerAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/GcpSecretManagerAuthorizePage/route.tsx index 3a1776e60..92df323ce 100644 --- a/frontend/src/pages/secret-manager/integrations/GcpSecretManagerAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GcpSecretManagerAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { GcpSecretManagerAuthorizePage } from "./GcpSecretManagerAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize" )({ - component: GcpSecretManagerAuthorizePage + component: GcpSecretManagerAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GCP Secret Manager" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GcpSecretManagerConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/GcpSecretManagerConfigurePage/route.tsx index dab7fc1a4..644a9f858 100644 --- a/frontend/src/pages/secret-manager/integrations/GcpSecretManagerConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GcpSecretManagerConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const GcpConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create" )({ component: GcpSecretManagerConfigurePage, - validateSearch: zodValidator(GcpConfigurePageQueryParamsSchema) + validateSearch: zodValidator(GcpConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GCP Secret Manager" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GcpSecretManagerOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/GcpSecretManagerOauthCallbackPage/route.tsx index 021de7a20..3049d2bb6 100644 --- a/frontend/src/pages/secret-manager/integrations/GcpSecretManagerOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GcpSecretManagerOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const GcpSecretManagerOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback" )({ component: GcpSecretManagerOauthCallbackPage, - validateSearch: zodValidator(GcpSecretManagerOAuthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(GcpSecretManagerOAuthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GCP Secret Manager" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GithubAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/GithubAuthorizePage/route.tsx index d67c8d8cb..584592ed1 100644 --- a/frontend/src/pages/secret-manager/integrations/GithubAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GithubAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { GithubAuthorizePage } from "./GithubAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection" )({ - component: GithubAuthorizePage + component: GithubAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GitHub" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GithubConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/GithubConfigurePage/route.tsx index 45f840c22..6bcf6db77 100644 --- a/frontend/src/pages/secret-manager/integrations/GithubConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GithubConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const GithubConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create" )({ component: GithubConfigurePage, - validateSearch: zodValidator(GithubConfigurePageQueryParamsSchema) + validateSearch: zodValidator(GithubConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GitHub" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GithubOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/GithubOauthCallbackPage/route.tsx index fd08440a6..fce97a4d7 100644 --- a/frontend/src/pages/secret-manager/integrations/GithubOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GithubOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -11,8 +11,25 @@ export const GithubOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback" )({ component: GithubOauthCallbackPage, - validateSearch: zodValidator(GithubOAuthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(GithubOAuthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GitHub" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GitlabAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/GitlabAuthorizePage/route.tsx index d79d29f6c..9b132210e 100644 --- a/frontend/src/pages/secret-manager/integrations/GitlabAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GitlabAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { GitlabAuthorizePage } from "./GitlabAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize" )({ - component: GitlabAuthorizePage + component: GitlabAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GitLab" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GitlabConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/GitlabConfigurePage/route.tsx index c2e047bbc..b09ab1cf0 100644 --- a/frontend/src/pages/secret-manager/integrations/GitlabConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GitlabConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const GitlabConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create" )({ component: GitlabConfigurePage, - validateSearch: zodValidator(GitlabConfigurePageQueryParamsSchema) + validateSearch: zodValidator(GitlabConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GitLab" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/GitlabOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/GitlabOauthCallbackPage/route.tsx index 7a960e60c..9a4644845 100644 --- a/frontend/src/pages/secret-manager/integrations/GitlabOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/GitlabOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const GitlabOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback" )({ component: GitLabOAuthCallbackPage, - validateSearch: zodValidator(GitlabOAuthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(GitlabOAuthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "GitLab" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/HashicorpVaultAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/HashicorpVaultAuthorizePage/route.tsx index bafe1a352..02d2600c7 100644 --- a/frontend/src/pages/secret-manager/integrations/HashicorpVaultAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/HashicorpVaultAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { HashicorpVaultAuthorizePage } from "./HashicorpVaultAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize" )({ - component: HashicorpVaultAuthorizePage + component: HashicorpVaultAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Hashicorp Vault" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/HashicorpVaultConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/HashicorpVaultConfigurePage/route.tsx index d7aebf29c..a298b9bba 100644 --- a/frontend/src/pages/secret-manager/integrations/HashicorpVaultConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/HashicorpVaultConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const HashicorpVaultConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create" )({ component: HashicorpVaultConfigurePage, - validateSearch: zodValidator(HashicorpVaultConfigurePageQueryParamsSchema) + validateSearch: zodValidator(HashicorpVaultConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Hashicorp Vault" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/HasuraCloudAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/HasuraCloudAuthorizePage/route.tsx index 4567d00a6..7b9de974b 100644 --- a/frontend/src/pages/secret-manager/integrations/HasuraCloudAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/HasuraCloudAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { HasuraCloudAuthorizePage } from "./HasuraCloudAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize" )({ - component: HasuraCloudAuthorizePage + component: HasuraCloudAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Hasura Cloud" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/HasuraCloudConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/HasuraCloudConfigurePage/route.tsx index 4accd54e7..d7920bb1e 100644 --- a/frontend/src/pages/secret-manager/integrations/HasuraCloudConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/HasuraCloudConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const HasuraCloudConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create" )({ component: HasuraCloudConfigurePage, - validateSearch: zodValidator(HasuraCloudConfigurePageQueryParamsSchema) + validateSearch: zodValidator(HasuraCloudConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Hasura Cloud" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/HerokuConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/HerokuConfigurePage/route.tsx index b37435079..a33757bc1 100644 --- a/frontend/src/pages/secret-manager/integrations/HerokuConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/HerokuConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const HerokuConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create" )({ component: HerokuConfigurePage, - validateSearch: zodValidator(HerokuConfigurePageQueryParamsSchema) + validateSearch: zodValidator(HerokuConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Heroku Cloud" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/HerokuOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/HerokuOauthCallbackPage/route.tsx index 610d786ae..b180e9d6a 100644 --- a/frontend/src/pages/secret-manager/integrations/HerokuOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/HerokuOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const HerokuOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback" )({ component: HerokuOAuthCallbackPage, - validateSearch: zodValidator(HerokuOAuthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(HerokuOAuthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Heroku Cloud" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/LaravelForgeAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/LaravelForgeAuthorizePage/route.tsx index a9dfa3517..0778c8f5d 100644 --- a/frontend/src/pages/secret-manager/integrations/LaravelForgeAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/LaravelForgeAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { LaravelForgeAuthorizePage } from "./LaravelForgeAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize" )({ - component: LaravelForgeAuthorizePage + component: LaravelForgeAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Laravel Forge" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/LaravelForgeConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/LaravelForgeConfigurePage/route.tsx index 2fb27ab25..98d95b670 100644 --- a/frontend/src/pages/secret-manager/integrations/LaravelForgeConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/LaravelForgeConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const LaravelForgeConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create" )({ component: LaravelForgeConfigurePage, - validateSearch: zodValidator(LaravelForgeConfigurePageQueryParamsSchema) + validateSearch: zodValidator(LaravelForgeConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Laravel Forge" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/NetlifyConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/NetlifyConfigurePage/route.tsx index a889bf645..81f3877bd 100644 --- a/frontend/src/pages/secret-manager/integrations/NetlifyConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/NetlifyConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const NetlifyConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create" )({ component: NetlifyConfigurePage, - validateSearch: zodValidator(NetlifyConfigurePageQueryParamsSchema) + validateSearch: zodValidator(NetlifyConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Netlify" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/NetlifyOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/NetlifyOauthCallbackPage/route.tsx index 3a6670440..d88dc29b2 100644 --- a/frontend/src/pages/secret-manager/integrations/NetlifyOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/NetlifyOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const NetlifyOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback" )({ component: NetlifyOauthCallbackPage, - validateSearch: zodValidator(NetlifyOAuthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(NetlifyOAuthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Netlify" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/NorthflankAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/NorthflankAuthorizePage/route.tsx index 6ed9541be..b0e2c10f8 100644 --- a/frontend/src/pages/secret-manager/integrations/NorthflankAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/NorthflankAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { NorthflankAuthorizePage } from "./NorthflankAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize" )({ - component: NorthflankAuthorizePage + component: NorthflankAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Northflank" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/NorthflankConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/NorthflankConfigurePage/route.tsx index 23fda3135..fe5c2283a 100644 --- a/frontend/src/pages/secret-manager/integrations/NorthflankConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/NorthflankConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const NorthflankConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create" )({ component: NorthflankConfigurePage, - validateSearch: zodValidator(NorthflankConfigurePageQueryParamsSchema) + validateSearch: zodValidator(NorthflankConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Northflank" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/OctopusDeployAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/OctopusDeployAuthorizePage/route.tsx index 950dd2f4e..c50832858 100644 --- a/frontend/src/pages/secret-manager/integrations/OctopusDeployAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/OctopusDeployAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { OctopusDeployAuthorizePage } from "./OctopusDeployAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize" )({ - component: OctopusDeployAuthorizePage + component: OctopusDeployAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Octopus Deploy" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/OctopusDeployConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/OctopusDeployConfigurePage/route.tsx index 7ce0aa019..5c897a95c 100644 --- a/frontend/src/pages/secret-manager/integrations/OctopusDeployConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/OctopusDeployConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const OctopusDeployConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create" )({ component: OctopusDeployConfigurePage, - validateSearch: zodValidator(OctopusDeployConfigurePageQueryParamsSchema) + validateSearch: zodValidator(OctopusDeployConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Octopus Deploy" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/QoveryAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/QoveryAuthorizePage/route.tsx index 5946f61ea..eddbca06f 100644 --- a/frontend/src/pages/secret-manager/integrations/QoveryAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/QoveryAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { QoveryAuthorizePage } from "./QoveryAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize" )({ - component: QoveryAuthorizePage + component: QoveryAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Qovery" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/QoveryConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/QoveryConfigurePage/route.tsx index a7f2c7a0a..1f14f02ca 100644 --- a/frontend/src/pages/secret-manager/integrations/QoveryConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/QoveryConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const QoveryConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create" )({ component: QoveryConfigurePage, - validateSearch: zodValidator(QoveryConfigurePageQueryParamsSchema) + validateSearch: zodValidator(QoveryConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Qovery" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/RailwayAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/RailwayAuthorizePage/route.tsx index 1addd4e52..d351b5f8f 100644 --- a/frontend/src/pages/secret-manager/integrations/RailwayAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/RailwayAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RailwayAuthorizePage } from "./RailwayAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize" )({ - component: RailwayAuthorizePage + component: RailwayAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Railway" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/RailwayConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/RailwayConfigurePage/route.tsx index 155cefd10..411c960a5 100644 --- a/frontend/src/pages/secret-manager/integrations/RailwayConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/RailwayConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const RailwayConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create" )({ component: RailwayConfigurePage, - validateSearch: zodValidator(RailwayConfigurePageQueryParamsSchema) + validateSearch: zodValidator(RailwayConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Railway" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/RenderAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/RenderAuthorizePage/route.tsx index e7121ff18..3657f2a07 100644 --- a/frontend/src/pages/secret-manager/integrations/RenderAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/RenderAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RenderAuthorizePage } from "./RenderAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize" )({ - component: RenderAuthorizePage + component: RenderAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Render" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/RenderConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/RenderConfigurePage/route.tsx index 020a9a5a3..8c676c800 100644 --- a/frontend/src/pages/secret-manager/integrations/RenderConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/RenderConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const RenderConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create" )({ component: RenderConfigurePage, - validateSearch: zodValidator(RenderConfigurePageQueryParamsSchema) + validateSearch: zodValidator(RenderConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Render" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/RundeckAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/RundeckAuthorizePage/route.tsx index 6f5ad6e10..3ff55ddb4 100644 --- a/frontend/src/pages/secret-manager/integrations/RundeckAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/RundeckAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { RundeckAuthorizePage } from "./RundeckAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize" )({ - component: RundeckAuthorizePage + component: RundeckAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Rundeck" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/RundeckConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/RundeckConfigurePage/route.tsx index bb7a7f3b1..3683b0fc0 100644 --- a/frontend/src/pages/secret-manager/integrations/RundeckConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/RundeckConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const RundeskConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create" )({ component: RundeckConfigurePage, - validateSearch: zodValidator(RundeskConfigurePageQueryParamsSchema) + validateSearch: zodValidator(RundeskConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Rundeck" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/SelectIntegrationAuthPage/route.tsx b/frontend/src/pages/secret-manager/integrations/SelectIntegrationAuthPage/route.tsx index 787e792db..26eb213aa 100644 --- a/frontend/src/pages/secret-manager/integrations/SelectIntegrationAuthPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/SelectIntegrationAuthPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const SelectIntegrationAuthPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth" )({ component: SelectIntegrationAuthPage, - validateSearch: zodValidator(SelectIntegrationAuthPageQueryParamsSchema) + validateSearch: zodValidator(SelectIntegrationAuthPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Configure" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/SupabaseAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/SupabaseAuthorizePage/route.tsx index c790055a4..544867b50 100644 --- a/frontend/src/pages/secret-manager/integrations/SupabaseAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/SupabaseAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { SupabaseAuthorizePage } from "./SupabaseAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize" )({ - component: SupabaseAuthorizePage + component: SupabaseAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Supabase" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/SupabaseConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/SupabaseConfigurePage/route.tsx index d5c8e7bf3..dc2f73eee 100644 --- a/frontend/src/pages/secret-manager/integrations/SupabaseConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/SupabaseConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const SupabaseConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create" )({ component: SupabaseConfigurePage, - validateSearch: zodValidator(SupabaseConfigurePageQueryParamsSchema) + validateSearch: zodValidator(SupabaseConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Supabase" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/TeamcityAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/TeamcityAuthorizePage/route.tsx index f08c78abd..9983c9b9c 100644 --- a/frontend/src/pages/secret-manager/integrations/TeamcityAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/TeamcityAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { TeamcityAuthorizePage } from "./TeamcityAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize" )({ - component: TeamcityAuthorizePage + component: TeamcityAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Teamcity" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/TeamcityConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/TeamcityConfigurePage/route.tsx index 119a0ec96..57301a69c 100644 --- a/frontend/src/pages/secret-manager/integrations/TeamcityConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/TeamcityConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const TeamcityConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create" )({ component: TeamcityConfigurePage, - validateSearch: zodValidator(TeamcityConfigurePageQueryParamsSchema) + validateSearch: zodValidator(TeamcityConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Teamcity" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/TerraformCloudAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/TerraformCloudAuthorizePage/route.tsx index 20496be9d..d15f50f2c 100644 --- a/frontend/src/pages/secret-manager/integrations/TerraformCloudAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/TerraformCloudAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { TerraformCloudAuthorizePage } from "./TerraformCloudAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize" )({ - component: TerraformCloudAuthorizePage + component: TerraformCloudAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Terraform Cloud" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/TerraformCloudConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/TerraformCloudConfigurePage/route.tsx index 3ebfa5e73..373e10839 100644 --- a/frontend/src/pages/secret-manager/integrations/TerraformCloudConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/TerraformCloudConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const TerraformCloudConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create" )({ component: TerraformCloudConfigurePage, - validateSearch: zodValidator(TerraformCloudConfigurePageQueryParamsSchema) + validateSearch: zodValidator(TerraformCloudConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Terraform Cloud" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/TravisCIAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/TravisCIAuthorizePage/route.tsx index b3c1aedf7..71e5c123b 100644 --- a/frontend/src/pages/secret-manager/integrations/TravisCIAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/TravisCIAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { TravisCIAuthorizePage } from "./TravisCIAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize" )({ - component: TravisCIAuthorizePage + component: TravisCIAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Travis CI" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/TravisCIConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/TravisCIConfigurePage/route.tsx index c2811d90f..ecc256de4 100644 --- a/frontend/src/pages/secret-manager/integrations/TravisCIConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/TravisCIConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const TravisCIConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create" )({ component: TravisCIConfigurePage, - validateSearch: zodValidator(TravisCIConfigurePageQueryParamsSchema) + validateSearch: zodValidator(TravisCIConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Travis CI" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/VercelConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/VercelConfigurePage/route.tsx index 2fea86bc8..4b743ceb1 100644 --- a/frontend/src/pages/secret-manager/integrations/VercelConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/VercelConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const VercelConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create" )({ component: VercelConfigurePage, - validateSearch: zodValidator(VercelConfigurePageQueryParamsSchema) + validateSearch: zodValidator(VercelConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Vercel" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/VercelOauthCallbackPage/route.tsx b/frontend/src/pages/secret-manager/integrations/VercelOauthCallbackPage/route.tsx index b860252d6..fcdf72976 100644 --- a/frontend/src/pages/secret-manager/integrations/VercelOauthCallbackPage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/VercelOauthCallbackPage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -10,8 +10,25 @@ export const VercelOAuthCallbackPageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback" )({ component: VercelOauthCallbackPage, - validateSearch: zodValidator(VercelOAuthCallbackPageQueryParamsSchema) + validateSearch: zodValidator(VercelOAuthCallbackPageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Vercel" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/WindmillAuthorizePage/route.tsx b/frontend/src/pages/secret-manager/integrations/WindmillAuthorizePage/route.tsx index e59a8e764..b81b4a7fd 100644 --- a/frontend/src/pages/secret-manager/integrations/WindmillAuthorizePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/WindmillAuthorizePage/route.tsx @@ -1,9 +1,26 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { WindmillAuthorizePage } from "./WindmillAuthorizePage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize" )({ - component: WindmillAuthorizePage + component: WindmillAuthorizePage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Windmill" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/WindmillConfigurePage/route.tsx b/frontend/src/pages/secret-manager/integrations/WindmillConfigurePage/route.tsx index dcc0d8146..4ff5443b2 100644 --- a/frontend/src/pages/secret-manager/integrations/WindmillConfigurePage/route.tsx +++ b/frontend/src/pages/secret-manager/integrations/WindmillConfigurePage/route.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { zodValidator } from "@tanstack/zod-adapter"; import { z } from "zod"; @@ -9,8 +9,25 @@ const WindmillConfigurePageQueryParamsSchema = z.object({ }); export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create" )({ component: WindmillConfigurePage, - validateSearch: zodValidator(WindmillConfigurePageQueryParamsSchema) + validateSearch: zodValidator(WindmillConfigurePageQueryParamsSchema), + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Integrations", + link: linkOptions({ + to: "/secret-manager/$projectId/integrations", + params + }) + }, + { + label: "Windmill" + } + ] + }; + } }); diff --git a/frontend/src/pages/secret-manager/integrations/route-azure-app-configurations-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-azure-app-configurations-oauth-redirect.tsx index 32662b743..072b7134f 100644 --- a/frontend/src/pages/secret-manager/integrations/route-azure-app-configurations-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-azure-app-configurations-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { AzureAppConfigurationOauthCallbackPageQueryParamsSchema } from "./AzureAppConfigurationOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback" )({ validateSearch: zodValidator(AzureAppConfigurationOauthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-azure-key-vault-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-azure-key-vault-oauth-redirect.tsx index 57145b9de..23391266a 100644 --- a/frontend/src/pages/secret-manager/integrations/route-azure-key-vault-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-azure-key-vault-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { AzureKeyVaultOauthCallbackQueryParamsSchema } from "./AzureKeyVaultOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback" )({ validateSearch: zodValidator(AzureKeyVaultOauthCallbackQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-bitbucket-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-bitbucket-oauth-redirect.tsx index 20982e455..63a3926de 100644 --- a/frontend/src/pages/secret-manager/integrations/route-bitbucket-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-bitbucket-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { BitbucketOauthCallbackQueryParamsSchema } from "./BitbucketOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback" )({ validateSearch: zodValidator(BitbucketOauthCallbackQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-gcp-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-gcp-oauth-redirect.tsx index 566bd1c88..41283e931 100644 --- a/frontend/src/pages/secret-manager/integrations/route-gcp-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-gcp-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { GcpSecretManagerOAuthCallbackPageQueryParamsSchema } from "./GcpSecretManagerOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback" )({ validateSearch: zodValidator(GcpSecretManagerOAuthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-github-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-github-oauth-redirect.tsx index 2d6256362..6e071a2b6 100644 --- a/frontend/src/pages/secret-manager/integrations/route-github-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-github-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { GithubOAuthCallbackPageQueryParamsSchema } from "./GithubOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/github/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback" )({ validateSearch: zodValidator(GithubOAuthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-gitlab-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-gitlab-oauth-redirect.tsx index 09e507f05..a67ee8986 100644 --- a/frontend/src/pages/secret-manager/integrations/route-gitlab-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-gitlab-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { GitlabOAuthCallbackPageQueryParamsSchema } from "./GitlabOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback" )({ validateSearch: zodValidator(GitlabOAuthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-heroku-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-heroku-oauth-redirect.tsx index 39dec58b2..9002f03ae 100644 --- a/frontend/src/pages/secret-manager/integrations/route-heroku-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-heroku-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { HerokuOAuthCallbackPageQueryParamsSchema } from "./HerokuOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback" )({ validateSearch: zodValidator(HerokuOAuthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-netlify-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-netlify-oauth-redirect.tsx index 069d78c63..5db4807f9 100644 --- a/frontend/src/pages/secret-manager/integrations/route-netlify-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-netlify-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { NetlifyOAuthCallbackPageQueryParamsSchema } from "./NetlifyOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback" )({ validateSearch: zodValidator(NetlifyOAuthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/integrations/route-vercel-oauth-redirect.tsx b/frontend/src/pages/secret-manager/integrations/route-vercel-oauth-redirect.tsx index 9e2b523cd..d1896fd3b 100644 --- a/frontend/src/pages/secret-manager/integrations/route-vercel-oauth-redirect.tsx +++ b/frontend/src/pages/secret-manager/integrations/route-vercel-oauth-redirect.tsx @@ -7,7 +7,7 @@ import { localStorageService } from "@app/helpers/localStorage"; import { VercelOAuthCallbackPageQueryParamsSchema } from "./VercelOauthCallbackPage/route"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback" )({ validateSearch: zodValidator(VercelOAuthCallbackPageQueryParamsSchema), beforeLoad: ({ search }) => { diff --git a/frontend/src/pages/secret-manager/layout.tsx b/frontend/src/pages/secret-manager/layout.tsx index 1ead7191d..659857531 100644 --- a/frontend/src/pages/secret-manager/layout.tsx +++ b/frontend/src/pages/secret-manager/layout.tsx @@ -1,4 +1,6 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { faHome } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { workspaceKeys } from "@app/hooks/api"; import { fetchUserProjectPermissions, roleQueryKeys } from "@app/hooks/api/roles/queries"; @@ -6,11 +8,11 @@ import { fetchWorkspaceById } from "@app/hooks/api/workspace/queries"; import { ProjectLayout } from "@app/layouts/ProjectLayout"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" )({ component: ProjectLayout, beforeLoad: async ({ params, context }) => { - await context.queryClient.ensureQueryData({ + const project = await context.queryClient.ensureQueryData({ queryKey: workspaceKeys.getWorkspaceById(params.projectId), queryFn: () => fetchWorkspaceById(params.projectId) }); @@ -21,5 +23,23 @@ export const Route = createFileRoute( }), queryFn: () => fetchUserProjectPermissions({ workspaceId: params.projectId }) }); + + return { + project, + breadcrumbs: [ + { + label: "Secret Managers", + icon: () => , + link: linkOptions({ to: "/organization/secret-manager/overview" }) + }, + { + label: project.name, + link: linkOptions({ + to: "/secret-manager/$projectId/overview", + params: { projectId: project.id } + }) + } + ] + }; } }); diff --git a/frontend/src/pages/ssh/OverviewPage/OverviewPage.tsx b/frontend/src/pages/ssh/OverviewPage/OverviewPage.tsx index 13c3d8ea3..9123bf675 100644 --- a/frontend/src/pages/ssh/OverviewPage/OverviewPage.tsx +++ b/frontend/src/pages/ssh/OverviewPage/OverviewPage.tsx @@ -3,7 +3,7 @@ import { useTranslation } from "react-i18next"; import { motion } from "framer-motion"; import { ProjectPermissionCan } from "@app/components/permissions"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { ProjectPermissionActions, ProjectPermissionSub } from "@app/context"; import { SshCaSection, SshCertificatesSection } from "./components"; @@ -19,12 +19,14 @@ export const OverviewPage = () => { <> {t("common.head-title", { title: "Certificates" })} -
-
-

SSH

+
+ SSH Certificates diff --git a/frontend/src/pages/ssh/OverviewPage/route.tsx b/frontend/src/pages/ssh/OverviewPage/route.tsx index 427492518..8209f1ea6 100644 --- a/frontend/src/pages/ssh/OverviewPage/route.tsx +++ b/frontend/src/pages/ssh/OverviewPage/route.tsx @@ -3,7 +3,7 @@ import { createFileRoute } from "@tanstack/react-router"; import { OverviewPage } from "./OverviewPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview" )({ component: OverviewPage }); diff --git a/frontend/src/pages/ssh/SettingsPage/SettingsPage.tsx b/frontend/src/pages/ssh/SettingsPage/SettingsPage.tsx index 674b97009..dce31f01b 100644 --- a/frontend/src/pages/ssh/SettingsPage/SettingsPage.tsx +++ b/frontend/src/pages/ssh/SettingsPage/SettingsPage.tsx @@ -1,7 +1,7 @@ import { Helmet } from "react-helmet"; import { useTranslation } from "react-i18next"; -import { Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; +import { PageHeader, Tab, TabList, TabPanel, Tabs } from "@app/components/v2"; import { ProjectGeneralTab } from "./components/ProjectGeneralTab"; @@ -15,10 +15,8 @@ export const SettingsPage = () => { {t("common.head-title", { title: t("settings.project.title") })} -
-
-

{t("settings.project.title")}

-
+
+ {tabs.map((tab) => ( diff --git a/frontend/src/pages/ssh/SettingsPage/route.tsx b/frontend/src/pages/ssh/SettingsPage/route.tsx index 5649fd26c..18f15ac58 100644 --- a/frontend/src/pages/ssh/SettingsPage/route.tsx +++ b/frontend/src/pages/ssh/SettingsPage/route.tsx @@ -3,7 +3,17 @@ import { createFileRoute } from "@tanstack/react-router"; import { SettingsPage } from "./SettingsPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings" )({ - component: SettingsPage + component: SettingsPage, + beforeLoad: ({ context }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "Settings" + } + ] + }; + } }); diff --git a/frontend/src/pages/ssh/SshCaByIDPage/SshCaByIDPage.tsx b/frontend/src/pages/ssh/SshCaByIDPage/SshCaByIDPage.tsx index f8cf9af91..926505230 100644 --- a/frontend/src/pages/ssh/SshCaByIDPage/SshCaByIDPage.tsx +++ b/frontend/src/pages/ssh/SshCaByIDPage/SshCaByIDPage.tsx @@ -1,6 +1,4 @@ import { Helmet } from "react-helmet"; -import { faChevronLeft, faEllipsis } from "@fortawesome/free-solid-svg-icons"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { useNavigate, useParams } from "@tanstack/react-router"; import { twMerge } from "tailwind-merge"; @@ -13,6 +11,7 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, + PageHeader, Tooltip } from "@app/components/v2"; import { ROUTE_PATHS } from "@app/const/routes"; @@ -71,34 +70,17 @@ const Page = () => { return (
{data && ( -
- -
-

{data.friendlyName}

+
+
- +
- + {
-
+
diff --git a/frontend/src/pages/ssh/SshCaByIDPage/route.tsx b/frontend/src/pages/ssh/SshCaByIDPage/route.tsx index d8a2a4f9c..800f89814 100644 --- a/frontend/src/pages/ssh/SshCaByIDPage/route.tsx +++ b/frontend/src/pages/ssh/SshCaByIDPage/route.tsx @@ -1,9 +1,25 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { SshCaByIDPage } from "./SshCaByIDPage"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId" )({ - component: SshCaByIDPage + component: SshCaByIDPage, + beforeLoad: ({ context, params }) => { + return { + breadcrumbs: [ + ...context.breadcrumbs, + { + label: "SSH Certificate Authorities", + link: linkOptions({ + to: "/ssh/$projectId/overview", + params: { + projectId: params.projectId + } + }) + } + ] + }; + } }); diff --git a/frontend/src/pages/ssh/layout.tsx b/frontend/src/pages/ssh/layout.tsx index 4ab53124c..03f859f75 100644 --- a/frontend/src/pages/ssh/layout.tsx +++ b/frontend/src/pages/ssh/layout.tsx @@ -1,4 +1,4 @@ -import { createFileRoute } from "@tanstack/react-router"; +import { createFileRoute, linkOptions } from "@tanstack/react-router"; import { workspaceKeys } from "@app/hooks/api"; import { fetchUserProjectPermissions, roleQueryKeys } from "@app/hooks/api/roles/queries"; @@ -6,11 +6,11 @@ import { fetchWorkspaceById } from "@app/hooks/api/workspace/queries"; import { ProjectLayout } from "@app/layouts/ProjectLayout"; export const Route = createFileRoute( - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" )({ component: ProjectLayout, beforeLoad: async ({ params, context }) => { - await context.queryClient.ensureQueryData({ + const project = await context.queryClient.ensureQueryData({ queryKey: workspaceKeys.getWorkspaceById(params.projectId), queryFn: () => fetchWorkspaceById(params.projectId) }); @@ -21,5 +21,21 @@ export const Route = createFileRoute( }), queryFn: () => fetchUserProjectPermissions({ workspaceId: params.projectId }) }); + + return { + breadcrumbs: [ + { + label: "SSH", + link: linkOptions({ to: "/organization/ssh/overview" }) + }, + { + label: project.name, + link: linkOptions({ + to: "/ssh/$projectId/overview", + params: { projectId: project.id } + }) + } + ] + }; } }); diff --git a/frontend/src/routeTree.gen.ts b/frontend/src/routeTree.gen.ts index 7548b3883..89d4a2a0b 100644 --- a/frontend/src/routeTree.gen.ts +++ b/frontend/src/routeTree.gen.ts @@ -25,6 +25,7 @@ import { Route as authRequestNewInvitePageRouteImport } from './pages/auth/Reque import { Route as authPasswordResetPageRouteImport } from './pages/auth/PasswordResetPage/route' import { Route as authEmailNotVerifiedPageRouteImport } from './pages/auth/EmailNotVerifiedPage/route' import { Route as userLayoutImport } from './pages/user/layout' +import { Route as organizationLayoutImport } from './pages/organization/layout' import { Route as publicViewSharedSecretByIDPageRouteImport } from './pages/public/ViewSharedSecretByIDPage/route' import { Route as authSignUpSsoPageRouteImport } from './pages/auth/SignUpSsoPage/route' import { Route as authLoginSsoPageRouteImport } from './pages/auth/LoginSsoPage/route' @@ -33,15 +34,10 @@ import { Route as authLoginLdapPageRouteImport } from './pages/auth/LoginLdapPag import { Route as adminSignUpPageRouteImport } from './pages/admin/SignUpPage/route' import { Route as authSignUpPageRouteImport } from './pages/auth/SignUpPage/route' import { Route as authLoginPageRouteImport } from './pages/auth/LoginPage/route' -import { Route as organizationLayoutImport } from './pages/organization/layout' import { Route as adminLayoutImport } from './pages/admin/layout' import { Route as authProviderSuccessPageRouteImport } from './pages/auth/ProviderSuccessPage/route' import { Route as authProviderErrorPageRouteImport } from './pages/auth/ProviderErrorPage/route' import { Route as userPersonalSettingsPageRouteImport } from './pages/user/PersonalSettingsPage/route' -import { Route as sshLayoutImport } from './pages/ssh/layout' -import { Route as secretManagerLayoutImport } from './pages/secret-manager/layout' -import { Route as kmsLayoutImport } from './pages/kms/layout' -import { Route as certManagerLayoutImport } from './pages/cert-manager/layout' import { Route as organizationSettingsPageRouteImport } from './pages/organization/SettingsPage/route' import { Route as organizationSecretSharingPageRouteImport } from './pages/organization/SecretSharingPage/route' import { Route as organizationSecretScanningPageRouteImport } from './pages/organization/SecretScanningPage/route' @@ -51,6 +47,18 @@ import { Route as organizationAuditLogsPageRouteImport } from './pages/organizat import { Route as organizationAdminPageRouteImport } from './pages/organization/AdminPage/route' import { Route as organizationAccessManagementPageRouteImport } from './pages/organization/AccessManagementPage/route' import { Route as adminOverviewPageRouteImport } from './pages/admin/OverviewPage/route' +import { Route as sshLayoutImport } from './pages/ssh/layout' +import { Route as secretManagerLayoutImport } from './pages/secret-manager/layout' +import { Route as kmsLayoutImport } from './pages/kms/layout' +import { Route as certManagerLayoutImport } from './pages/cert-manager/layout' +import { Route as organizationSshOverviewPageRouteImport } from './pages/organization/SshOverviewPage/route' +import { Route as organizationSecretManagerOverviewPageRouteImport } from './pages/organization/SecretManagerOverviewPage/route' +import { Route as organizationRoleByIDPageRouteImport } from './pages/organization/RoleByIDPage/route' +import { Route as organizationUserDetailsByIDPageRouteImport } from './pages/organization/UserDetailsByIDPage/route' +import { Route as organizationKmsOverviewPageRouteImport } from './pages/organization/KmsOverviewPage/route' +import { Route as organizationIdentityDetailsByIDPageRouteImport } from './pages/organization/IdentityDetailsByIDPage/route' +import { Route as organizationGroupDetailsByIDPageRouteImport } from './pages/organization/GroupDetailsByIDPage/route' +import { Route as organizationCertManagerOverviewPageRouteImport } from './pages/organization/CertManagerOverviewPage/route' import { Route as projectAccessControlPageRouteSshImport } from './pages/project/AccessControlPage/route-ssh' import { Route as projectAccessControlPageRouteSecretManagerImport } from './pages/project/AccessControlPage/route-secret-manager' import { Route as projectAccessControlPageRouteKmsImport } from './pages/project/AccessControlPage/route-kms' @@ -71,14 +79,6 @@ import { Route as secretManagerSecretRotationPageRouteImport } from './pages/sec import { Route as secretManagerOverviewPageRouteImport } from './pages/secret-manager/OverviewPage/route' import { Route as secretManagerSecretApprovalsPageRouteImport } from './pages/secret-manager/SecretApprovalsPage/route' import { Route as secretManagerIPAllowlistPageRouteImport } from './pages/secret-manager/IPAllowlistPage/route' -import { Route as organizationSshOverviewPageRouteImport } from './pages/organization/SshOverviewPage/route' -import { Route as organizationSecretManagerOverviewPageRouteImport } from './pages/organization/SecretManagerOverviewPage/route' -import { Route as organizationRoleByIDPageRouteImport } from './pages/organization/RoleByIDPage/route' -import { Route as organizationUserDetailsByIDPageRouteImport } from './pages/organization/UserDetailsByIDPage/route' -import { Route as organizationKmsOverviewPageRouteImport } from './pages/organization/KmsOverviewPage/route' -import { Route as organizationIdentityDetailsByIDPageRouteImport } from './pages/organization/IdentityDetailsByIDPage/route' -import { Route as organizationGroupDetailsByIDPageRouteImport } from './pages/organization/GroupDetailsByIDPage/route' -import { Route as organizationCertManagerOverviewPageRouteImport } from './pages/organization/CertManagerOverviewPage/route' import { Route as kmsSettingsPageRouteImport } from './pages/kms/SettingsPage/route' import { Route as kmsOverviewPageRouteImport } from './pages/kms/OverviewPage/route' import { Route as certManagerSettingsPageRouteImport } from './pages/cert-manager/SettingsPage/route' @@ -100,6 +100,7 @@ import { Route as sshSshCaByIDPageRouteImport } from './pages/ssh/SshCaByIDPage/ import { Route as secretManagerSecretDashboardPageRouteImport } from './pages/secret-manager/SecretDashboardPage/route' import { Route as secretManagerIntegrationsSelectIntegrationAuthPageRouteImport } from './pages/secret-manager/integrations/SelectIntegrationAuthPage/route' import { Route as secretManagerIntegrationsDetailsByIDPageRouteImport } from './pages/secret-manager/IntegrationsDetailsByIDPage/route' +import { Route as organizationAppConnectionsGithubOauthCallbackPageRouteImport } from './pages/organization/AppConnections/GithubOauthCallbackPage/route' import { Route as certManagerCertAuthDetailsByIDPageRouteImport } from './pages/cert-manager/CertAuthDetailsByIDPage/route' import { Route as secretManagerIntegrationsListPageRouteImport } from './pages/secret-manager/IntegrationsListPage/route' import { Route as secretManagerIntegrationsWindmillConfigurePageRouteImport } from './pages/secret-manager/integrations/WindmillConfigurePage/route' @@ -167,7 +168,6 @@ import { Route as secretManagerIntegrationsAwsSecretManagerConfigurePageRouteImp import { Route as secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteImport } from './pages/secret-manager/integrations/AwsSecretManagerAuthorizePage/route' import { Route as secretManagerIntegrationsAwsParameterStoreConfigurePageRouteImport } from './pages/secret-manager/integrations/AwsParameterStoreConfigurePage/route' import { Route as secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteImport } from './pages/secret-manager/integrations/AwsParameterStoreAuthorizePage/route' -import { Route as organizationAppConnectionsGithubOauthCallbackPageRouteImport } from './pages/organization/AppConnections/GithubOauthCallbackPage/route' import { Route as secretManagerIntegrationsVercelOauthCallbackPageRouteImport } from './pages/secret-manager/integrations/VercelOauthCallbackPage/route' import { Route as secretManagerIntegrationsNetlifyOauthCallbackPageRouteImport } from './pages/secret-manager/integrations/NetlifyOauthCallbackPage/route' import { Route as secretManagerIntegrationsHerokuOauthCallbackPageRouteImport } from './pages/secret-manager/integrations/HerokuOauthCallbackPage/route' @@ -189,31 +189,32 @@ const RestrictLoginSignupLoginImport = createFileRoute( const AuthenticatePersonalSettingsImport = createFileRoute( '/_authenticate/personal-settings', )() -const AuthenticateInjectOrgDetailsOrganizationImport = createFileRoute( - '/_authenticate/_inject-org-details/organization', -)() -const AuthenticateInjectOrgDetailsIntegrationsImport = createFileRoute( - '/_authenticate/_inject-org-details/integrations', -)() const AuthenticateInjectOrgDetailsAdminImport = createFileRoute( '/_authenticate/_inject-org-details/admin', )() -const AuthenticateInjectOrgDetailsSshProjectIdImport = createFileRoute( - '/_authenticate/_inject-org-details/ssh/$projectId', +const AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport = createFileRoute( + '/_authenticate/_inject-org-details/_org-layout/organization', )() -const AuthenticateInjectOrgDetailsSecretManagerProjectIdImport = +const AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport = createFileRoute( + '/_authenticate/_inject-org-details/_org-layout/integrations', +)() +const AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdImport = createFileRoute( + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId', +)() +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdImport = createFileRoute( - '/_authenticate/_inject-org-details/secret-manager/$projectId', + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId', )() -const AuthenticateInjectOrgDetailsKmsProjectIdImport = createFileRoute( - '/_authenticate/_inject-org-details/kms/$projectId', +const AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdImport = createFileRoute( + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId', )() -const AuthenticateInjectOrgDetailsCertManagerProjectIdImport = createFileRoute( - '/_authenticate/_inject-org-details/cert-manager/$projectId', -)() -const AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport = +const AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdImport = createFileRoute( - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations', + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId', + )() +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport = + createFileRoute( + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations', )() // Create/Update Routes @@ -313,20 +314,6 @@ const userLayoutRoute = userLayoutImport.update({ getParentRoute: () => AuthenticatePersonalSettingsRoute, } as any) -const AuthenticateInjectOrgDetailsOrganizationRoute = - AuthenticateInjectOrgDetailsOrganizationImport.update({ - id: '/organization', - path: '/organization', - getParentRoute: () => middlewaresInjectOrgDetailsRoute, - } as any) - -const AuthenticateInjectOrgDetailsIntegrationsRoute = - AuthenticateInjectOrgDetailsIntegrationsImport.update({ - id: '/integrations', - path: '/integrations', - getParentRoute: () => middlewaresInjectOrgDetailsRoute, - } as any) - const AuthenticateInjectOrgDetailsAdminRoute = AuthenticateInjectOrgDetailsAdminImport.update({ id: '/admin', @@ -334,6 +321,11 @@ const AuthenticateInjectOrgDetailsAdminRoute = getParentRoute: () => middlewaresInjectOrgDetailsRoute, } as any) +const organizationLayoutRoute = organizationLayoutImport.update({ + id: '/_org-layout', + getParentRoute: () => middlewaresInjectOrgDetailsRoute, +} as any) + const publicViewSharedSecretByIDPageRouteRoute = publicViewSharedSecretByIDPageRouteImport.update({ id: '/shared/secret/$secretId', @@ -383,44 +375,25 @@ const authLoginPageRouteRoute = authLoginPageRouteImport.update({ getParentRoute: () => RestrictLoginSignupLoginRoute, } as any) -const AuthenticateInjectOrgDetailsSshProjectIdRoute = - AuthenticateInjectOrgDetailsSshProjectIdImport.update({ - id: '/ssh/$projectId', - path: '/ssh/$projectId', - getParentRoute: () => middlewaresInjectOrgDetailsRoute, - } as any) - -const AuthenticateInjectOrgDetailsSecretManagerProjectIdRoute = - AuthenticateInjectOrgDetailsSecretManagerProjectIdImport.update({ - id: '/secret-manager/$projectId', - path: '/secret-manager/$projectId', - getParentRoute: () => middlewaresInjectOrgDetailsRoute, - } as any) - -const organizationLayoutRoute = organizationLayoutImport.update({ - id: '/_layout', - getParentRoute: () => AuthenticateInjectOrgDetailsOrganizationRoute, -} as any) - -const AuthenticateInjectOrgDetailsKmsProjectIdRoute = - AuthenticateInjectOrgDetailsKmsProjectIdImport.update({ - id: '/kms/$projectId', - path: '/kms/$projectId', - getParentRoute: () => middlewaresInjectOrgDetailsRoute, - } as any) - -const AuthenticateInjectOrgDetailsCertManagerProjectIdRoute = - AuthenticateInjectOrgDetailsCertManagerProjectIdImport.update({ - id: '/cert-manager/$projectId', - path: '/cert-manager/$projectId', - getParentRoute: () => middlewaresInjectOrgDetailsRoute, - } as any) - const adminLayoutRoute = adminLayoutImport.update({ id: '/_admin-layout', getParentRoute: () => AuthenticateInjectOrgDetailsAdminRoute, } as any) +const AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute = + AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport.update({ + id: '/organization', + path: '/organization', + getParentRoute: () => organizationLayoutRoute, + } as any) + +const AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute = + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport.update({ + id: '/integrations', + path: '/integrations', + getParentRoute: () => organizationLayoutRoute, + } as any) + const authProviderSuccessPageRouteRoute = authProviderSuccessPageRouteImport.update({ id: '/provider/success', @@ -443,52 +416,64 @@ const userPersonalSettingsPageRouteRoute = getParentRoute: () => userLayoutRoute, } as any) -const sshLayoutRoute = sshLayoutImport.update({ - id: '/_ssh-layout', - getParentRoute: () => AuthenticateInjectOrgDetailsSshProjectIdRoute, -} as any) +const AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRoute = + AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdImport.update({ + id: '/ssh/$projectId', + path: '/ssh/$projectId', + getParentRoute: () => organizationLayoutRoute, + } as any) -const secretManagerLayoutRoute = secretManagerLayoutImport.update({ - id: '/_secret-manager-layout', - getParentRoute: () => AuthenticateInjectOrgDetailsSecretManagerProjectIdRoute, -} as any) +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRoute = + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdImport.update({ + id: '/secret-manager/$projectId', + path: '/secret-manager/$projectId', + getParentRoute: () => organizationLayoutRoute, + } as any) -const kmsLayoutRoute = kmsLayoutImport.update({ - id: '/_kms-layout', - getParentRoute: () => AuthenticateInjectOrgDetailsKmsProjectIdRoute, -} as any) +const AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRoute = + AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdImport.update({ + id: '/kms/$projectId', + path: '/kms/$projectId', + getParentRoute: () => organizationLayoutRoute, + } as any) -const certManagerLayoutRoute = certManagerLayoutImport.update({ - id: '/_cert-manager-layout', - getParentRoute: () => AuthenticateInjectOrgDetailsCertManagerProjectIdRoute, -} as any) +const AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRoute = + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdImport.update({ + id: '/cert-manager/$projectId', + path: '/cert-manager/$projectId', + getParentRoute: () => organizationLayoutRoute, + } as any) const organizationSettingsPageRouteRoute = organizationSettingsPageRouteImport.update({ id: '/settings', path: '/settings', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const organizationSecretSharingPageRouteRoute = organizationSecretSharingPageRouteImport.update({ id: '/secret-sharing', path: '/secret-sharing', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const organizationSecretScanningPageRouteRoute = organizationSecretScanningPageRouteImport.update({ id: '/secret-scanning', path: '/secret-scanning', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const organizationNoOrgPageRouteRoute = organizationNoOrgPageRouteImport.update( { id: '/none', path: '/none', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any, ) @@ -496,21 +481,24 @@ const organizationBillingPageRouteRoute = organizationBillingPageRouteImport.update({ id: '/billing', path: '/billing', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const organizationAuditLogsPageRouteRoute = organizationAuditLogsPageRouteImport.update({ id: '/audit-logs', path: '/audit-logs', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const organizationAdminPageRouteRoute = organizationAdminPageRouteImport.update( { id: '/admin', path: '/admin', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any, ) @@ -518,7 +506,8 @@ const organizationAccessManagementPageRouteRoute = organizationAccessManagementPageRouteImport.update({ id: '/access-management', path: '/access-management', - getParentRoute: () => organizationLayoutRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const adminOverviewPageRouteRoute = adminOverviewPageRouteImport.update({ @@ -527,6 +516,92 @@ const adminOverviewPageRouteRoute = adminOverviewPageRouteImport.update({ getParentRoute: () => adminLayoutRoute, } as any) +const sshLayoutRoute = sshLayoutImport.update({ + id: '/_ssh-layout', + getParentRoute: () => AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRoute, +} as any) + +const secretManagerLayoutRoute = secretManagerLayoutImport.update({ + id: '/_secret-manager-layout', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRoute, +} as any) + +const kmsLayoutRoute = kmsLayoutImport.update({ + id: '/_kms-layout', + getParentRoute: () => AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRoute, +} as any) + +const certManagerLayoutRoute = certManagerLayoutImport.update({ + id: '/_cert-manager-layout', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRoute, +} as any) + +const organizationSshOverviewPageRouteRoute = + organizationSshOverviewPageRouteImport.update({ + id: '/ssh/overview', + path: '/ssh/overview', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationSecretManagerOverviewPageRouteRoute = + organizationSecretManagerOverviewPageRouteImport.update({ + id: '/secret-manager/overview', + path: '/secret-manager/overview', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationRoleByIDPageRouteRoute = + organizationRoleByIDPageRouteImport.update({ + id: '/roles/$roleId', + path: '/roles/$roleId', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationUserDetailsByIDPageRouteRoute = + organizationUserDetailsByIDPageRouteImport.update({ + id: '/members/$membershipId', + path: '/members/$membershipId', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationKmsOverviewPageRouteRoute = + organizationKmsOverviewPageRouteImport.update({ + id: '/kms/overview', + path: '/kms/overview', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationIdentityDetailsByIDPageRouteRoute = + organizationIdentityDetailsByIDPageRouteImport.update({ + id: '/identities/$identityId', + path: '/identities/$identityId', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationGroupDetailsByIDPageRouteRoute = + organizationGroupDetailsByIDPageRouteImport.update({ + id: '/groups/$groupId', + path: '/groups/$groupId', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + +const organizationCertManagerOverviewPageRouteRoute = + organizationCertManagerOverviewPageRouteImport.update({ + id: '/cert-manager/overview', + path: '/cert-manager/overview', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, + } as any) + const projectAccessControlPageRouteSshRoute = projectAccessControlPageRouteSshImport.update({ id: '/access-management', @@ -534,8 +609,8 @@ const projectAccessControlPageRouteSshRoute = getParentRoute: () => sshLayoutRoute, } as any) -const AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute = - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport.update( +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute = + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport.update( { id: '/integrations', path: '/integrations', @@ -561,56 +636,64 @@ const secretManagerIntegrationsRouteVercelOauthRedirectRoute = secretManagerIntegrationsRouteVercelOauthRedirectImport.update({ id: '/vercel/oauth2/callback', path: '/vercel/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteNetlifyOauthRedirectRoute = secretManagerIntegrationsRouteNetlifyOauthRedirectImport.update({ id: '/netlify/oauth2/callback', path: '/netlify/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteHerokuOauthRedirectRoute = secretManagerIntegrationsRouteHerokuOauthRedirectImport.update({ id: '/heroku/oauth2/callback', path: '/heroku/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteGitlabOauthRedirectRoute = secretManagerIntegrationsRouteGitlabOauthRedirectImport.update({ id: '/gitlab/oauth2/callback', path: '/gitlab/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteGithubOauthRedirectRoute = secretManagerIntegrationsRouteGithubOauthRedirectImport.update({ id: '/github/oauth2/callback', path: '/github/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteGcpOauthRedirectRoute = secretManagerIntegrationsRouteGcpOauthRedirectImport.update({ id: '/gcp-secret-manager/oauth2/callback', path: '/gcp-secret-manager/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteBitbucketOauthRedirectRoute = secretManagerIntegrationsRouteBitbucketOauthRedirectImport.update({ id: '/bitbucket/oauth2/callback', path: '/bitbucket/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectRoute = secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectImport.update({ id: '/azure-key-vault/oauth2/callback', path: '/azure-key-vault/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute = @@ -618,7 +701,8 @@ const secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute = { id: '/azure-app-configuration/oauth2/callback', path: '/azure-app-configuration/oauth2/callback', - getParentRoute: () => AuthenticateInjectOrgDetailsIntegrationsRoute, + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute, } as any, ) @@ -676,62 +760,6 @@ const secretManagerIPAllowlistPageRouteRoute = getParentRoute: () => secretManagerLayoutRoute, } as any) -const organizationSshOverviewPageRouteRoute = - organizationSshOverviewPageRouteImport.update({ - id: '/ssh/overview', - path: '/ssh/overview', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationSecretManagerOverviewPageRouteRoute = - organizationSecretManagerOverviewPageRouteImport.update({ - id: '/secret-manager/overview', - path: '/secret-manager/overview', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationRoleByIDPageRouteRoute = - organizationRoleByIDPageRouteImport.update({ - id: '/roles/$roleId', - path: '/roles/$roleId', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationUserDetailsByIDPageRouteRoute = - organizationUserDetailsByIDPageRouteImport.update({ - id: '/members/$membershipId', - path: '/members/$membershipId', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationKmsOverviewPageRouteRoute = - organizationKmsOverviewPageRouteImport.update({ - id: '/kms/overview', - path: '/kms/overview', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationIdentityDetailsByIDPageRouteRoute = - organizationIdentityDetailsByIDPageRouteImport.update({ - id: '/identities/$identityId', - path: '/identities/$identityId', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationGroupDetailsByIDPageRouteRoute = - organizationGroupDetailsByIDPageRouteImport.update({ - id: '/groups/$groupId', - path: '/groups/$groupId', - getParentRoute: () => organizationLayoutRoute, - } as any) - -const organizationCertManagerOverviewPageRouteRoute = - organizationCertManagerOverviewPageRouteImport.update({ - id: '/cert-manager/overview', - path: '/cert-manager/overview', - getParentRoute: () => organizationLayoutRoute, - } as any) - const kmsSettingsPageRouteRoute = kmsSettingsPageRouteImport.update({ id: '/settings', path: '/settings', @@ -867,7 +895,7 @@ const secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute = id: '/select-integration-auth', path: '/select-integration-auth', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsDetailsByIDPageRouteRoute = @@ -875,7 +903,15 @@ const secretManagerIntegrationsDetailsByIDPageRouteRoute = id: '/$integrationId', path: '/$integrationId', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + } as any) + +const organizationAppConnectionsGithubOauthCallbackPageRouteRoute = + organizationAppConnectionsGithubOauthCallbackPageRouteImport.update({ + id: '/app-connections/github/oauth/callback', + path: '/app-connections/github/oauth/callback', + getParentRoute: () => + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute, } as any) const certManagerCertAuthDetailsByIDPageRouteRoute = @@ -890,7 +926,7 @@ const secretManagerIntegrationsListPageRouteRoute = id: '/', path: '/', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsWindmillConfigurePageRouteRoute = @@ -898,7 +934,7 @@ const secretManagerIntegrationsWindmillConfigurePageRouteRoute = id: '/windmill/create', path: '/windmill/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsWindmillAuthorizePageRouteRoute = @@ -906,7 +942,7 @@ const secretManagerIntegrationsWindmillAuthorizePageRouteRoute = id: '/windmill/authorize', path: '/windmill/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsVercelConfigurePageRouteRoute = @@ -914,7 +950,7 @@ const secretManagerIntegrationsVercelConfigurePageRouteRoute = id: '/vercel/create', path: '/vercel/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsTravisCIConfigurePageRouteRoute = @@ -922,7 +958,7 @@ const secretManagerIntegrationsTravisCIConfigurePageRouteRoute = id: '/travisci/create', path: '/travisci/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsTravisCIAuthorizePageRouteRoute = @@ -930,7 +966,7 @@ const secretManagerIntegrationsTravisCIAuthorizePageRouteRoute = id: '/travisci/authorize', path: '/travisci/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsTerraformCloudConfigurePageRouteRoute = @@ -938,7 +974,7 @@ const secretManagerIntegrationsTerraformCloudConfigurePageRouteRoute = id: '/terraform-cloud/create', path: '/terraform-cloud/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsTerraformCloudAuthorizePageRouteRoute = @@ -946,7 +982,7 @@ const secretManagerIntegrationsTerraformCloudAuthorizePageRouteRoute = id: '/terraform-cloud/authorize', path: '/terraform-cloud/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsTeamcityConfigurePageRouteRoute = @@ -954,7 +990,7 @@ const secretManagerIntegrationsTeamcityConfigurePageRouteRoute = id: '/teamcity/create', path: '/teamcity/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsTeamcityAuthorizePageRouteRoute = @@ -962,7 +998,7 @@ const secretManagerIntegrationsTeamcityAuthorizePageRouteRoute = id: '/teamcity/authorize', path: '/teamcity/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsSupabaseConfigurePageRouteRoute = @@ -970,7 +1006,7 @@ const secretManagerIntegrationsSupabaseConfigurePageRouteRoute = id: '/supabase/create', path: '/supabase/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsSupabaseAuthorizePageRouteRoute = @@ -978,7 +1014,7 @@ const secretManagerIntegrationsSupabaseAuthorizePageRouteRoute = id: '/supabase/authorize', path: '/supabase/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRundeckConfigurePageRouteRoute = @@ -986,7 +1022,7 @@ const secretManagerIntegrationsRundeckConfigurePageRouteRoute = id: '/rundeck/create', path: '/rundeck/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRundeckAuthorizePageRouteRoute = @@ -994,7 +1030,7 @@ const secretManagerIntegrationsRundeckAuthorizePageRouteRoute = id: '/rundeck/authorize', path: '/rundeck/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRenderConfigurePageRouteRoute = @@ -1002,7 +1038,7 @@ const secretManagerIntegrationsRenderConfigurePageRouteRoute = id: '/render/create', path: '/render/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRenderAuthorizePageRouteRoute = @@ -1010,7 +1046,7 @@ const secretManagerIntegrationsRenderAuthorizePageRouteRoute = id: '/render/authorize', path: '/render/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRailwayConfigurePageRouteRoute = @@ -1018,7 +1054,7 @@ const secretManagerIntegrationsRailwayConfigurePageRouteRoute = id: '/railway/create', path: '/railway/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsRailwayAuthorizePageRouteRoute = @@ -1026,7 +1062,7 @@ const secretManagerIntegrationsRailwayAuthorizePageRouteRoute = id: '/railway/authorize', path: '/railway/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsQoveryConfigurePageRouteRoute = @@ -1034,7 +1070,7 @@ const secretManagerIntegrationsQoveryConfigurePageRouteRoute = id: '/qovery/create', path: '/qovery/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsQoveryAuthorizePageRouteRoute = @@ -1042,7 +1078,7 @@ const secretManagerIntegrationsQoveryAuthorizePageRouteRoute = id: '/qovery/authorize', path: '/qovery/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsOctopusDeployConfigurePageRouteRoute = @@ -1050,7 +1086,7 @@ const secretManagerIntegrationsOctopusDeployConfigurePageRouteRoute = id: '/octopus-deploy/create', path: '/octopus-deploy/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsOctopusDeployAuthorizePageRouteRoute = @@ -1058,7 +1094,7 @@ const secretManagerIntegrationsOctopusDeployAuthorizePageRouteRoute = id: '/octopus-deploy/authorize', path: '/octopus-deploy/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsNorthflankConfigurePageRouteRoute = @@ -1066,7 +1102,7 @@ const secretManagerIntegrationsNorthflankConfigurePageRouteRoute = id: '/northflank/create', path: '/northflank/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsNorthflankAuthorizePageRouteRoute = @@ -1074,7 +1110,7 @@ const secretManagerIntegrationsNorthflankAuthorizePageRouteRoute = id: '/northflank/authorize', path: '/northflank/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsNetlifyConfigurePageRouteRoute = @@ -1082,7 +1118,7 @@ const secretManagerIntegrationsNetlifyConfigurePageRouteRoute = id: '/netlify/create', path: '/netlify/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsLaravelForgeConfigurePageRouteRoute = @@ -1090,7 +1126,7 @@ const secretManagerIntegrationsLaravelForgeConfigurePageRouteRoute = id: '/laravel-forge/create', path: '/laravel-forge/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsLaravelForgeAuthorizePageRouteRoute = @@ -1098,7 +1134,7 @@ const secretManagerIntegrationsLaravelForgeAuthorizePageRouteRoute = id: '/laravel-forge/authorize', path: '/laravel-forge/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsHerokuConfigurePageRouteRoute = @@ -1106,7 +1142,7 @@ const secretManagerIntegrationsHerokuConfigurePageRouteRoute = id: '/heroku/create', path: '/heroku/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsHasuraCloudConfigurePageRouteRoute = @@ -1114,7 +1150,7 @@ const secretManagerIntegrationsHasuraCloudConfigurePageRouteRoute = id: '/hasura-cloud/create', path: '/hasura-cloud/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsHasuraCloudAuthorizePageRouteRoute = @@ -1122,7 +1158,7 @@ const secretManagerIntegrationsHasuraCloudAuthorizePageRouteRoute = id: '/hasura-cloud/authorize', path: '/hasura-cloud/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsHashicorpVaultConfigurePageRouteRoute = @@ -1130,7 +1166,7 @@ const secretManagerIntegrationsHashicorpVaultConfigurePageRouteRoute = id: '/hashicorp-vault/create', path: '/hashicorp-vault/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsHashicorpVaultAuthorizePageRouteRoute = @@ -1138,7 +1174,7 @@ const secretManagerIntegrationsHashicorpVaultAuthorizePageRouteRoute = id: '/hashicorp-vault/authorize', path: '/hashicorp-vault/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGitlabConfigurePageRouteRoute = @@ -1146,7 +1182,7 @@ const secretManagerIntegrationsGitlabConfigurePageRouteRoute = id: '/gitlab/create', path: '/gitlab/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGitlabAuthorizePageRouteRoute = @@ -1154,7 +1190,7 @@ const secretManagerIntegrationsGitlabAuthorizePageRouteRoute = id: '/gitlab/authorize', path: '/gitlab/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGithubConfigurePageRouteRoute = @@ -1162,7 +1198,7 @@ const secretManagerIntegrationsGithubConfigurePageRouteRoute = id: '/github/create', path: '/github/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGithubAuthorizePageRouteRoute = @@ -1170,7 +1206,7 @@ const secretManagerIntegrationsGithubAuthorizePageRouteRoute = id: '/github/auth-mode-selection', path: '/github/auth-mode-selection', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGcpSecretManagerConfigurePageRouteRoute = @@ -1178,7 +1214,7 @@ const secretManagerIntegrationsGcpSecretManagerConfigurePageRouteRoute = id: '/gcp-secret-manager/create', path: '/gcp-secret-manager/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGcpSecretManagerAuthorizePageRouteRoute = @@ -1186,7 +1222,7 @@ const secretManagerIntegrationsGcpSecretManagerAuthorizePageRouteRoute = id: '/gcp-secret-manager/authorize', path: '/gcp-secret-manager/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsFlyioConfigurePageRouteRoute = @@ -1194,7 +1230,7 @@ const secretManagerIntegrationsFlyioConfigurePageRouteRoute = id: '/flyio/create', path: '/flyio/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsFlyioAuthorizePageRouteRoute = @@ -1202,7 +1238,7 @@ const secretManagerIntegrationsFlyioAuthorizePageRouteRoute = id: '/flyio/authorize', path: '/flyio/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsDigitalOceanAppPlatformConfigurePageRouteRoute = @@ -1211,7 +1247,7 @@ const secretManagerIntegrationsDigitalOceanAppPlatformConfigurePageRouteRoute = id: '/digital-ocean-app-platform/create', path: '/digital-ocean-app-platform/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any, ) @@ -1221,7 +1257,7 @@ const secretManagerIntegrationsDigitalOceanAppPlatformAuthorizePageRouteRoute = id: '/digital-ocean-app-platform/authorize', path: '/digital-ocean-app-platform/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any, ) @@ -1230,7 +1266,7 @@ const secretManagerIntegrationsDatabricksConfigurePageRouteRoute = id: '/databricks/create', path: '/databricks/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsDatabricksAuthorizePageRouteRoute = @@ -1238,7 +1274,7 @@ const secretManagerIntegrationsDatabricksAuthorizePageRouteRoute = id: '/databricks/authorize', path: '/databricks/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCodefreshConfigurePageRouteRoute = @@ -1246,7 +1282,7 @@ const secretManagerIntegrationsCodefreshConfigurePageRouteRoute = id: '/codefresh/create', path: '/codefresh/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCodefreshAuthorizePageRouteRoute = @@ -1254,7 +1290,7 @@ const secretManagerIntegrationsCodefreshAuthorizePageRouteRoute = id: '/codefresh/authorize', path: '/codefresh/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCloudflareWorkersConfigurePageRouteRoute = @@ -1262,7 +1298,7 @@ const secretManagerIntegrationsCloudflareWorkersConfigurePageRouteRoute = id: '/cloudflare-workers/create', path: '/cloudflare-workers/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCloudflareWorkersAuthorizePageRouteRoute = @@ -1270,7 +1306,7 @@ const secretManagerIntegrationsCloudflareWorkersAuthorizePageRouteRoute = id: '/cloudflare-workers/authorize', path: '/cloudflare-workers/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCloudflarePagesConfigurePageRouteRoute = @@ -1278,7 +1314,7 @@ const secretManagerIntegrationsCloudflarePagesConfigurePageRouteRoute = id: '/cloudflare-pages/create', path: '/cloudflare-pages/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCloudflarePagesAuthorizePageRouteRoute = @@ -1286,7 +1322,7 @@ const secretManagerIntegrationsCloudflarePagesAuthorizePageRouteRoute = id: '/cloudflare-pages/authorize', path: '/cloudflare-pages/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCloud66ConfigurePageRouteRoute = @@ -1294,7 +1330,7 @@ const secretManagerIntegrationsCloud66ConfigurePageRouteRoute = id: '/cloud-66/create', path: '/cloud-66/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCloud66AuthorizePageRouteRoute = @@ -1302,7 +1338,7 @@ const secretManagerIntegrationsCloud66AuthorizePageRouteRoute = id: '/cloud-66/authorize', path: '/cloud-66/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCircleCIConfigurePageRouteRoute = @@ -1310,7 +1346,7 @@ const secretManagerIntegrationsCircleCIConfigurePageRouteRoute = id: '/circleci/create', path: '/circleci/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsCircleCIAuthorizePageRouteRoute = @@ -1318,7 +1354,7 @@ const secretManagerIntegrationsCircleCIAuthorizePageRouteRoute = id: '/circleci/authorize', path: '/circleci/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsChecklyConfigurePageRouteRoute = @@ -1326,7 +1362,7 @@ const secretManagerIntegrationsChecklyConfigurePageRouteRoute = id: '/checkly/create', path: '/checkly/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsChecklyAuthorizePageRouteRoute = @@ -1334,7 +1370,7 @@ const secretManagerIntegrationsChecklyAuthorizePageRouteRoute = id: '/checkly/authorize', path: '/checkly/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsBitbucketConfigurePageRouteRoute = @@ -1342,7 +1378,7 @@ const secretManagerIntegrationsBitbucketConfigurePageRouteRoute = id: '/bitbucket/create', path: '/bitbucket/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureKeyVaultConfigurePageRouteRoute = @@ -1350,7 +1386,7 @@ const secretManagerIntegrationsAzureKeyVaultConfigurePageRouteRoute = id: '/azure-key-vault/create', path: '/azure-key-vault/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureKeyVaultAuthorizePageRouteRoute = @@ -1358,7 +1394,7 @@ const secretManagerIntegrationsAzureKeyVaultAuthorizePageRouteRoute = id: '/azure-key-vault/authorize', path: '/azure-key-vault/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureDevopsConfigurePageRouteRoute = @@ -1366,7 +1402,7 @@ const secretManagerIntegrationsAzureDevopsConfigurePageRouteRoute = id: '/azure-devops/create', path: '/azure-devops/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureDevopsAuthorizePageRouteRoute = @@ -1374,7 +1410,7 @@ const secretManagerIntegrationsAzureDevopsAuthorizePageRouteRoute = id: '/azure-devops/authorize', path: '/azure-devops/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureAppConfigurationConfigurePageRouteRoute = @@ -1383,7 +1419,7 @@ const secretManagerIntegrationsAzureAppConfigurationConfigurePageRouteRoute = id: '/azure-app-configuration/create', path: '/azure-app-configuration/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any, ) @@ -1392,7 +1428,7 @@ const secretManagerIntegrationsAwsSecretManagerConfigurePageRouteRoute = id: '/aws-secret-manager/create', path: '/aws-secret-manager/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteRoute = @@ -1400,7 +1436,7 @@ const secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteRoute = id: '/aws-secret-manager/authorize', path: '/aws-secret-manager/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAwsParameterStoreConfigurePageRouteRoute = @@ -1408,7 +1444,7 @@ const secretManagerIntegrationsAwsParameterStoreConfigurePageRouteRoute = id: '/aws-parameter-store/create', path: '/aws-parameter-store/create', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteRoute = @@ -1416,14 +1452,7 @@ const secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteRoute = id: '/aws-parameter-store/authorize', path: '/aws-parameter-store/authorize', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, - } as any) - -const organizationAppConnectionsGithubOauthCallbackPageRouteRoute = - organizationAppConnectionsGithubOauthCallbackPageRouteImport.update({ - id: '/app-connections/github/oauth/callback', - path: '/app-connections/github/oauth/callback', - getParentRoute: () => organizationLayoutRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsVercelOauthCallbackPageRouteRoute = @@ -1431,7 +1460,7 @@ const secretManagerIntegrationsVercelOauthCallbackPageRouteRoute = id: '/vercel/oauth2/callback', path: '/vercel/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsNetlifyOauthCallbackPageRouteRoute = @@ -1439,7 +1468,7 @@ const secretManagerIntegrationsNetlifyOauthCallbackPageRouteRoute = id: '/netlify/oauth2/callback', path: '/netlify/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsHerokuOauthCallbackPageRouteRoute = @@ -1447,7 +1476,7 @@ const secretManagerIntegrationsHerokuOauthCallbackPageRouteRoute = id: '/heroku/oauth2/callback', path: '/heroku/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGitlabOauthCallbackPageRouteRoute = @@ -1455,7 +1484,7 @@ const secretManagerIntegrationsGitlabOauthCallbackPageRouteRoute = id: '/gitlab/oauth2/callback', path: '/gitlab/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGithubOauthCallbackPageRouteRoute = @@ -1463,7 +1492,7 @@ const secretManagerIntegrationsGithubOauthCallbackPageRouteRoute = id: '/github/oauth2/callback', path: '/github/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsGcpSecretManagerOauthCallbackPageRouteRoute = @@ -1471,7 +1500,7 @@ const secretManagerIntegrationsGcpSecretManagerOauthCallbackPageRouteRoute = id: '/gcp-secret-manager/oauth2/callback', path: '/gcp-secret-manager/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsBitbucketOauthCallbackPageRouteRoute = @@ -1479,7 +1508,7 @@ const secretManagerIntegrationsBitbucketOauthCallbackPageRouteRoute = id: '/bitbucket/oauth2/callback', path: '/bitbucket/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureKeyVaultOauthCallbackPageRouteRoute = @@ -1487,7 +1516,7 @@ const secretManagerIntegrationsAzureKeyVaultOauthCallbackPageRouteRoute = id: '/azure-key-vault/oauth2/callback', path: '/azure-key-vault/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any) const secretManagerIntegrationsAzureAppConfigurationOauthCallbackPageRouteRoute = @@ -1496,7 +1525,7 @@ const secretManagerIntegrationsAzureAppConfigurationOauthCallbackPageRouteRoute id: '/azure-app-configuration/oauth2/callback', path: '/azure-app-configuration/oauth2/callback', getParentRoute: () => - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute, } as any, ) @@ -1658,6 +1687,13 @@ declare module '@tanstack/react-router' { preLoaderRoute: typeof publicViewSharedSecretByIDPageRouteImport parentRoute: typeof rootRoute } + '/_authenticate/_inject-org-details/_org-layout': { + id: '/_authenticate/_inject-org-details/_org-layout' + path: '' + fullPath: '' + preLoaderRoute: typeof organizationLayoutImport + parentRoute: typeof middlewaresInjectOrgDetailsImport + } '/_authenticate/_inject-org-details/admin': { id: '/_authenticate/_inject-org-details/admin' path: '/admin' @@ -1665,20 +1701,6 @@ declare module '@tanstack/react-router' { preLoaderRoute: typeof AuthenticateInjectOrgDetailsAdminImport parentRoute: typeof middlewaresInjectOrgDetailsImport } - '/_authenticate/_inject-org-details/integrations': { - id: '/_authenticate/_inject-org-details/integrations' - path: '/integrations' - fullPath: '/integrations' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport - parentRoute: typeof middlewaresInjectOrgDetailsImport - } - '/_authenticate/_inject-org-details/organization': { - id: '/_authenticate/_inject-org-details/organization' - path: '/organization' - fullPath: '/organization' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrganizationImport - parentRoute: typeof middlewaresInjectOrgDetailsImport - } '/_authenticate/personal-settings/_layout': { id: '/_authenticate/personal-settings/_layout' path: '' @@ -1707,6 +1729,20 @@ declare module '@tanstack/react-router' { preLoaderRoute: typeof authProviderSuccessPageRouteImport parentRoute: typeof RestrictLoginSignupLoginImport } + '/_authenticate/_inject-org-details/_org-layout/integrations': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations' + path: '/integrations' + fullPath: '/integrations' + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport + parentRoute: typeof organizationLayoutImport + } + '/_authenticate/_inject-org-details/_org-layout/organization': { + id: '/_authenticate/_inject-org-details/_org-layout/organization' + path: '/organization' + fullPath: '/organization' + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + parentRoute: typeof organizationLayoutImport + } '/_authenticate/_inject-org-details/admin/_admin-layout': { id: '/_authenticate/_inject-org-details/admin/_admin-layout' path: '' @@ -1714,41 +1750,6 @@ declare module '@tanstack/react-router' { preLoaderRoute: typeof adminLayoutImport parentRoute: typeof AuthenticateInjectOrgDetailsAdminImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId' - path: '/cert-manager/$projectId' - fullPath: '/cert-manager/$projectId' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsCertManagerProjectIdImport - parentRoute: typeof middlewaresInjectOrgDetailsImport - } - '/_authenticate/_inject-org-details/kms/$projectId': { - id: '/_authenticate/_inject-org-details/kms/$projectId' - path: '/kms/$projectId' - fullPath: '/kms/$projectId' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsKmsProjectIdImport - parentRoute: typeof middlewaresInjectOrgDetailsImport - } - '/_authenticate/_inject-org-details/organization/_layout': { - id: '/_authenticate/_inject-org-details/organization/_layout' - path: '' - fullPath: '/organization' - preLoaderRoute: typeof organizationLayoutImport - parentRoute: typeof AuthenticateInjectOrgDetailsOrganizationImport - } - '/_authenticate/_inject-org-details/secret-manager/$projectId': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId' - path: '/secret-manager/$projectId' - fullPath: '/secret-manager/$projectId' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdImport - parentRoute: typeof middlewaresInjectOrgDetailsImport - } - '/_authenticate/_inject-org-details/ssh/$projectId': { - id: '/_authenticate/_inject-org-details/ssh/$projectId' - path: '/ssh/$projectId' - fullPath: '/ssh/$projectId' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsSshProjectIdImport - parentRoute: typeof middlewaresInjectOrgDetailsImport - } '/_authenticate/_inject-org-details/admin/_admin-layout/': { id: '/_authenticate/_inject-org-details/admin/_admin-layout/' path: '/' @@ -1756,1011 +1757,1013 @@ declare module '@tanstack/react-router' { preLoaderRoute: typeof adminOverviewPageRouteImport parentRoute: typeof adminLayoutImport } - '/_authenticate/_inject-org-details/organization/_layout/access-management': { - id: '/_authenticate/_inject-org-details/organization/_layout/access-management' + '/_authenticate/_inject-org-details/_org-layout/organization/access-management': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/access-management' path: '/access-management' fullPath: '/organization/access-management' preLoaderRoute: typeof organizationAccessManagementPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/admin': { - id: '/_authenticate/_inject-org-details/organization/_layout/admin' + '/_authenticate/_inject-org-details/_org-layout/organization/admin': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/admin' path: '/admin' fullPath: '/organization/admin' preLoaderRoute: typeof organizationAdminPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/audit-logs': { - id: '/_authenticate/_inject-org-details/organization/_layout/audit-logs' + '/_authenticate/_inject-org-details/_org-layout/organization/audit-logs': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/audit-logs' path: '/audit-logs' fullPath: '/organization/audit-logs' preLoaderRoute: typeof organizationAuditLogsPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/billing': { - id: '/_authenticate/_inject-org-details/organization/_layout/billing' + '/_authenticate/_inject-org-details/_org-layout/organization/billing': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/billing' path: '/billing' fullPath: '/organization/billing' preLoaderRoute: typeof organizationBillingPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/none': { - id: '/_authenticate/_inject-org-details/organization/_layout/none' + '/_authenticate/_inject-org-details/_org-layout/organization/none': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/none' path: '/none' fullPath: '/organization/none' preLoaderRoute: typeof organizationNoOrgPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/secret-scanning': { - id: '/_authenticate/_inject-org-details/organization/_layout/secret-scanning' + '/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning' path: '/secret-scanning' fullPath: '/organization/secret-scanning' preLoaderRoute: typeof organizationSecretScanningPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/secret-sharing': { - id: '/_authenticate/_inject-org-details/organization/_layout/secret-sharing' + '/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing' path: '/secret-sharing' fullPath: '/organization/secret-sharing' preLoaderRoute: typeof organizationSecretSharingPageRouteImport - parentRoute: typeof organizationLayoutImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport } - '/_authenticate/_inject-org-details/organization/_layout/settings': { - id: '/_authenticate/_inject-org-details/organization/_layout/settings' + '/_authenticate/_inject-org-details/_org-layout/organization/settings': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/settings' path: '/settings' fullPath: '/organization/settings' preLoaderRoute: typeof organizationSettingsPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId' + path: '/cert-manager/$projectId' + fullPath: '/cert-manager/$projectId' + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdImport parentRoute: typeof organizationLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId' + path: '/kms/$projectId' + fullPath: '/kms/$projectId' + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdImport + parentRoute: typeof organizationLayoutImport + } + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId' + path: '/secret-manager/$projectId' + fullPath: '/secret-manager/$projectId' + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdImport + parentRoute: typeof organizationLayoutImport + } + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId' + path: '/ssh/$projectId' + fullPath: '/ssh/$projectId' + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdImport + parentRoute: typeof organizationLayoutImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview' + path: '/cert-manager/overview' + fullPath: '/organization/cert-manager/overview' + preLoaderRoute: typeof organizationCertManagerOverviewPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId' + path: '/groups/$groupId' + fullPath: '/organization/groups/$groupId' + preLoaderRoute: typeof organizationGroupDetailsByIDPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId' + path: '/identities/$identityId' + fullPath: '/organization/identities/$identityId' + preLoaderRoute: typeof organizationIdentityDetailsByIDPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/kms/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/kms/overview' + path: '/kms/overview' + fullPath: '/organization/kms/overview' + preLoaderRoute: typeof organizationKmsOverviewPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId' + path: '/members/$membershipId' + fullPath: '/organization/members/$membershipId' + preLoaderRoute: typeof organizationUserDetailsByIDPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId' + path: '/roles/$roleId' + fullPath: '/organization/roles/$roleId' + preLoaderRoute: typeof organizationRoleByIDPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/secret-manager/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/secret-manager/overview' + path: '/secret-manager/overview' + fullPath: '/organization/secret-manager/overview' + preLoaderRoute: typeof organizationSecretManagerOverviewPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview' + path: '/ssh/overview' + fullPath: '/organization/ssh/overview' + preLoaderRoute: typeof organizationSshOverviewPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout' path: '' fullPath: '/cert-manager/$projectId' preLoaderRoute: typeof certManagerLayoutImport - parentRoute: typeof AuthenticateInjectOrgDetailsCertManagerProjectIdImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout' path: '' fullPath: '/kms/$projectId' preLoaderRoute: typeof kmsLayoutImport - parentRoute: typeof AuthenticateInjectOrgDetailsKmsProjectIdImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout' path: '' fullPath: '/secret-manager/$projectId' preLoaderRoute: typeof secretManagerLayoutImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout' path: '' fullPath: '/ssh/$projectId' preLoaderRoute: typeof sshLayoutImport - parentRoute: typeof AuthenticateInjectOrgDetailsSshProjectIdImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview' path: '/overview' fullPath: '/cert-manager/$projectId/overview' preLoaderRoute: typeof certManagerCertificatesPageRouteImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings' path: '/settings' fullPath: '/cert-manager/$projectId/settings' preLoaderRoute: typeof certManagerSettingsPageRouteImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/overview': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/overview' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/overview' path: '/overview' fullPath: '/kms/$projectId/overview' preLoaderRoute: typeof kmsOverviewPageRouteImport parentRoute: typeof kmsLayoutImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings' path: '/settings' fullPath: '/kms/$projectId/settings' preLoaderRoute: typeof kmsSettingsPageRouteImport parentRoute: typeof kmsLayoutImport } - '/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview': { - id: '/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview' - path: '/cert-manager/overview' - fullPath: '/organization/cert-manager/overview' - preLoaderRoute: typeof organizationCertManagerOverviewPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/groups/$groupId': { - id: '/_authenticate/_inject-org-details/organization/_layout/groups/$groupId' - path: '/groups/$groupId' - fullPath: '/organization/groups/$groupId' - preLoaderRoute: typeof organizationGroupDetailsByIDPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/identities/$identityId': { - id: '/_authenticate/_inject-org-details/organization/_layout/identities/$identityId' - path: '/identities/$identityId' - fullPath: '/organization/identities/$identityId' - preLoaderRoute: typeof organizationIdentityDetailsByIDPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/kms/overview': { - id: '/_authenticate/_inject-org-details/organization/_layout/kms/overview' - path: '/kms/overview' - fullPath: '/organization/kms/overview' - preLoaderRoute: typeof organizationKmsOverviewPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/members/$membershipId': { - id: '/_authenticate/_inject-org-details/organization/_layout/members/$membershipId' - path: '/members/$membershipId' - fullPath: '/organization/members/$membershipId' - preLoaderRoute: typeof organizationUserDetailsByIDPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/roles/$roleId': { - id: '/_authenticate/_inject-org-details/organization/_layout/roles/$roleId' - path: '/roles/$roleId' - fullPath: '/organization/roles/$roleId' - preLoaderRoute: typeof organizationRoleByIDPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/secret-manager/overview': { - id: '/_authenticate/_inject-org-details/organization/_layout/secret-manager/overview' - path: '/secret-manager/overview' - fullPath: '/organization/secret-manager/overview' - preLoaderRoute: typeof organizationSecretManagerOverviewPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/organization/_layout/ssh/overview': { - id: '/_authenticate/_inject-org-details/organization/_layout/ssh/overview' - path: '/ssh/overview' - fullPath: '/organization/ssh/overview' - preLoaderRoute: typeof organizationSshOverviewPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist' path: '/allowlist' fullPath: '/secret-manager/$projectId/allowlist' preLoaderRoute: typeof secretManagerIPAllowlistPageRouteImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval' path: '/approval' fullPath: '/secret-manager/$projectId/approval' preLoaderRoute: typeof secretManagerSecretApprovalsPageRouteImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/overview': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/overview' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/overview' path: '/overview' fullPath: '/secret-manager/$projectId/overview' preLoaderRoute: typeof secretManagerOverviewPageRouteImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation' path: '/secret-rotation' fullPath: '/secret-manager/$projectId/secret-rotation' preLoaderRoute: typeof secretManagerSecretRotationPageRouteImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings' path: '/settings' fullPath: '/secret-manager/$projectId/settings' preLoaderRoute: typeof secretManagerSettingsPageRouteImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview' path: '/overview' fullPath: '/ssh/$projectId/overview' preLoaderRoute: typeof sshOverviewPageRouteImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings' path: '/settings' fullPath: '/ssh/$projectId/settings' preLoaderRoute: typeof sshSettingsPageRouteImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management' path: '/access-management' fullPath: '/cert-manager/$projectId/access-management' preLoaderRoute: typeof projectAccessControlPageRouteCertManagerImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback' path: '/azure-app-configuration/oauth2/callback' fullPath: '/integrations/azure-app-configuration/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback' path: '/azure-key-vault/oauth2/callback' fullPath: '/integrations/azure-key-vault/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback' path: '/bitbucket/oauth2/callback' fullPath: '/integrations/bitbucket/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteBitbucketOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback' path: '/gcp-secret-manager/oauth2/callback' fullPath: '/integrations/gcp-secret-manager/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteGcpOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/github/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/github/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback' path: '/github/oauth2/callback' fullPath: '/integrations/github/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteGithubOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback' path: '/gitlab/oauth2/callback' fullPath: '/integrations/gitlab/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteGitlabOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback' path: '/heroku/oauth2/callback' fullPath: '/integrations/heroku/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteHerokuOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback' path: '/netlify/oauth2/callback' fullPath: '/integrations/netlify/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteNetlifyOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback': { - id: '/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback' path: '/vercel/oauth2/callback' fullPath: '/integrations/vercel/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsRouteVercelOauthRedirectImport - parentRoute: typeof AuthenticateInjectOrgDetailsIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management' path: '/access-management' fullPath: '/kms/$projectId/access-management' preLoaderRoute: typeof projectAccessControlPageRouteKmsImport parentRoute: typeof kmsLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management' path: '/access-management' fullPath: '/secret-manager/$projectId/access-management' preLoaderRoute: typeof projectAccessControlPageRouteSecretManagerImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations' path: '/integrations' fullPath: '/secret-manager/$projectId/integrations' - preLoaderRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + preLoaderRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management' path: '/access-management' fullPath: '/ssh/$projectId/access-management' preLoaderRoute: typeof projectAccessControlPageRouteSshImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/' path: '/' fullPath: '/secret-manager/$projectId/integrations/' preLoaderRoute: typeof secretManagerIntegrationsListPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId' path: '/ca/$caId' fullPath: '/cert-manager/$projectId/ca/$caId' preLoaderRoute: typeof certManagerCertAuthDetailsByIDPageRouteImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId' + '/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback' + path: '/app-connections/github/oauth/callback' + fullPath: '/organization/app-connections/github/oauth/callback' + preLoaderRoute: typeof organizationAppConnectionsGithubOauthCallbackPageRouteImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationImport + } + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId' path: '/$integrationId' fullPath: '/secret-manager/$projectId/integrations/$integrationId' preLoaderRoute: typeof secretManagerIntegrationsDetailsByIDPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth' path: '/select-integration-auth' fullPath: '/secret-manager/$projectId/integrations/select-integration-auth' preLoaderRoute: typeof secretManagerIntegrationsSelectIntegrationAuthPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug' path: '/secrets/$envSlug' fullPath: '/secret-manager/$projectId/secrets/$envSlug' preLoaderRoute: typeof secretManagerSecretDashboardPageRouteImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId' path: '/ca/$caId' fullPath: '/ssh/$projectId/ca/$caId' preLoaderRoute: typeof sshSshCaByIDPageRouteImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/identities/$identityId': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/identities/$identityId' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/identities/$identityId': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/identities/$identityId' path: '/identities/$identityId' fullPath: '/cert-manager/$projectId/identities/$identityId' preLoaderRoute: typeof projectIdentityDetailsByIDPageRouteCertManagerImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/members/$membershipId': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/members/$membershipId' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/members/$membershipId': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/members/$membershipId' path: '/members/$membershipId' fullPath: '/cert-manager/$projectId/members/$membershipId' preLoaderRoute: typeof projectMemberDetailsByIDPageRouteCertManagerImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId' path: '/pki-collections/$collectionId' fullPath: '/cert-manager/$projectId/pki-collections/$collectionId' preLoaderRoute: typeof certManagerPkiCollectionDetailsByIDPageRoutesImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug': { - id: '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug' + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug': { + id: '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug' path: '/roles/$roleSlug' fullPath: '/cert-manager/$projectId/roles/$roleSlug' preLoaderRoute: typeof projectRoleDetailsBySlugPageRouteCertManagerImport parentRoute: typeof certManagerLayoutImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId' path: '/identities/$identityId' fullPath: '/kms/$projectId/identities/$identityId' preLoaderRoute: typeof projectIdentityDetailsByIDPageRouteKmsImport parentRoute: typeof kmsLayoutImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId' path: '/members/$membershipId' fullPath: '/kms/$projectId/members/$membershipId' preLoaderRoute: typeof projectMemberDetailsByIDPageRouteKmsImport parentRoute: typeof kmsLayoutImport } - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug': { - id: '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug' + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug': { + id: '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug' path: '/roles/$roleSlug' fullPath: '/kms/$projectId/roles/$roleSlug' preLoaderRoute: typeof projectRoleDetailsBySlugPageRouteKmsImport parentRoute: typeof kmsLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId' path: '/identities/$identityId' fullPath: '/secret-manager/$projectId/identities/$identityId' preLoaderRoute: typeof projectIdentityDetailsByIDPageRouteSecretManagerImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId' path: '/members/$membershipId' fullPath: '/secret-manager/$projectId/members/$membershipId' preLoaderRoute: typeof projectMemberDetailsByIDPageRouteSecretManagerImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug' path: '/roles/$roleSlug' fullPath: '/secret-manager/$projectId/roles/$roleSlug' preLoaderRoute: typeof projectRoleDetailsBySlugPageRouteSecretManagerImport parentRoute: typeof secretManagerLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId' path: '/identities/$identityId' fullPath: '/ssh/$projectId/identities/$identityId' preLoaderRoute: typeof projectIdentityDetailsByIDPageRouteSshImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId' path: '/members/$membershipId' fullPath: '/ssh/$projectId/members/$membershipId' preLoaderRoute: typeof projectMemberDetailsByIDPageRouteSshImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug': { - id: '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug' + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug': { + id: '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug' path: '/roles/$roleSlug' fullPath: '/ssh/$projectId/roles/$roleSlug' preLoaderRoute: typeof projectRoleDetailsBySlugPageRouteSshImport parentRoute: typeof sshLayoutImport } - '/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback': { - id: '/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback' - path: '/app-connections/github/oauth/callback' - fullPath: '/organization/app-connections/github/oauth/callback' - preLoaderRoute: typeof organizationAppConnectionsGithubOauthCallbackPageRouteImport - parentRoute: typeof organizationLayoutImport - } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize' path: '/aws-parameter-store/authorize' fullPath: '/secret-manager/$projectId/integrations/aws-parameter-store/authorize' preLoaderRoute: typeof secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create' path: '/aws-parameter-store/create' fullPath: '/secret-manager/$projectId/integrations/aws-parameter-store/create' preLoaderRoute: typeof secretManagerIntegrationsAwsParameterStoreConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize' path: '/aws-secret-manager/authorize' fullPath: '/secret-manager/$projectId/integrations/aws-secret-manager/authorize' preLoaderRoute: typeof secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create' path: '/aws-secret-manager/create' fullPath: '/secret-manager/$projectId/integrations/aws-secret-manager/create' preLoaderRoute: typeof secretManagerIntegrationsAwsSecretManagerConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create' path: '/azure-app-configuration/create' fullPath: '/secret-manager/$projectId/integrations/azure-app-configuration/create' preLoaderRoute: typeof secretManagerIntegrationsAzureAppConfigurationConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize' path: '/azure-devops/authorize' fullPath: '/secret-manager/$projectId/integrations/azure-devops/authorize' preLoaderRoute: typeof secretManagerIntegrationsAzureDevopsAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create' path: '/azure-devops/create' fullPath: '/secret-manager/$projectId/integrations/azure-devops/create' preLoaderRoute: typeof secretManagerIntegrationsAzureDevopsConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize' path: '/azure-key-vault/authorize' fullPath: '/secret-manager/$projectId/integrations/azure-key-vault/authorize' preLoaderRoute: typeof secretManagerIntegrationsAzureKeyVaultAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create' path: '/azure-key-vault/create' fullPath: '/secret-manager/$projectId/integrations/azure-key-vault/create' preLoaderRoute: typeof secretManagerIntegrationsAzureKeyVaultConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create' path: '/bitbucket/create' fullPath: '/secret-manager/$projectId/integrations/bitbucket/create' preLoaderRoute: typeof secretManagerIntegrationsBitbucketConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize' path: '/checkly/authorize' fullPath: '/secret-manager/$projectId/integrations/checkly/authorize' preLoaderRoute: typeof secretManagerIntegrationsChecklyAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create' path: '/checkly/create' fullPath: '/secret-manager/$projectId/integrations/checkly/create' preLoaderRoute: typeof secretManagerIntegrationsChecklyConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize' path: '/circleci/authorize' fullPath: '/secret-manager/$projectId/integrations/circleci/authorize' preLoaderRoute: typeof secretManagerIntegrationsCircleCIAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create' path: '/circleci/create' fullPath: '/secret-manager/$projectId/integrations/circleci/create' preLoaderRoute: typeof secretManagerIntegrationsCircleCIConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize' path: '/cloud-66/authorize' fullPath: '/secret-manager/$projectId/integrations/cloud-66/authorize' preLoaderRoute: typeof secretManagerIntegrationsCloud66AuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create' path: '/cloud-66/create' fullPath: '/secret-manager/$projectId/integrations/cloud-66/create' preLoaderRoute: typeof secretManagerIntegrationsCloud66ConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize' path: '/cloudflare-pages/authorize' fullPath: '/secret-manager/$projectId/integrations/cloudflare-pages/authorize' preLoaderRoute: typeof secretManagerIntegrationsCloudflarePagesAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create' path: '/cloudflare-pages/create' fullPath: '/secret-manager/$projectId/integrations/cloudflare-pages/create' preLoaderRoute: typeof secretManagerIntegrationsCloudflarePagesConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize' path: '/cloudflare-workers/authorize' fullPath: '/secret-manager/$projectId/integrations/cloudflare-workers/authorize' preLoaderRoute: typeof secretManagerIntegrationsCloudflareWorkersAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create' path: '/cloudflare-workers/create' fullPath: '/secret-manager/$projectId/integrations/cloudflare-workers/create' preLoaderRoute: typeof secretManagerIntegrationsCloudflareWorkersConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize' path: '/codefresh/authorize' fullPath: '/secret-manager/$projectId/integrations/codefresh/authorize' preLoaderRoute: typeof secretManagerIntegrationsCodefreshAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create' path: '/codefresh/create' fullPath: '/secret-manager/$projectId/integrations/codefresh/create' preLoaderRoute: typeof secretManagerIntegrationsCodefreshConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize' path: '/databricks/authorize' fullPath: '/secret-manager/$projectId/integrations/databricks/authorize' preLoaderRoute: typeof secretManagerIntegrationsDatabricksAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create' path: '/databricks/create' fullPath: '/secret-manager/$projectId/integrations/databricks/create' preLoaderRoute: typeof secretManagerIntegrationsDatabricksConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize' path: '/digital-ocean-app-platform/authorize' fullPath: '/secret-manager/$projectId/integrations/digital-ocean-app-platform/authorize' preLoaderRoute: typeof secretManagerIntegrationsDigitalOceanAppPlatformAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create' path: '/digital-ocean-app-platform/create' fullPath: '/secret-manager/$projectId/integrations/digital-ocean-app-platform/create' preLoaderRoute: typeof secretManagerIntegrationsDigitalOceanAppPlatformConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize' path: '/flyio/authorize' fullPath: '/secret-manager/$projectId/integrations/flyio/authorize' preLoaderRoute: typeof secretManagerIntegrationsFlyioAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create' path: '/flyio/create' fullPath: '/secret-manager/$projectId/integrations/flyio/create' preLoaderRoute: typeof secretManagerIntegrationsFlyioConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize' path: '/gcp-secret-manager/authorize' fullPath: '/secret-manager/$projectId/integrations/gcp-secret-manager/authorize' preLoaderRoute: typeof secretManagerIntegrationsGcpSecretManagerAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create' path: '/gcp-secret-manager/create' fullPath: '/secret-manager/$projectId/integrations/gcp-secret-manager/create' preLoaderRoute: typeof secretManagerIntegrationsGcpSecretManagerConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection' path: '/github/auth-mode-selection' fullPath: '/secret-manager/$projectId/integrations/github/auth-mode-selection' preLoaderRoute: typeof secretManagerIntegrationsGithubAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create' path: '/github/create' fullPath: '/secret-manager/$projectId/integrations/github/create' preLoaderRoute: typeof secretManagerIntegrationsGithubConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize' path: '/gitlab/authorize' fullPath: '/secret-manager/$projectId/integrations/gitlab/authorize' preLoaderRoute: typeof secretManagerIntegrationsGitlabAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create' path: '/gitlab/create' fullPath: '/secret-manager/$projectId/integrations/gitlab/create' preLoaderRoute: typeof secretManagerIntegrationsGitlabConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize' path: '/hashicorp-vault/authorize' fullPath: '/secret-manager/$projectId/integrations/hashicorp-vault/authorize' preLoaderRoute: typeof secretManagerIntegrationsHashicorpVaultAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create' path: '/hashicorp-vault/create' fullPath: '/secret-manager/$projectId/integrations/hashicorp-vault/create' preLoaderRoute: typeof secretManagerIntegrationsHashicorpVaultConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize' path: '/hasura-cloud/authorize' fullPath: '/secret-manager/$projectId/integrations/hasura-cloud/authorize' preLoaderRoute: typeof secretManagerIntegrationsHasuraCloudAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create' path: '/hasura-cloud/create' fullPath: '/secret-manager/$projectId/integrations/hasura-cloud/create' preLoaderRoute: typeof secretManagerIntegrationsHasuraCloudConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create' path: '/heroku/create' fullPath: '/secret-manager/$projectId/integrations/heroku/create' preLoaderRoute: typeof secretManagerIntegrationsHerokuConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize' path: '/laravel-forge/authorize' fullPath: '/secret-manager/$projectId/integrations/laravel-forge/authorize' preLoaderRoute: typeof secretManagerIntegrationsLaravelForgeAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create' path: '/laravel-forge/create' fullPath: '/secret-manager/$projectId/integrations/laravel-forge/create' preLoaderRoute: typeof secretManagerIntegrationsLaravelForgeConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create' path: '/netlify/create' fullPath: '/secret-manager/$projectId/integrations/netlify/create' preLoaderRoute: typeof secretManagerIntegrationsNetlifyConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize' path: '/northflank/authorize' fullPath: '/secret-manager/$projectId/integrations/northflank/authorize' preLoaderRoute: typeof secretManagerIntegrationsNorthflankAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create' path: '/northflank/create' fullPath: '/secret-manager/$projectId/integrations/northflank/create' preLoaderRoute: typeof secretManagerIntegrationsNorthflankConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize' path: '/octopus-deploy/authorize' fullPath: '/secret-manager/$projectId/integrations/octopus-deploy/authorize' preLoaderRoute: typeof secretManagerIntegrationsOctopusDeployAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create' path: '/octopus-deploy/create' fullPath: '/secret-manager/$projectId/integrations/octopus-deploy/create' preLoaderRoute: typeof secretManagerIntegrationsOctopusDeployConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize' path: '/qovery/authorize' fullPath: '/secret-manager/$projectId/integrations/qovery/authorize' preLoaderRoute: typeof secretManagerIntegrationsQoveryAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create' path: '/qovery/create' fullPath: '/secret-manager/$projectId/integrations/qovery/create' preLoaderRoute: typeof secretManagerIntegrationsQoveryConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize' path: '/railway/authorize' fullPath: '/secret-manager/$projectId/integrations/railway/authorize' preLoaderRoute: typeof secretManagerIntegrationsRailwayAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create' path: '/railway/create' fullPath: '/secret-manager/$projectId/integrations/railway/create' preLoaderRoute: typeof secretManagerIntegrationsRailwayConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize' path: '/render/authorize' fullPath: '/secret-manager/$projectId/integrations/render/authorize' preLoaderRoute: typeof secretManagerIntegrationsRenderAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create' path: '/render/create' fullPath: '/secret-manager/$projectId/integrations/render/create' preLoaderRoute: typeof secretManagerIntegrationsRenderConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize' path: '/rundeck/authorize' fullPath: '/secret-manager/$projectId/integrations/rundeck/authorize' preLoaderRoute: typeof secretManagerIntegrationsRundeckAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create' path: '/rundeck/create' fullPath: '/secret-manager/$projectId/integrations/rundeck/create' preLoaderRoute: typeof secretManagerIntegrationsRundeckConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize' path: '/supabase/authorize' fullPath: '/secret-manager/$projectId/integrations/supabase/authorize' preLoaderRoute: typeof secretManagerIntegrationsSupabaseAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create' path: '/supabase/create' fullPath: '/secret-manager/$projectId/integrations/supabase/create' preLoaderRoute: typeof secretManagerIntegrationsSupabaseConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize' path: '/teamcity/authorize' fullPath: '/secret-manager/$projectId/integrations/teamcity/authorize' preLoaderRoute: typeof secretManagerIntegrationsTeamcityAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create' path: '/teamcity/create' fullPath: '/secret-manager/$projectId/integrations/teamcity/create' preLoaderRoute: typeof secretManagerIntegrationsTeamcityConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize' path: '/terraform-cloud/authorize' fullPath: '/secret-manager/$projectId/integrations/terraform-cloud/authorize' preLoaderRoute: typeof secretManagerIntegrationsTerraformCloudAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create' path: '/terraform-cloud/create' fullPath: '/secret-manager/$projectId/integrations/terraform-cloud/create' preLoaderRoute: typeof secretManagerIntegrationsTerraformCloudConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize' path: '/travisci/authorize' fullPath: '/secret-manager/$projectId/integrations/travisci/authorize' preLoaderRoute: typeof secretManagerIntegrationsTravisCIAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create' path: '/travisci/create' fullPath: '/secret-manager/$projectId/integrations/travisci/create' preLoaderRoute: typeof secretManagerIntegrationsTravisCIConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create' path: '/vercel/create' fullPath: '/secret-manager/$projectId/integrations/vercel/create' preLoaderRoute: typeof secretManagerIntegrationsVercelConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize' path: '/windmill/authorize' fullPath: '/secret-manager/$projectId/integrations/windmill/authorize' preLoaderRoute: typeof secretManagerIntegrationsWindmillAuthorizePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create' path: '/windmill/create' fullPath: '/secret-manager/$projectId/integrations/windmill/create' preLoaderRoute: typeof secretManagerIntegrationsWindmillConfigurePageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback' path: '/azure-app-configuration/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/azure-app-configuration/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsAzureAppConfigurationOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback' path: '/azure-key-vault/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/azure-key-vault/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsAzureKeyVaultOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback' path: '/bitbucket/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/bitbucket/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsBitbucketOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback' path: '/gcp-secret-manager/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/gcp-secret-manager/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsGcpSecretManagerOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback' path: '/github/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/github/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsGithubOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback' path: '/gitlab/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/gitlab/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsGitlabOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback' path: '/heroku/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/heroku/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsHerokuOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback' path: '/netlify/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/netlify/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsNetlifyOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback': { - id: '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback' + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback': { + id: '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback' path: '/vercel/oauth2/callback' fullPath: '/secret-manager/$projectId/integrations/vercel/oauth2/callback' preLoaderRoute: typeof secretManagerIntegrationsVercelOauthCallbackPageRouteImport - parentRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsImport + parentRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsImport } } } // Create and export the route tree -interface adminLayoutRouteChildren { - adminOverviewPageRouteRoute: typeof adminOverviewPageRouteRoute -} - -const adminLayoutRouteChildren: adminLayoutRouteChildren = { - adminOverviewPageRouteRoute: adminOverviewPageRouteRoute, -} - -const adminLayoutRouteWithChildren = adminLayoutRoute._addFileChildren( - adminLayoutRouteChildren, -) - -interface AuthenticateInjectOrgDetailsAdminRouteChildren { - adminLayoutRoute: typeof adminLayoutRouteWithChildren -} - -const AuthenticateInjectOrgDetailsAdminRouteChildren: AuthenticateInjectOrgDetailsAdminRouteChildren = - { - adminLayoutRoute: adminLayoutRouteWithChildren, - } - -const AuthenticateInjectOrgDetailsAdminRouteWithChildren = - AuthenticateInjectOrgDetailsAdminRoute._addFileChildren( - AuthenticateInjectOrgDetailsAdminRouteChildren, - ) - -interface AuthenticateInjectOrgDetailsIntegrationsRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteChildren { secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute: typeof secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectRoute: typeof secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectRoute secretManagerIntegrationsRouteBitbucketOauthRedirectRoute: typeof secretManagerIntegrationsRouteBitbucketOauthRedirectRoute @@ -2772,7 +2775,7 @@ interface AuthenticateInjectOrgDetailsIntegrationsRouteChildren { secretManagerIntegrationsRouteVercelOauthRedirectRoute: typeof secretManagerIntegrationsRouteVercelOauthRedirectRoute } -const AuthenticateInjectOrgDetailsIntegrationsRouteChildren: AuthenticateInjectOrgDetailsIntegrationsRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteChildren = { secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute: secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute, @@ -2794,12 +2797,12 @@ const AuthenticateInjectOrgDetailsIntegrationsRouteChildren: AuthenticateInjectO secretManagerIntegrationsRouteVercelOauthRedirectRoute, } -const AuthenticateInjectOrgDetailsIntegrationsRouteWithChildren = - AuthenticateInjectOrgDetailsIntegrationsRoute._addFileChildren( - AuthenticateInjectOrgDetailsIntegrationsRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteChildren, ) -interface organizationLayoutRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteChildren { organizationAccessManagementPageRouteRoute: typeof organizationAccessManagementPageRouteRoute organizationAdminPageRouteRoute: typeof organizationAdminPageRouteRoute organizationAuditLogsPageRouteRoute: typeof organizationAuditLogsPageRouteRoute @@ -2819,50 +2822,41 @@ interface organizationLayoutRouteChildren { organizationAppConnectionsGithubOauthCallbackPageRouteRoute: typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute } -const organizationLayoutRouteChildren: organizationLayoutRouteChildren = { - organizationAccessManagementPageRouteRoute: - organizationAccessManagementPageRouteRoute, - organizationAdminPageRouteRoute: organizationAdminPageRouteRoute, - organizationAuditLogsPageRouteRoute: organizationAuditLogsPageRouteRoute, - organizationBillingPageRouteRoute: organizationBillingPageRouteRoute, - organizationNoOrgPageRouteRoute: organizationNoOrgPageRouteRoute, - organizationSecretScanningPageRouteRoute: - organizationSecretScanningPageRouteRoute, - organizationSecretSharingPageRouteRoute: - organizationSecretSharingPageRouteRoute, - organizationSettingsPageRouteRoute: organizationSettingsPageRouteRoute, - organizationCertManagerOverviewPageRouteRoute: - organizationCertManagerOverviewPageRouteRoute, - organizationGroupDetailsByIDPageRouteRoute: - organizationGroupDetailsByIDPageRouteRoute, - organizationIdentityDetailsByIDPageRouteRoute: - organizationIdentityDetailsByIDPageRouteRoute, - organizationKmsOverviewPageRouteRoute: organizationKmsOverviewPageRouteRoute, - organizationUserDetailsByIDPageRouteRoute: - organizationUserDetailsByIDPageRouteRoute, - organizationRoleByIDPageRouteRoute: organizationRoleByIDPageRouteRoute, - organizationSecretManagerOverviewPageRouteRoute: - organizationSecretManagerOverviewPageRouteRoute, - organizationSshOverviewPageRouteRoute: organizationSshOverviewPageRouteRoute, - organizationAppConnectionsGithubOauthCallbackPageRouteRoute: - organizationAppConnectionsGithubOauthCallbackPageRouteRoute, -} - -const organizationLayoutRouteWithChildren = - organizationLayoutRoute._addFileChildren(organizationLayoutRouteChildren) - -interface AuthenticateInjectOrgDetailsOrganizationRouteChildren { - organizationLayoutRoute: typeof organizationLayoutRouteWithChildren -} - -const AuthenticateInjectOrgDetailsOrganizationRouteChildren: AuthenticateInjectOrgDetailsOrganizationRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteChildren = { - organizationLayoutRoute: organizationLayoutRouteWithChildren, + organizationAccessManagementPageRouteRoute: + organizationAccessManagementPageRouteRoute, + organizationAdminPageRouteRoute: organizationAdminPageRouteRoute, + organizationAuditLogsPageRouteRoute: organizationAuditLogsPageRouteRoute, + organizationBillingPageRouteRoute: organizationBillingPageRouteRoute, + organizationNoOrgPageRouteRoute: organizationNoOrgPageRouteRoute, + organizationSecretScanningPageRouteRoute: + organizationSecretScanningPageRouteRoute, + organizationSecretSharingPageRouteRoute: + organizationSecretSharingPageRouteRoute, + organizationSettingsPageRouteRoute: organizationSettingsPageRouteRoute, + organizationCertManagerOverviewPageRouteRoute: + organizationCertManagerOverviewPageRouteRoute, + organizationGroupDetailsByIDPageRouteRoute: + organizationGroupDetailsByIDPageRouteRoute, + organizationIdentityDetailsByIDPageRouteRoute: + organizationIdentityDetailsByIDPageRouteRoute, + organizationKmsOverviewPageRouteRoute: + organizationKmsOverviewPageRouteRoute, + organizationUserDetailsByIDPageRouteRoute: + organizationUserDetailsByIDPageRouteRoute, + organizationRoleByIDPageRouteRoute: organizationRoleByIDPageRouteRoute, + organizationSecretManagerOverviewPageRouteRoute: + organizationSecretManagerOverviewPageRouteRoute, + organizationSshOverviewPageRouteRoute: + organizationSshOverviewPageRouteRoute, + organizationAppConnectionsGithubOauthCallbackPageRouteRoute: + organizationAppConnectionsGithubOauthCallbackPageRouteRoute, } -const AuthenticateInjectOrgDetailsOrganizationRouteWithChildren = - AuthenticateInjectOrgDetailsOrganizationRoute._addFileChildren( - AuthenticateInjectOrgDetailsOrganizationRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteChildren, ) interface certManagerLayoutRouteChildren { @@ -2896,18 +2890,18 @@ const certManagerLayoutRouteChildren: certManagerLayoutRouteChildren = { const certManagerLayoutRouteWithChildren = certManagerLayoutRoute._addFileChildren(certManagerLayoutRouteChildren) -interface AuthenticateInjectOrgDetailsCertManagerProjectIdRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteChildren { certManagerLayoutRoute: typeof certManagerLayoutRouteWithChildren } -const AuthenticateInjectOrgDetailsCertManagerProjectIdRouteChildren: AuthenticateInjectOrgDetailsCertManagerProjectIdRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteChildren = { certManagerLayoutRoute: certManagerLayoutRouteWithChildren, } -const AuthenticateInjectOrgDetailsCertManagerProjectIdRouteWithChildren = - AuthenticateInjectOrgDetailsCertManagerProjectIdRoute._addFileChildren( - AuthenticateInjectOrgDetailsCertManagerProjectIdRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteChildren, ) interface kmsLayoutRouteChildren { @@ -2935,21 +2929,21 @@ const kmsLayoutRouteWithChildren = kmsLayoutRoute._addFileChildren( kmsLayoutRouteChildren, ) -interface AuthenticateInjectOrgDetailsKmsProjectIdRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteChildren { kmsLayoutRoute: typeof kmsLayoutRouteWithChildren } -const AuthenticateInjectOrgDetailsKmsProjectIdRouteChildren: AuthenticateInjectOrgDetailsKmsProjectIdRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteChildren = { kmsLayoutRoute: kmsLayoutRouteWithChildren, } -const AuthenticateInjectOrgDetailsKmsProjectIdRouteWithChildren = - AuthenticateInjectOrgDetailsKmsProjectIdRoute._addFileChildren( - AuthenticateInjectOrgDetailsKmsProjectIdRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteChildren, ) -interface AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren { secretManagerIntegrationsListPageRouteRoute: typeof secretManagerIntegrationsListPageRouteRoute secretManagerIntegrationsDetailsByIDPageRouteRoute: typeof secretManagerIntegrationsDetailsByIDPageRouteRoute secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute: typeof secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute @@ -3029,7 +3023,7 @@ interface AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutI secretManagerIntegrationsVercelOauthCallbackPageRouteRoute: typeof secretManagerIntegrationsVercelOauthCallbackPageRouteRoute } -const AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren: AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren = { secretManagerIntegrationsListPageRouteRoute: secretManagerIntegrationsListPageRouteRoute, @@ -3187,9 +3181,9 @@ const AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutInteg secretManagerIntegrationsVercelOauthCallbackPageRouteRoute, } -const AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren = - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute._addFileChildren( - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteChildren, ) interface secretManagerLayoutRouteChildren { @@ -3199,7 +3193,7 @@ interface secretManagerLayoutRouteChildren { secretManagerSecretRotationPageRouteRoute: typeof secretManagerSecretRotationPageRouteRoute secretManagerSettingsPageRouteRoute: typeof secretManagerSettingsPageRouteRoute projectAccessControlPageRouteSecretManagerRoute: typeof projectAccessControlPageRouteSecretManagerRoute - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren secretManagerSecretDashboardPageRouteRoute: typeof secretManagerSecretDashboardPageRouteRoute projectIdentityDetailsByIDPageRouteSecretManagerRoute: typeof projectIdentityDetailsByIDPageRouteSecretManagerRoute projectMemberDetailsByIDPageRouteSecretManagerRoute: typeof projectMemberDetailsByIDPageRouteSecretManagerRoute @@ -3217,8 +3211,8 @@ const secretManagerLayoutRouteChildren: secretManagerLayoutRouteChildren = { secretManagerSettingsPageRouteRoute: secretManagerSettingsPageRouteRoute, projectAccessControlPageRouteSecretManagerRoute: projectAccessControlPageRouteSecretManagerRoute, - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute: - AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRoute: + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren, secretManagerSecretDashboardPageRouteRoute: secretManagerSecretDashboardPageRouteRoute, projectIdentityDetailsByIDPageRouteSecretManagerRoute: @@ -3232,18 +3226,18 @@ const secretManagerLayoutRouteChildren: secretManagerLayoutRouteChildren = { const secretManagerLayoutRouteWithChildren = secretManagerLayoutRoute._addFileChildren(secretManagerLayoutRouteChildren) -interface AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteChildren { secretManagerLayoutRoute: typeof secretManagerLayoutRouteWithChildren } -const AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteChildren: AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteChildren = { secretManagerLayoutRoute: secretManagerLayoutRouteWithChildren, } -const AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteWithChildren = - AuthenticateInjectOrgDetailsSecretManagerProjectIdRoute._addFileChildren( - AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteChildren, ) interface sshLayoutRouteChildren { @@ -3273,46 +3267,83 @@ const sshLayoutRouteWithChildren = sshLayoutRoute._addFileChildren( sshLayoutRouteChildren, ) -interface AuthenticateInjectOrgDetailsSshProjectIdRouteChildren { +interface AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteChildren { sshLayoutRoute: typeof sshLayoutRouteWithChildren } -const AuthenticateInjectOrgDetailsSshProjectIdRouteChildren: AuthenticateInjectOrgDetailsSshProjectIdRouteChildren = +const AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteChildren: AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteChildren = { sshLayoutRoute: sshLayoutRouteWithChildren, } -const AuthenticateInjectOrgDetailsSshProjectIdRouteWithChildren = - AuthenticateInjectOrgDetailsSshProjectIdRoute._addFileChildren( - AuthenticateInjectOrgDetailsSshProjectIdRouteChildren, +const AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteWithChildren = + AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRoute._addFileChildren( + AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteChildren, + ) + +interface organizationLayoutRouteChildren { + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteWithChildren + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteWithChildren + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteWithChildren + AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteWithChildren + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteWithChildren + AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRoute: typeof AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteWithChildren +} + +const organizationLayoutRouteChildren: organizationLayoutRouteChildren = { + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRoute: + AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteWithChildren, + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRoute: + AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteWithChildren, + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRoute: + AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteWithChildren, + AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRoute: + AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteWithChildren, + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRoute: + AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteWithChildren, + AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRoute: + AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteWithChildren, +} + +const organizationLayoutRouteWithChildren = + organizationLayoutRoute._addFileChildren(organizationLayoutRouteChildren) + +interface adminLayoutRouteChildren { + adminOverviewPageRouteRoute: typeof adminOverviewPageRouteRoute +} + +const adminLayoutRouteChildren: adminLayoutRouteChildren = { + adminOverviewPageRouteRoute: adminOverviewPageRouteRoute, +} + +const adminLayoutRouteWithChildren = adminLayoutRoute._addFileChildren( + adminLayoutRouteChildren, +) + +interface AuthenticateInjectOrgDetailsAdminRouteChildren { + adminLayoutRoute: typeof adminLayoutRouteWithChildren +} + +const AuthenticateInjectOrgDetailsAdminRouteChildren: AuthenticateInjectOrgDetailsAdminRouteChildren = + { + adminLayoutRoute: adminLayoutRouteWithChildren, + } + +const AuthenticateInjectOrgDetailsAdminRouteWithChildren = + AuthenticateInjectOrgDetailsAdminRoute._addFileChildren( + AuthenticateInjectOrgDetailsAdminRouteChildren, ) interface middlewaresInjectOrgDetailsRouteChildren { + organizationLayoutRoute: typeof organizationLayoutRouteWithChildren AuthenticateInjectOrgDetailsAdminRoute: typeof AuthenticateInjectOrgDetailsAdminRouteWithChildren - AuthenticateInjectOrgDetailsIntegrationsRoute: typeof AuthenticateInjectOrgDetailsIntegrationsRouteWithChildren - AuthenticateInjectOrgDetailsOrganizationRoute: typeof AuthenticateInjectOrgDetailsOrganizationRouteWithChildren - AuthenticateInjectOrgDetailsCertManagerProjectIdRoute: typeof AuthenticateInjectOrgDetailsCertManagerProjectIdRouteWithChildren - AuthenticateInjectOrgDetailsKmsProjectIdRoute: typeof AuthenticateInjectOrgDetailsKmsProjectIdRouteWithChildren - AuthenticateInjectOrgDetailsSecretManagerProjectIdRoute: typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteWithChildren - AuthenticateInjectOrgDetailsSshProjectIdRoute: typeof AuthenticateInjectOrgDetailsSshProjectIdRouteWithChildren } const middlewaresInjectOrgDetailsRouteChildren: middlewaresInjectOrgDetailsRouteChildren = { + organizationLayoutRoute: organizationLayoutRouteWithChildren, AuthenticateInjectOrgDetailsAdminRoute: AuthenticateInjectOrgDetailsAdminRouteWithChildren, - AuthenticateInjectOrgDetailsIntegrationsRoute: - AuthenticateInjectOrgDetailsIntegrationsRouteWithChildren, - AuthenticateInjectOrgDetailsOrganizationRoute: - AuthenticateInjectOrgDetailsOrganizationRouteWithChildren, - AuthenticateInjectOrgDetailsCertManagerProjectIdRoute: - AuthenticateInjectOrgDetailsCertManagerProjectIdRouteWithChildren, - AuthenticateInjectOrgDetailsKmsProjectIdRoute: - AuthenticateInjectOrgDetailsKmsProjectIdRouteWithChildren, - AuthenticateInjectOrgDetailsSecretManagerProjectIdRoute: - AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteWithChildren, - AuthenticateInjectOrgDetailsSshProjectIdRoute: - AuthenticateInjectOrgDetailsSshProjectIdRouteWithChildren, } const middlewaresInjectOrgDetailsRouteWithChildren = @@ -3436,7 +3467,7 @@ export interface FileRoutesByFullPath { '/': typeof indexRoute '/cli-redirect': typeof authCliRedirectPageRouteRoute '/share-secret': typeof publicShareSecretPageRouteRoute - '': typeof middlewaresInjectOrgDetailsRouteWithChildren + '': typeof organizationLayoutRouteWithChildren '/email-not-verified': typeof authEmailNotVerifiedPageRouteRoute '/password-reset': typeof authPasswordResetPageRouteRoute '/requestnewinvite': typeof authRequestNewInvitePageRouteRoute @@ -3454,15 +3485,11 @@ export interface FileRoutesByFullPath { '/signup/sso': typeof authSignUpSsoPageRouteRoute '/shared/secret/$secretId': typeof publicViewSharedSecretByIDPageRouteRoute '/admin': typeof adminLayoutRouteWithChildren - '/integrations': typeof AuthenticateInjectOrgDetailsIntegrationsRouteWithChildren - '/organization': typeof organizationLayoutRouteWithChildren '/personal-settings/': typeof userPersonalSettingsPageRouteRoute '/login/provider/error': typeof authProviderErrorPageRouteRoute '/login/provider/success': typeof authProviderSuccessPageRouteRoute - '/cert-manager/$projectId': typeof certManagerLayoutRouteWithChildren - '/kms/$projectId': typeof kmsLayoutRouteWithChildren - '/secret-manager/$projectId': typeof secretManagerLayoutRouteWithChildren - '/ssh/$projectId': typeof sshLayoutRouteWithChildren + '/integrations': typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteWithChildren + '/organization': typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteWithChildren '/admin/': typeof adminOverviewPageRouteRoute '/organization/access-management': typeof organizationAccessManagementPageRouteRoute '/organization/admin': typeof organizationAdminPageRouteRoute @@ -3472,10 +3499,10 @@ export interface FileRoutesByFullPath { '/organization/secret-scanning': typeof organizationSecretScanningPageRouteRoute '/organization/secret-sharing': typeof organizationSecretSharingPageRouteRoute '/organization/settings': typeof organizationSettingsPageRouteRoute - '/cert-manager/$projectId/overview': typeof certManagerCertificatesPageRouteRoute - '/cert-manager/$projectId/settings': typeof certManagerSettingsPageRouteRoute - '/kms/$projectId/overview': typeof kmsOverviewPageRouteRoute - '/kms/$projectId/settings': typeof kmsSettingsPageRouteRoute + '/cert-manager/$projectId': typeof certManagerLayoutRouteWithChildren + '/kms/$projectId': typeof kmsLayoutRouteWithChildren + '/secret-manager/$projectId': typeof secretManagerLayoutRouteWithChildren + '/ssh/$projectId': typeof sshLayoutRouteWithChildren '/organization/cert-manager/overview': typeof organizationCertManagerOverviewPageRouteRoute '/organization/groups/$groupId': typeof organizationGroupDetailsByIDPageRouteRoute '/organization/identities/$identityId': typeof organizationIdentityDetailsByIDPageRouteRoute @@ -3484,6 +3511,10 @@ export interface FileRoutesByFullPath { '/organization/roles/$roleId': typeof organizationRoleByIDPageRouteRoute '/organization/secret-manager/overview': typeof organizationSecretManagerOverviewPageRouteRoute '/organization/ssh/overview': typeof organizationSshOverviewPageRouteRoute + '/cert-manager/$projectId/overview': typeof certManagerCertificatesPageRouteRoute + '/cert-manager/$projectId/settings': typeof certManagerSettingsPageRouteRoute + '/kms/$projectId/overview': typeof kmsOverviewPageRouteRoute + '/kms/$projectId/settings': typeof kmsSettingsPageRouteRoute '/secret-manager/$projectId/allowlist': typeof secretManagerIPAllowlistPageRouteRoute '/secret-manager/$projectId/approval': typeof secretManagerSecretApprovalsPageRouteRoute '/secret-manager/$projectId/overview': typeof secretManagerOverviewPageRouteRoute @@ -3503,10 +3534,11 @@ export interface FileRoutesByFullPath { '/integrations/vercel/oauth2/callback': typeof secretManagerIntegrationsRouteVercelOauthRedirectRoute '/kms/$projectId/access-management': typeof projectAccessControlPageRouteKmsRoute '/secret-manager/$projectId/access-management': typeof projectAccessControlPageRouteSecretManagerRoute - '/secret-manager/$projectId/integrations': typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren + '/secret-manager/$projectId/integrations': typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren '/ssh/$projectId/access-management': typeof projectAccessControlPageRouteSshRoute '/secret-manager/$projectId/integrations/': typeof secretManagerIntegrationsListPageRouteRoute '/cert-manager/$projectId/ca/$caId': typeof certManagerCertAuthDetailsByIDPageRouteRoute + '/organization/app-connections/github/oauth/callback': typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute '/secret-manager/$projectId/integrations/$integrationId': typeof secretManagerIntegrationsDetailsByIDPageRouteRoute '/secret-manager/$projectId/integrations/select-integration-auth': typeof secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute '/secret-manager/$projectId/secrets/$envSlug': typeof secretManagerSecretDashboardPageRouteRoute @@ -3524,7 +3556,6 @@ export interface FileRoutesByFullPath { '/ssh/$projectId/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteSshRoute '/ssh/$projectId/members/$membershipId': typeof projectMemberDetailsByIDPageRouteSshRoute '/ssh/$projectId/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteSshRoute - '/organization/app-connections/github/oauth/callback': typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute '/secret-manager/$projectId/integrations/aws-parameter-store/authorize': typeof secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteRoute '/secret-manager/$projectId/integrations/aws-parameter-store/create': typeof secretManagerIntegrationsAwsParameterStoreConfigurePageRouteRoute '/secret-manager/$projectId/integrations/aws-secret-manager/authorize': typeof secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteRoute @@ -3605,7 +3636,7 @@ export interface FileRoutesByTo { '/': typeof indexRoute '/cli-redirect': typeof authCliRedirectPageRouteRoute '/share-secret': typeof publicShareSecretPageRouteRoute - '': typeof middlewaresInjectOrgDetailsRouteWithChildren + '': typeof organizationLayoutRouteWithChildren '/email-not-verified': typeof authEmailNotVerifiedPageRouteRoute '/password-reset': typeof authPasswordResetPageRouteRoute '/requestnewinvite': typeof authRequestNewInvitePageRouteRoute @@ -3621,14 +3652,10 @@ export interface FileRoutesByTo { '/signup/sso': typeof authSignUpSsoPageRouteRoute '/shared/secret/$secretId': typeof publicViewSharedSecretByIDPageRouteRoute '/admin': typeof adminOverviewPageRouteRoute - '/integrations': typeof AuthenticateInjectOrgDetailsIntegrationsRouteWithChildren - '/organization': typeof organizationLayoutRouteWithChildren '/login/provider/error': typeof authProviderErrorPageRouteRoute '/login/provider/success': typeof authProviderSuccessPageRouteRoute - '/cert-manager/$projectId': typeof certManagerLayoutRouteWithChildren - '/kms/$projectId': typeof kmsLayoutRouteWithChildren - '/secret-manager/$projectId': typeof secretManagerLayoutRouteWithChildren - '/ssh/$projectId': typeof sshLayoutRouteWithChildren + '/integrations': typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteWithChildren + '/organization': typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteWithChildren '/organization/access-management': typeof organizationAccessManagementPageRouteRoute '/organization/admin': typeof organizationAdminPageRouteRoute '/organization/audit-logs': typeof organizationAuditLogsPageRouteRoute @@ -3637,10 +3664,10 @@ export interface FileRoutesByTo { '/organization/secret-scanning': typeof organizationSecretScanningPageRouteRoute '/organization/secret-sharing': typeof organizationSecretSharingPageRouteRoute '/organization/settings': typeof organizationSettingsPageRouteRoute - '/cert-manager/$projectId/overview': typeof certManagerCertificatesPageRouteRoute - '/cert-manager/$projectId/settings': typeof certManagerSettingsPageRouteRoute - '/kms/$projectId/overview': typeof kmsOverviewPageRouteRoute - '/kms/$projectId/settings': typeof kmsSettingsPageRouteRoute + '/cert-manager/$projectId': typeof certManagerLayoutRouteWithChildren + '/kms/$projectId': typeof kmsLayoutRouteWithChildren + '/secret-manager/$projectId': typeof secretManagerLayoutRouteWithChildren + '/ssh/$projectId': typeof sshLayoutRouteWithChildren '/organization/cert-manager/overview': typeof organizationCertManagerOverviewPageRouteRoute '/organization/groups/$groupId': typeof organizationGroupDetailsByIDPageRouteRoute '/organization/identities/$identityId': typeof organizationIdentityDetailsByIDPageRouteRoute @@ -3649,6 +3676,10 @@ export interface FileRoutesByTo { '/organization/roles/$roleId': typeof organizationRoleByIDPageRouteRoute '/organization/secret-manager/overview': typeof organizationSecretManagerOverviewPageRouteRoute '/organization/ssh/overview': typeof organizationSshOverviewPageRouteRoute + '/cert-manager/$projectId/overview': typeof certManagerCertificatesPageRouteRoute + '/cert-manager/$projectId/settings': typeof certManagerSettingsPageRouteRoute + '/kms/$projectId/overview': typeof kmsOverviewPageRouteRoute + '/kms/$projectId/settings': typeof kmsSettingsPageRouteRoute '/secret-manager/$projectId/allowlist': typeof secretManagerIPAllowlistPageRouteRoute '/secret-manager/$projectId/approval': typeof secretManagerSecretApprovalsPageRouteRoute '/secret-manager/$projectId/overview': typeof secretManagerOverviewPageRouteRoute @@ -3671,6 +3702,7 @@ export interface FileRoutesByTo { '/ssh/$projectId/access-management': typeof projectAccessControlPageRouteSshRoute '/secret-manager/$projectId/integrations': typeof secretManagerIntegrationsListPageRouteRoute '/cert-manager/$projectId/ca/$caId': typeof certManagerCertAuthDetailsByIDPageRouteRoute + '/organization/app-connections/github/oauth/callback': typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute '/secret-manager/$projectId/integrations/$integrationId': typeof secretManagerIntegrationsDetailsByIDPageRouteRoute '/secret-manager/$projectId/integrations/select-integration-auth': typeof secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute '/secret-manager/$projectId/secrets/$envSlug': typeof secretManagerSecretDashboardPageRouteRoute @@ -3688,7 +3720,6 @@ export interface FileRoutesByTo { '/ssh/$projectId/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteSshRoute '/ssh/$projectId/members/$membershipId': typeof projectMemberDetailsByIDPageRouteSshRoute '/ssh/$projectId/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteSshRoute - '/organization/app-connections/github/oauth/callback': typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute '/secret-manager/$projectId/integrations/aws-parameter-store/authorize': typeof secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteRoute '/secret-manager/$projectId/integrations/aws-parameter-store/create': typeof secretManagerIntegrationsAwsParameterStoreConfigurePageRouteRoute '/secret-manager/$projectId/integrations/aws-secret-manager/authorize': typeof secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteRoute @@ -3789,159 +3820,159 @@ export interface FileRoutesById { '/_restrict-login-signup/login/sso': typeof authLoginSsoPageRouteRoute '/_restrict-login-signup/signup/sso': typeof authSignUpSsoPageRouteRoute '/shared/secret/$secretId': typeof publicViewSharedSecretByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout': typeof organizationLayoutRouteWithChildren '/_authenticate/_inject-org-details/admin': typeof AuthenticateInjectOrgDetailsAdminRouteWithChildren - '/_authenticate/_inject-org-details/integrations': typeof AuthenticateInjectOrgDetailsIntegrationsRouteWithChildren - '/_authenticate/_inject-org-details/organization': typeof AuthenticateInjectOrgDetailsOrganizationRouteWithChildren '/_authenticate/personal-settings/_layout': typeof userLayoutRouteWithChildren '/_authenticate/personal-settings/_layout/': typeof userPersonalSettingsPageRouteRoute '/_restrict-login-signup/login/provider/error': typeof authProviderErrorPageRouteRoute '/_restrict-login-signup/login/provider/success': typeof authProviderSuccessPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/integrations': typeof AuthenticateInjectOrgDetailsOrgLayoutIntegrationsRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/organization': typeof AuthenticateInjectOrgDetailsOrgLayoutOrganizationRouteWithChildren '/_authenticate/_inject-org-details/admin/_admin-layout': typeof adminLayoutRouteWithChildren - '/_authenticate/_inject-org-details/cert-manager/$projectId': typeof AuthenticateInjectOrgDetailsCertManagerProjectIdRouteWithChildren - '/_authenticate/_inject-org-details/kms/$projectId': typeof AuthenticateInjectOrgDetailsKmsProjectIdRouteWithChildren - '/_authenticate/_inject-org-details/organization/_layout': typeof organizationLayoutRouteWithChildren - '/_authenticate/_inject-org-details/secret-manager/$projectId': typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdRouteWithChildren - '/_authenticate/_inject-org-details/ssh/$projectId': typeof AuthenticateInjectOrgDetailsSshProjectIdRouteWithChildren '/_authenticate/_inject-org-details/admin/_admin-layout/': typeof adminOverviewPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/access-management': typeof organizationAccessManagementPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/admin': typeof organizationAdminPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/audit-logs': typeof organizationAuditLogsPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/billing': typeof organizationBillingPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/none': typeof organizationNoOrgPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/secret-scanning': typeof organizationSecretScanningPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/secret-sharing': typeof organizationSecretSharingPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/settings': typeof organizationSettingsPageRouteRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout': typeof certManagerLayoutRouteWithChildren - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout': typeof kmsLayoutRouteWithChildren - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout': typeof secretManagerLayoutRouteWithChildren - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout': typeof sshLayoutRouteWithChildren - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview': typeof certManagerCertificatesPageRouteRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings': typeof certManagerSettingsPageRouteRoute - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/overview': typeof kmsOverviewPageRouteRoute - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings': typeof kmsSettingsPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview': typeof organizationCertManagerOverviewPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/groups/$groupId': typeof organizationGroupDetailsByIDPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/identities/$identityId': typeof organizationIdentityDetailsByIDPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/kms/overview': typeof organizationKmsOverviewPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/members/$membershipId': typeof organizationUserDetailsByIDPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/roles/$roleId': typeof organizationRoleByIDPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/secret-manager/overview': typeof organizationSecretManagerOverviewPageRouteRoute - '/_authenticate/_inject-org-details/organization/_layout/ssh/overview': typeof organizationSshOverviewPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist': typeof secretManagerIPAllowlistPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval': typeof secretManagerSecretApprovalsPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/overview': typeof secretManagerOverviewPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation': typeof secretManagerSecretRotationPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings': typeof secretManagerSettingsPageRouteRoute - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview': typeof sshOverviewPageRouteRoute - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings': typeof sshSettingsPageRouteRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management': typeof projectAccessControlPageRouteCertManagerRoute - '/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback': typeof secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback': typeof secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback': typeof secretManagerIntegrationsRouteBitbucketOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback': typeof secretManagerIntegrationsRouteGcpOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/github/oauth2/callback': typeof secretManagerIntegrationsRouteGithubOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback': typeof secretManagerIntegrationsRouteGitlabOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback': typeof secretManagerIntegrationsRouteHerokuOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback': typeof secretManagerIntegrationsRouteNetlifyOauthRedirectRoute - '/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback': typeof secretManagerIntegrationsRouteVercelOauthRedirectRoute - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management': typeof projectAccessControlPageRouteKmsRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management': typeof projectAccessControlPageRouteSecretManagerRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations': typeof AuthenticateInjectOrgDetailsSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management': typeof projectAccessControlPageRouteSshRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/': typeof secretManagerIntegrationsListPageRouteRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId': typeof certManagerCertAuthDetailsByIDPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId': typeof secretManagerIntegrationsDetailsByIDPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth': typeof secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug': typeof secretManagerSecretDashboardPageRouteRoute - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId': typeof sshSshCaByIDPageRouteRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteCertManagerRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteCertManagerRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId': typeof certManagerPkiCollectionDetailsByIDPageRoutesRoute - '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteCertManagerRoute - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteKmsRoute - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteKmsRoute - '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteKmsRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteSecretManagerRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteSecretManagerRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteSecretManagerRoute - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteSshRoute - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteSshRoute - '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteSshRoute - '/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback': typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize': typeof secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create': typeof secretManagerIntegrationsAwsParameterStoreConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize': typeof secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create': typeof secretManagerIntegrationsAwsSecretManagerConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create': typeof secretManagerIntegrationsAzureAppConfigurationConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize': typeof secretManagerIntegrationsAzureDevopsAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create': typeof secretManagerIntegrationsAzureDevopsConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize': typeof secretManagerIntegrationsAzureKeyVaultAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create': typeof secretManagerIntegrationsAzureKeyVaultConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create': typeof secretManagerIntegrationsBitbucketConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize': typeof secretManagerIntegrationsChecklyAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create': typeof secretManagerIntegrationsChecklyConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize': typeof secretManagerIntegrationsCircleCIAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create': typeof secretManagerIntegrationsCircleCIConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize': typeof secretManagerIntegrationsCloud66AuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create': typeof secretManagerIntegrationsCloud66ConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize': typeof secretManagerIntegrationsCloudflarePagesAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create': typeof secretManagerIntegrationsCloudflarePagesConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize': typeof secretManagerIntegrationsCloudflareWorkersAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create': typeof secretManagerIntegrationsCloudflareWorkersConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize': typeof secretManagerIntegrationsCodefreshAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create': typeof secretManagerIntegrationsCodefreshConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize': typeof secretManagerIntegrationsDatabricksAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create': typeof secretManagerIntegrationsDatabricksConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize': typeof secretManagerIntegrationsDigitalOceanAppPlatformAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create': typeof secretManagerIntegrationsDigitalOceanAppPlatformConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize': typeof secretManagerIntegrationsFlyioAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create': typeof secretManagerIntegrationsFlyioConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize': typeof secretManagerIntegrationsGcpSecretManagerAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create': typeof secretManagerIntegrationsGcpSecretManagerConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection': typeof secretManagerIntegrationsGithubAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create': typeof secretManagerIntegrationsGithubConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize': typeof secretManagerIntegrationsGitlabAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create': typeof secretManagerIntegrationsGitlabConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize': typeof secretManagerIntegrationsHashicorpVaultAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create': typeof secretManagerIntegrationsHashicorpVaultConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize': typeof secretManagerIntegrationsHasuraCloudAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create': typeof secretManagerIntegrationsHasuraCloudConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create': typeof secretManagerIntegrationsHerokuConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize': typeof secretManagerIntegrationsLaravelForgeAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create': typeof secretManagerIntegrationsLaravelForgeConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create': typeof secretManagerIntegrationsNetlifyConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize': typeof secretManagerIntegrationsNorthflankAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create': typeof secretManagerIntegrationsNorthflankConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize': typeof secretManagerIntegrationsOctopusDeployAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create': typeof secretManagerIntegrationsOctopusDeployConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize': typeof secretManagerIntegrationsQoveryAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create': typeof secretManagerIntegrationsQoveryConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize': typeof secretManagerIntegrationsRailwayAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create': typeof secretManagerIntegrationsRailwayConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize': typeof secretManagerIntegrationsRenderAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create': typeof secretManagerIntegrationsRenderConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize': typeof secretManagerIntegrationsRundeckAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create': typeof secretManagerIntegrationsRundeckConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize': typeof secretManagerIntegrationsSupabaseAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create': typeof secretManagerIntegrationsSupabaseConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize': typeof secretManagerIntegrationsTeamcityAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create': typeof secretManagerIntegrationsTeamcityConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize': typeof secretManagerIntegrationsTerraformCloudAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create': typeof secretManagerIntegrationsTerraformCloudConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize': typeof secretManagerIntegrationsTravisCIAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create': typeof secretManagerIntegrationsTravisCIConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create': typeof secretManagerIntegrationsVercelConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize': typeof secretManagerIntegrationsWindmillAuthorizePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create': typeof secretManagerIntegrationsWindmillConfigurePageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback': typeof secretManagerIntegrationsAzureAppConfigurationOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback': typeof secretManagerIntegrationsAzureKeyVaultOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback': typeof secretManagerIntegrationsBitbucketOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback': typeof secretManagerIntegrationsGcpSecretManagerOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback': typeof secretManagerIntegrationsGithubOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback': typeof secretManagerIntegrationsGitlabOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback': typeof secretManagerIntegrationsHerokuOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback': typeof secretManagerIntegrationsNetlifyOauthCallbackPageRouteRoute - '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback': typeof secretManagerIntegrationsVercelOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/access-management': typeof organizationAccessManagementPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/admin': typeof organizationAdminPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/audit-logs': typeof organizationAuditLogsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/billing': typeof organizationBillingPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/none': typeof organizationNoOrgPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning': typeof organizationSecretScanningPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing': typeof organizationSecretSharingPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/settings': typeof organizationSettingsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId': typeof AuthenticateInjectOrgDetailsOrgLayoutCertManagerProjectIdRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId': typeof AuthenticateInjectOrgDetailsOrgLayoutKmsProjectIdRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId': typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId': typeof AuthenticateInjectOrgDetailsOrgLayoutSshProjectIdRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview': typeof organizationCertManagerOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId': typeof organizationGroupDetailsByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId': typeof organizationIdentityDetailsByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/kms/overview': typeof organizationKmsOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId': typeof organizationUserDetailsByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId': typeof organizationRoleByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/secret-manager/overview': typeof organizationSecretManagerOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview': typeof organizationSshOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout': typeof certManagerLayoutRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout': typeof kmsLayoutRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout': typeof secretManagerLayoutRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout': typeof sshLayoutRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview': typeof certManagerCertificatesPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings': typeof certManagerSettingsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/overview': typeof kmsOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings': typeof kmsSettingsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist': typeof secretManagerIPAllowlistPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval': typeof secretManagerSecretApprovalsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/overview': typeof secretManagerOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation': typeof secretManagerSecretRotationPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings': typeof secretManagerSettingsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview': typeof sshOverviewPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings': typeof sshSettingsPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management': typeof projectAccessControlPageRouteCertManagerRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback': typeof secretManagerIntegrationsRouteAzureAppConfigurationsOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback': typeof secretManagerIntegrationsRouteAzureKeyVaultOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback': typeof secretManagerIntegrationsRouteBitbucketOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback': typeof secretManagerIntegrationsRouteGcpOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback': typeof secretManagerIntegrationsRouteGithubOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback': typeof secretManagerIntegrationsRouteGitlabOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback': typeof secretManagerIntegrationsRouteHerokuOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback': typeof secretManagerIntegrationsRouteNetlifyOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback': typeof secretManagerIntegrationsRouteVercelOauthRedirectRoute + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management': typeof projectAccessControlPageRouteKmsRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management': typeof projectAccessControlPageRouteSecretManagerRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations': typeof AuthenticateInjectOrgDetailsOrgLayoutSecretManagerProjectIdSecretManagerLayoutIntegrationsRouteWithChildren + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management': typeof projectAccessControlPageRouteSshRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/': typeof secretManagerIntegrationsListPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId': typeof certManagerCertAuthDetailsByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback': typeof organizationAppConnectionsGithubOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId': typeof secretManagerIntegrationsDetailsByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth': typeof secretManagerIntegrationsSelectIntegrationAuthPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug': typeof secretManagerSecretDashboardPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId': typeof sshSshCaByIDPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteCertManagerRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteCertManagerRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId': typeof certManagerPkiCollectionDetailsByIDPageRoutesRoute + '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteCertManagerRoute + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteKmsRoute + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteKmsRoute + '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteKmsRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteSecretManagerRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteSecretManagerRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteSecretManagerRoute + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId': typeof projectIdentityDetailsByIDPageRouteSshRoute + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId': typeof projectMemberDetailsByIDPageRouteSshRoute + '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug': typeof projectRoleDetailsBySlugPageRouteSshRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize': typeof secretManagerIntegrationsAwsParameterStoreAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create': typeof secretManagerIntegrationsAwsParameterStoreConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize': typeof secretManagerIntegrationsAwsSecretManagerAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create': typeof secretManagerIntegrationsAwsSecretManagerConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create': typeof secretManagerIntegrationsAzureAppConfigurationConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize': typeof secretManagerIntegrationsAzureDevopsAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create': typeof secretManagerIntegrationsAzureDevopsConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize': typeof secretManagerIntegrationsAzureKeyVaultAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create': typeof secretManagerIntegrationsAzureKeyVaultConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create': typeof secretManagerIntegrationsBitbucketConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize': typeof secretManagerIntegrationsChecklyAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create': typeof secretManagerIntegrationsChecklyConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize': typeof secretManagerIntegrationsCircleCIAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create': typeof secretManagerIntegrationsCircleCIConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize': typeof secretManagerIntegrationsCloud66AuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create': typeof secretManagerIntegrationsCloud66ConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize': typeof secretManagerIntegrationsCloudflarePagesAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create': typeof secretManagerIntegrationsCloudflarePagesConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize': typeof secretManagerIntegrationsCloudflareWorkersAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create': typeof secretManagerIntegrationsCloudflareWorkersConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize': typeof secretManagerIntegrationsCodefreshAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create': typeof secretManagerIntegrationsCodefreshConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize': typeof secretManagerIntegrationsDatabricksAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create': typeof secretManagerIntegrationsDatabricksConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize': typeof secretManagerIntegrationsDigitalOceanAppPlatformAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create': typeof secretManagerIntegrationsDigitalOceanAppPlatformConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize': typeof secretManagerIntegrationsFlyioAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create': typeof secretManagerIntegrationsFlyioConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize': typeof secretManagerIntegrationsGcpSecretManagerAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create': typeof secretManagerIntegrationsGcpSecretManagerConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection': typeof secretManagerIntegrationsGithubAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create': typeof secretManagerIntegrationsGithubConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize': typeof secretManagerIntegrationsGitlabAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create': typeof secretManagerIntegrationsGitlabConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize': typeof secretManagerIntegrationsHashicorpVaultAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create': typeof secretManagerIntegrationsHashicorpVaultConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize': typeof secretManagerIntegrationsHasuraCloudAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create': typeof secretManagerIntegrationsHasuraCloudConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create': typeof secretManagerIntegrationsHerokuConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize': typeof secretManagerIntegrationsLaravelForgeAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create': typeof secretManagerIntegrationsLaravelForgeConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create': typeof secretManagerIntegrationsNetlifyConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize': typeof secretManagerIntegrationsNorthflankAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create': typeof secretManagerIntegrationsNorthflankConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize': typeof secretManagerIntegrationsOctopusDeployAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create': typeof secretManagerIntegrationsOctopusDeployConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize': typeof secretManagerIntegrationsQoveryAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create': typeof secretManagerIntegrationsQoveryConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize': typeof secretManagerIntegrationsRailwayAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create': typeof secretManagerIntegrationsRailwayConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize': typeof secretManagerIntegrationsRenderAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create': typeof secretManagerIntegrationsRenderConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize': typeof secretManagerIntegrationsRundeckAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create': typeof secretManagerIntegrationsRundeckConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize': typeof secretManagerIntegrationsSupabaseAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create': typeof secretManagerIntegrationsSupabaseConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize': typeof secretManagerIntegrationsTeamcityAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create': typeof secretManagerIntegrationsTeamcityConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize': typeof secretManagerIntegrationsTerraformCloudAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create': typeof secretManagerIntegrationsTerraformCloudConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize': typeof secretManagerIntegrationsTravisCIAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create': typeof secretManagerIntegrationsTravisCIConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create': typeof secretManagerIntegrationsVercelConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize': typeof secretManagerIntegrationsWindmillAuthorizePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create': typeof secretManagerIntegrationsWindmillConfigurePageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback': typeof secretManagerIntegrationsAzureAppConfigurationOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback': typeof secretManagerIntegrationsAzureKeyVaultOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback': typeof secretManagerIntegrationsBitbucketOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback': typeof secretManagerIntegrationsGcpSecretManagerOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback': typeof secretManagerIntegrationsGithubOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback': typeof secretManagerIntegrationsGitlabOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback': typeof secretManagerIntegrationsHerokuOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback': typeof secretManagerIntegrationsNetlifyOauthCallbackPageRouteRoute + '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback': typeof secretManagerIntegrationsVercelOauthCallbackPageRouteRoute } export interface FileRouteTypes { @@ -3968,15 +3999,11 @@ export interface FileRouteTypes { | '/signup/sso' | '/shared/secret/$secretId' | '/admin' - | '/integrations' - | '/organization' | '/personal-settings/' | '/login/provider/error' | '/login/provider/success' - | '/cert-manager/$projectId' - | '/kms/$projectId' - | '/secret-manager/$projectId' - | '/ssh/$projectId' + | '/integrations' + | '/organization' | '/admin/' | '/organization/access-management' | '/organization/admin' @@ -3986,10 +4013,10 @@ export interface FileRouteTypes { | '/organization/secret-scanning' | '/organization/secret-sharing' | '/organization/settings' - | '/cert-manager/$projectId/overview' - | '/cert-manager/$projectId/settings' - | '/kms/$projectId/overview' - | '/kms/$projectId/settings' + | '/cert-manager/$projectId' + | '/kms/$projectId' + | '/secret-manager/$projectId' + | '/ssh/$projectId' | '/organization/cert-manager/overview' | '/organization/groups/$groupId' | '/organization/identities/$identityId' @@ -3998,6 +4025,10 @@ export interface FileRouteTypes { | '/organization/roles/$roleId' | '/organization/secret-manager/overview' | '/organization/ssh/overview' + | '/cert-manager/$projectId/overview' + | '/cert-manager/$projectId/settings' + | '/kms/$projectId/overview' + | '/kms/$projectId/settings' | '/secret-manager/$projectId/allowlist' | '/secret-manager/$projectId/approval' | '/secret-manager/$projectId/overview' @@ -4021,6 +4052,7 @@ export interface FileRouteTypes { | '/ssh/$projectId/access-management' | '/secret-manager/$projectId/integrations/' | '/cert-manager/$projectId/ca/$caId' + | '/organization/app-connections/github/oauth/callback' | '/secret-manager/$projectId/integrations/$integrationId' | '/secret-manager/$projectId/integrations/select-integration-auth' | '/secret-manager/$projectId/secrets/$envSlug' @@ -4038,7 +4070,6 @@ export interface FileRouteTypes { | '/ssh/$projectId/identities/$identityId' | '/ssh/$projectId/members/$membershipId' | '/ssh/$projectId/roles/$roleSlug' - | '/organization/app-connections/github/oauth/callback' | '/secret-manager/$projectId/integrations/aws-parameter-store/authorize' | '/secret-manager/$projectId/integrations/aws-parameter-store/create' | '/secret-manager/$projectId/integrations/aws-secret-manager/authorize' @@ -4134,14 +4165,10 @@ export interface FileRouteTypes { | '/signup/sso' | '/shared/secret/$secretId' | '/admin' - | '/integrations' - | '/organization' | '/login/provider/error' | '/login/provider/success' - | '/cert-manager/$projectId' - | '/kms/$projectId' - | '/secret-manager/$projectId' - | '/ssh/$projectId' + | '/integrations' + | '/organization' | '/organization/access-management' | '/organization/admin' | '/organization/audit-logs' @@ -4150,10 +4177,10 @@ export interface FileRouteTypes { | '/organization/secret-scanning' | '/organization/secret-sharing' | '/organization/settings' - | '/cert-manager/$projectId/overview' - | '/cert-manager/$projectId/settings' - | '/kms/$projectId/overview' - | '/kms/$projectId/settings' + | '/cert-manager/$projectId' + | '/kms/$projectId' + | '/secret-manager/$projectId' + | '/ssh/$projectId' | '/organization/cert-manager/overview' | '/organization/groups/$groupId' | '/organization/identities/$identityId' @@ -4162,6 +4189,10 @@ export interface FileRouteTypes { | '/organization/roles/$roleId' | '/organization/secret-manager/overview' | '/organization/ssh/overview' + | '/cert-manager/$projectId/overview' + | '/cert-manager/$projectId/settings' + | '/kms/$projectId/overview' + | '/kms/$projectId/settings' | '/secret-manager/$projectId/allowlist' | '/secret-manager/$projectId/approval' | '/secret-manager/$projectId/overview' @@ -4184,6 +4215,7 @@ export interface FileRouteTypes { | '/ssh/$projectId/access-management' | '/secret-manager/$projectId/integrations' | '/cert-manager/$projectId/ca/$caId' + | '/organization/app-connections/github/oauth/callback' | '/secret-manager/$projectId/integrations/$integrationId' | '/secret-manager/$projectId/integrations/select-integration-auth' | '/secret-manager/$projectId/secrets/$envSlug' @@ -4201,7 +4233,6 @@ export interface FileRouteTypes { | '/ssh/$projectId/identities/$identityId' | '/ssh/$projectId/members/$membershipId' | '/ssh/$projectId/roles/$roleSlug' - | '/organization/app-connections/github/oauth/callback' | '/secret-manager/$projectId/integrations/aws-parameter-store/authorize' | '/secret-manager/$projectId/integrations/aws-parameter-store/create' | '/secret-manager/$projectId/integrations/aws-secret-manager/authorize' @@ -4300,159 +4331,159 @@ export interface FileRouteTypes { | '/_restrict-login-signup/login/sso' | '/_restrict-login-signup/signup/sso' | '/shared/secret/$secretId' + | '/_authenticate/_inject-org-details/_org-layout' | '/_authenticate/_inject-org-details/admin' - | '/_authenticate/_inject-org-details/integrations' - | '/_authenticate/_inject-org-details/organization' | '/_authenticate/personal-settings/_layout' | '/_authenticate/personal-settings/_layout/' | '/_restrict-login-signup/login/provider/error' | '/_restrict-login-signup/login/provider/success' + | '/_authenticate/_inject-org-details/_org-layout/integrations' + | '/_authenticate/_inject-org-details/_org-layout/organization' | '/_authenticate/_inject-org-details/admin/_admin-layout' - | '/_authenticate/_inject-org-details/cert-manager/$projectId' - | '/_authenticate/_inject-org-details/kms/$projectId' - | '/_authenticate/_inject-org-details/organization/_layout' - | '/_authenticate/_inject-org-details/secret-manager/$projectId' - | '/_authenticate/_inject-org-details/ssh/$projectId' | '/_authenticate/_inject-org-details/admin/_admin-layout/' - | '/_authenticate/_inject-org-details/organization/_layout/access-management' - | '/_authenticate/_inject-org-details/organization/_layout/admin' - | '/_authenticate/_inject-org-details/organization/_layout/audit-logs' - | '/_authenticate/_inject-org-details/organization/_layout/billing' - | '/_authenticate/_inject-org-details/organization/_layout/none' - | '/_authenticate/_inject-org-details/organization/_layout/secret-scanning' - | '/_authenticate/_inject-org-details/organization/_layout/secret-sharing' - | '/_authenticate/_inject-org-details/organization/_layout/settings' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/overview' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings' - | '/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview' - | '/_authenticate/_inject-org-details/organization/_layout/groups/$groupId' - | '/_authenticate/_inject-org-details/organization/_layout/identities/$identityId' - | '/_authenticate/_inject-org-details/organization/_layout/kms/overview' - | '/_authenticate/_inject-org-details/organization/_layout/members/$membershipId' - | '/_authenticate/_inject-org-details/organization/_layout/roles/$roleId' - | '/_authenticate/_inject-org-details/organization/_layout/secret-manager/overview' - | '/_authenticate/_inject-org-details/organization/_layout/ssh/overview' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/overview' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management' - | '/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/github/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback' - | '/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/identities/$identityId' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/members/$membershipId' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId' - | '/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId' - | '/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId' - | '/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug' - | '/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback' - | '/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/organization/access-management' + | '/_authenticate/_inject-org-details/_org-layout/organization/admin' + | '/_authenticate/_inject-org-details/_org-layout/organization/audit-logs' + | '/_authenticate/_inject-org-details/_org-layout/organization/billing' + | '/_authenticate/_inject-org-details/_org-layout/organization/none' + | '/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning' + | '/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing' + | '/_authenticate/_inject-org-details/_org-layout/organization/settings' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId' + | '/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview' + | '/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId' + | '/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId' + | '/_authenticate/_inject-org-details/_org-layout/organization/kms/overview' + | '/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId' + | '/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId' + | '/_authenticate/_inject-org-details/_org-layout/organization/secret-manager/overview' + | '/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/overview' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/overview' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management' + | '/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId' + | '/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/identities/$identityId' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/members/$membershipId' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId' + | '/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId' + | '/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId' + | '/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback' + | '/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback' fileRoutesById: FileRoutesById } @@ -4547,13 +4578,8 @@ export const routeTree = rootRoute "filePath": "middlewares/inject-org-details.tsx", "parent": "/_authenticate", "children": [ - "/_authenticate/_inject-org-details/admin", - "/_authenticate/_inject-org-details/integrations", - "/_authenticate/_inject-org-details/organization", - "/_authenticate/_inject-org-details/cert-manager/$projectId", - "/_authenticate/_inject-org-details/kms/$projectId", - "/_authenticate/_inject-org-details/secret-manager/$projectId", - "/_authenticate/_inject-org-details/ssh/$projectId" + "/_authenticate/_inject-org-details/_org-layout", + "/_authenticate/_inject-org-details/admin" ] }, "/_authenticate/personal-settings": { @@ -4614,6 +4640,18 @@ export const routeTree = rootRoute "/shared/secret/$secretId": { "filePath": "public/ViewSharedSecretByIDPage/route.tsx" }, + "/_authenticate/_inject-org-details/_org-layout": { + "filePath": "organization/layout.tsx", + "parent": "/_authenticate/_inject-org-details", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/integrations", + "/_authenticate/_inject-org-details/_org-layout/organization", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId", + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId" + ] + }, "/_authenticate/_inject-org-details/admin": { "filePath": "", "parent": "/_authenticate/_inject-org-details", @@ -4621,28 +4659,6 @@ export const routeTree = rootRoute "/_authenticate/_inject-org-details/admin/_admin-layout" ] }, - "/_authenticate/_inject-org-details/integrations": { - "filePath": "", - "parent": "/_authenticate/_inject-org-details", - "children": [ - "/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/github/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback", - "/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback" - ] - }, - "/_authenticate/_inject-org-details/organization": { - "filePath": "", - "parent": "/_authenticate/_inject-org-details", - "children": [ - "/_authenticate/_inject-org-details/organization/_layout" - ] - }, "/_authenticate/personal-settings/_layout": { "filePath": "user/layout.tsx", "parent": "/_authenticate/personal-settings", @@ -4662,6 +4678,44 @@ export const routeTree = rootRoute "filePath": "auth/ProviderSuccessPage/route.tsx", "parent": "/_restrict-login-signup/login" }, + "/_authenticate/_inject-org-details/_org-layout/integrations": { + "filePath": "", + "parent": "/_authenticate/_inject-org-details/_org-layout", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/organization": { + "filePath": "", + "parent": "/_authenticate/_inject-org-details/_org-layout", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/organization/access-management", + "/_authenticate/_inject-org-details/_org-layout/organization/admin", + "/_authenticate/_inject-org-details/_org-layout/organization/audit-logs", + "/_authenticate/_inject-org-details/_org-layout/organization/billing", + "/_authenticate/_inject-org-details/_org-layout/organization/none", + "/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning", + "/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing", + "/_authenticate/_inject-org-details/_org-layout/organization/settings", + "/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview", + "/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId", + "/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId", + "/_authenticate/_inject-org-details/_org-layout/organization/kms/overview", + "/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId", + "/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId", + "/_authenticate/_inject-org-details/_org-layout/organization/secret-manager/overview", + "/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview", + "/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback" + ] + }, "/_authenticate/_inject-org-details/admin/_admin-layout": { "filePath": "admin/layout.tsx", "parent": "/_authenticate/_inject-org-details/admin", @@ -4669,735 +4723,712 @@ export const routeTree = rootRoute "/_authenticate/_inject-org-details/admin/_admin-layout/" ] }, - "/_authenticate/_inject-org-details/cert-manager/$projectId": { - "filePath": "", - "parent": "/_authenticate/_inject-org-details", - "children": [ - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - ] - }, - "/_authenticate/_inject-org-details/kms/$projectId": { - "filePath": "", - "parent": "/_authenticate/_inject-org-details", - "children": [ - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - ] - }, - "/_authenticate/_inject-org-details/organization/_layout": { - "filePath": "organization/layout.tsx", - "parent": "/_authenticate/_inject-org-details/organization", - "children": [ - "/_authenticate/_inject-org-details/organization/_layout/access-management", - "/_authenticate/_inject-org-details/organization/_layout/admin", - "/_authenticate/_inject-org-details/organization/_layout/audit-logs", - "/_authenticate/_inject-org-details/organization/_layout/billing", - "/_authenticate/_inject-org-details/organization/_layout/none", - "/_authenticate/_inject-org-details/organization/_layout/secret-scanning", - "/_authenticate/_inject-org-details/organization/_layout/secret-sharing", - "/_authenticate/_inject-org-details/organization/_layout/settings", - "/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview", - "/_authenticate/_inject-org-details/organization/_layout/groups/$groupId", - "/_authenticate/_inject-org-details/organization/_layout/identities/$identityId", - "/_authenticate/_inject-org-details/organization/_layout/kms/overview", - "/_authenticate/_inject-org-details/organization/_layout/members/$membershipId", - "/_authenticate/_inject-org-details/organization/_layout/roles/$roleId", - "/_authenticate/_inject-org-details/organization/_layout/secret-manager/overview", - "/_authenticate/_inject-org-details/organization/_layout/ssh/overview", - "/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback" - ] - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId": { - "filePath": "", - "parent": "/_authenticate/_inject-org-details", - "children": [ - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - ] - }, - "/_authenticate/_inject-org-details/ssh/$projectId": { - "filePath": "", - "parent": "/_authenticate/_inject-org-details", - "children": [ - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - ] - }, "/_authenticate/_inject-org-details/admin/_admin-layout/": { "filePath": "admin/OverviewPage/route.tsx", "parent": "/_authenticate/_inject-org-details/admin/_admin-layout" }, - "/_authenticate/_inject-org-details/organization/_layout/access-management": { + "/_authenticate/_inject-org-details/_org-layout/organization/access-management": { "filePath": "organization/AccessManagementPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/admin": { + "/_authenticate/_inject-org-details/_org-layout/organization/admin": { "filePath": "organization/AdminPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/audit-logs": { + "/_authenticate/_inject-org-details/_org-layout/organization/audit-logs": { "filePath": "organization/AuditLogsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/billing": { + "/_authenticate/_inject-org-details/_org-layout/organization/billing": { "filePath": "organization/BillingPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/none": { + "/_authenticate/_inject-org-details/_org-layout/organization/none": { "filePath": "organization/NoOrgPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/secret-scanning": { + "/_authenticate/_inject-org-details/_org-layout/organization/secret-scanning": { "filePath": "organization/SecretScanningPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/secret-sharing": { + "/_authenticate/_inject-org-details/_org-layout/organization/secret-sharing": { "filePath": "organization/SecretSharingPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/organization/_layout/settings": { + "/_authenticate/_inject-org-details/_org-layout/organization/settings": { "filePath": "organization/SettingsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout": { - "filePath": "cert-manager/layout.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId", - "children": [ - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/identities/$identityId", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/members/$membershipId", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId", - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug" - ] - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout": { - "filePath": "kms/layout.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId", - "children": [ - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/overview", - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings", - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management", - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId", - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId", - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug" - ] - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout": { - "filePath": "secret-manager/layout.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId", - "children": [ - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/overview", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug" - ] - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout": { - "filePath": "ssh/layout.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId", - "children": [ - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview", - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings", - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management", - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId", - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId", - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId", - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug" - ] - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/overview": { - "filePath": "cert-manager/CertificatesPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/settings": { - "filePath": "cert-manager/SettingsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/overview": { - "filePath": "kms/OverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/settings": { - "filePath": "kms/SettingsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/cert-manager/overview": { - "filePath": "organization/CertManagerOverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/groups/$groupId": { - "filePath": "organization/GroupDetailsByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/identities/$identityId": { - "filePath": "organization/IdentityDetailsByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/kms/overview": { - "filePath": "organization/KmsOverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/members/$membershipId": { - "filePath": "organization/UserDetailsByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/roles/$roleId": { - "filePath": "organization/RoleByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/secret-manager/overview": { - "filePath": "organization/SecretManagerOverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/ssh/overview": { - "filePath": "organization/SshOverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/allowlist": { - "filePath": "secret-manager/IPAllowlistPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/approval": { - "filePath": "secret-manager/SecretApprovalsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/overview": { - "filePath": "secret-manager/OverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secret-rotation": { - "filePath": "secret-manager/SecretRotationPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/settings": { - "filePath": "secret-manager/SettingsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/overview": { - "filePath": "ssh/OverviewPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/settings": { - "filePath": "ssh/SettingsPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/access-management": { - "filePath": "project/AccessControlPage/route-cert-manager.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/integrations/azure-app-configuration/oauth2/callback": { - "filePath": "secret-manager/integrations/route-azure-app-configurations-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/azure-key-vault/oauth2/callback": { - "filePath": "secret-manager/integrations/route-azure-key-vault-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/bitbucket/oauth2/callback": { - "filePath": "secret-manager/integrations/route-bitbucket-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/gcp-secret-manager/oauth2/callback": { - "filePath": "secret-manager/integrations/route-gcp-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/github/oauth2/callback": { - "filePath": "secret-manager/integrations/route-github-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/gitlab/oauth2/callback": { - "filePath": "secret-manager/integrations/route-gitlab-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/heroku/oauth2/callback": { - "filePath": "secret-manager/integrations/route-heroku-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/netlify/oauth2/callback": { - "filePath": "secret-manager/integrations/route-netlify-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/integrations/vercel/oauth2/callback": { - "filePath": "secret-manager/integrations/route-vercel-oauth-redirect.tsx", - "parent": "/_authenticate/_inject-org-details/integrations" - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/access-management": { - "filePath": "project/AccessControlPage/route-kms.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/access-management": { - "filePath": "project/AccessControlPage/route-secret-manager.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations": { + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId": { "filePath": "", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout", + "parent": "/_authenticate/_inject-org-details/_org-layout", "children": [ - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback", - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback" + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" ] }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/access-management": { + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId": { + "filePath": "", + "parent": "/_authenticate/_inject-org-details/_org-layout", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId": { + "filePath": "", + "parent": "/_authenticate/_inject-org-details/_org-layout", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId": { + "filePath": "", + "parent": "/_authenticate/_inject-org-details/_org-layout", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/organization/cert-manager/overview": { + "filePath": "organization/CertManagerOverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/groups/$groupId": { + "filePath": "organization/GroupDetailsByIDPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/identities/$identityId": { + "filePath": "organization/IdentityDetailsByIDPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/kms/overview": { + "filePath": "organization/KmsOverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/members/$membershipId": { + "filePath": "organization/UserDetailsByIDPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/roles/$roleId": { + "filePath": "organization/RoleByIDPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/secret-manager/overview": { + "filePath": "organization/SecretManagerOverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/organization/ssh/overview": { + "filePath": "organization/SshOverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout": { + "filePath": "cert-manager/layout.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/identities/$identityId", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/members/$membershipId", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId", + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout": { + "filePath": "kms/layout.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/overview", + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings", + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management", + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId", + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId", + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout": { + "filePath": "secret-manager/layout.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/overview", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout": { + "filePath": "ssh/layout.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId", + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/overview": { + "filePath": "cert-manager/CertificatesPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/settings": { + "filePath": "cert-manager/SettingsPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/overview": { + "filePath": "kms/OverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/settings": { + "filePath": "kms/SettingsPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/allowlist": { + "filePath": "secret-manager/IPAllowlistPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/approval": { + "filePath": "secret-manager/SecretApprovalsPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/overview": { + "filePath": "secret-manager/OverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secret-rotation": { + "filePath": "secret-manager/SecretRotationPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/settings": { + "filePath": "secret-manager/SettingsPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/overview": { + "filePath": "ssh/OverviewPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/settings": { + "filePath": "ssh/SettingsPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/access-management": { + "filePath": "project/AccessControlPage/route-cert-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/azure-app-configuration/oauth2/callback": { + "filePath": "secret-manager/integrations/route-azure-app-configurations-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/azure-key-vault/oauth2/callback": { + "filePath": "secret-manager/integrations/route-azure-key-vault-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/bitbucket/oauth2/callback": { + "filePath": "secret-manager/integrations/route-bitbucket-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/gcp-secret-manager/oauth2/callback": { + "filePath": "secret-manager/integrations/route-gcp-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/github/oauth2/callback": { + "filePath": "secret-manager/integrations/route-github-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/gitlab/oauth2/callback": { + "filePath": "secret-manager/integrations/route-gitlab-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/heroku/oauth2/callback": { + "filePath": "secret-manager/integrations/route-heroku-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/netlify/oauth2/callback": { + "filePath": "secret-manager/integrations/route-netlify-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/integrations/vercel/oauth2/callback": { + "filePath": "secret-manager/integrations/route-vercel-oauth-redirect.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/access-management": { + "filePath": "project/AccessControlPage/route-kms.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/access-management": { + "filePath": "project/AccessControlPage/route-secret-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations": { + "filePath": "", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout", + "children": [ + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback", + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback" + ] + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/access-management": { "filePath": "project/AccessControlPage/route-ssh.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/": { "filePath": "secret-manager/IntegrationsListPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/ca/$caId": { + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/ca/$caId": { "filePath": "cert-manager/CertAuthDetailsByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId": { - "filePath": "secret-manager/IntegrationsDetailsByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth": { - "filePath": "secret-manager/integrations/SelectIntegrationAuthPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug": { - "filePath": "secret-manager/SecretDashboardPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/ca/$caId": { - "filePath": "ssh/SshCaByIDPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/identities/$identityId": { - "filePath": "project/IdentityDetailsByIDPage/route-cert-manager.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/members/$membershipId": { - "filePath": "project/MemberDetailsByIDPage/route-cert-manager.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId": { - "filePath": "cert-manager/PkiCollectionDetailsByIDPage/routes.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug": { - "filePath": "project/RoleDetailsBySlugPage/route-cert-manager.tsx", - "parent": "/_authenticate/_inject-org-details/cert-manager/$projectId/_cert-manager-layout" - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/identities/$identityId": { - "filePath": "project/IdentityDetailsByIDPage/route-kms.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/members/$membershipId": { - "filePath": "project/MemberDetailsByIDPage/route-kms.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - }, - "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout/roles/$roleSlug": { - "filePath": "project/RoleDetailsBySlugPage/route-kms.tsx", - "parent": "/_authenticate/_inject-org-details/kms/$projectId/_kms-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/identities/$identityId": { - "filePath": "project/IdentityDetailsByIDPage/route-secret-manager.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/members/$membershipId": { - "filePath": "project/MemberDetailsByIDPage/route-secret-manager.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug": { - "filePath": "project/RoleDetailsBySlugPage/route-secret-manager.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout" - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/identities/$identityId": { - "filePath": "project/IdentityDetailsByIDPage/route-ssh.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/members/$membershipId": { - "filePath": "project/MemberDetailsByIDPage/route-ssh.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - }, - "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout/roles/$roleSlug": { - "filePath": "project/RoleDetailsBySlugPage/route-ssh.tsx", - "parent": "/_authenticate/_inject-org-details/ssh/$projectId/_ssh-layout" - }, - "/_authenticate/_inject-org-details/organization/_layout/app-connections/github/oauth/callback": { + "/_authenticate/_inject-org-details/_org-layout/organization/app-connections/github/oauth/callback": { "filePath": "organization/AppConnections/GithubOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/organization/_layout" + "parent": "/_authenticate/_inject-org-details/_org-layout/organization" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/$integrationId": { + "filePath": "secret-manager/IntegrationsDetailsByIDPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/select-integration-auth": { + "filePath": "secret-manager/integrations/SelectIntegrationAuthPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/secrets/$envSlug": { + "filePath": "secret-manager/SecretDashboardPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/ca/$caId": { + "filePath": "ssh/SshCaByIDPage/route.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/identities/$identityId": { + "filePath": "project/IdentityDetailsByIDPage/route-cert-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/members/$membershipId": { + "filePath": "project/MemberDetailsByIDPage/route-cert-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/pki-collections/$collectionId": { + "filePath": "cert-manager/PkiCollectionDetailsByIDPage/routes.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout/roles/$roleSlug": { + "filePath": "project/RoleDetailsBySlugPage/route-cert-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/cert-manager/$projectId/_cert-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/identities/$identityId": { + "filePath": "project/IdentityDetailsByIDPage/route-kms.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/members/$membershipId": { + "filePath": "project/MemberDetailsByIDPage/route-kms.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout/roles/$roleSlug": { + "filePath": "project/RoleDetailsBySlugPage/route-kms.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/kms/$projectId/_kms-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/identities/$identityId": { + "filePath": "project/IdentityDetailsByIDPage/route-secret-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/members/$membershipId": { + "filePath": "project/MemberDetailsByIDPage/route-secret-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/roles/$roleSlug": { + "filePath": "project/RoleDetailsBySlugPage/route-secret-manager.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/identities/$identityId": { + "filePath": "project/IdentityDetailsByIDPage/route-ssh.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/members/$membershipId": { + "filePath": "project/MemberDetailsByIDPage/route-ssh.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout/roles/$roleSlug": { + "filePath": "project/RoleDetailsBySlugPage/route-ssh.tsx", + "parent": "/_authenticate/_inject-org-details/_org-layout/ssh/$projectId/_ssh-layout" + }, + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/authorize": { "filePath": "secret-manager/integrations/AwsParameterStoreAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-parameter-store/create": { "filePath": "secret-manager/integrations/AwsParameterStoreConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/authorize": { "filePath": "secret-manager/integrations/AwsSecretManagerAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/aws-secret-manager/create": { "filePath": "secret-manager/integrations/AwsSecretManagerConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/create": { "filePath": "secret-manager/integrations/AzureAppConfigurationConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/authorize": { "filePath": "secret-manager/integrations/AzureDevopsAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-devops/create": { "filePath": "secret-manager/integrations/AzureDevopsConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/authorize": { "filePath": "secret-manager/integrations/AzureKeyVaultAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/create": { "filePath": "secret-manager/integrations/AzureKeyVaultConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/create": { "filePath": "secret-manager/integrations/BitbucketConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/authorize": { "filePath": "secret-manager/integrations/ChecklyAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/checkly/create": { "filePath": "secret-manager/integrations/ChecklyConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/authorize": { "filePath": "secret-manager/integrations/CircleCIAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/circleci/create": { "filePath": "secret-manager/integrations/CircleCIConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/authorize": { "filePath": "secret-manager/integrations/Cloud66AuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloud-66/create": { "filePath": "secret-manager/integrations/Cloud66ConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/authorize": { "filePath": "secret-manager/integrations/CloudflarePagesAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-pages/create": { "filePath": "secret-manager/integrations/CloudflarePagesConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/authorize": { "filePath": "secret-manager/integrations/CloudflareWorkersAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/cloudflare-workers/create": { "filePath": "secret-manager/integrations/CloudflareWorkersConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/authorize": { "filePath": "secret-manager/integrations/CodefreshAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/codefresh/create": { "filePath": "secret-manager/integrations/CodefreshConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/authorize": { "filePath": "secret-manager/integrations/DatabricksAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/databricks/create": { "filePath": "secret-manager/integrations/DatabricksConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/authorize": { "filePath": "secret-manager/integrations/DigitalOceanAppPlatformAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/digital-ocean-app-platform/create": { "filePath": "secret-manager/integrations/DigitalOceanAppPlatformConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/authorize": { "filePath": "secret-manager/integrations/FlyioAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/flyio/create": { "filePath": "secret-manager/integrations/FlyioConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/authorize": { "filePath": "secret-manager/integrations/GcpSecretManagerAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/create": { "filePath": "secret-manager/integrations/GcpSecretManagerConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/auth-mode-selection": { "filePath": "secret-manager/integrations/GithubAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/create": { "filePath": "secret-manager/integrations/GithubConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/authorize": { "filePath": "secret-manager/integrations/GitlabAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/create": { "filePath": "secret-manager/integrations/GitlabConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/authorize": { "filePath": "secret-manager/integrations/HashicorpVaultAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hashicorp-vault/create": { "filePath": "secret-manager/integrations/HashicorpVaultConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/authorize": { "filePath": "secret-manager/integrations/HasuraCloudAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/hasura-cloud/create": { "filePath": "secret-manager/integrations/HasuraCloudConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/create": { "filePath": "secret-manager/integrations/HerokuConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/authorize": { "filePath": "secret-manager/integrations/LaravelForgeAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/laravel-forge/create": { "filePath": "secret-manager/integrations/LaravelForgeConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/create": { "filePath": "secret-manager/integrations/NetlifyConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/authorize": { "filePath": "secret-manager/integrations/NorthflankAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/northflank/create": { "filePath": "secret-manager/integrations/NorthflankConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/authorize": { "filePath": "secret-manager/integrations/OctopusDeployAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/octopus-deploy/create": { "filePath": "secret-manager/integrations/OctopusDeployConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/authorize": { "filePath": "secret-manager/integrations/QoveryAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/qovery/create": { "filePath": "secret-manager/integrations/QoveryConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/authorize": { "filePath": "secret-manager/integrations/RailwayAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/railway/create": { "filePath": "secret-manager/integrations/RailwayConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/authorize": { "filePath": "secret-manager/integrations/RenderAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/render/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/render/create": { "filePath": "secret-manager/integrations/RenderConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/authorize": { "filePath": "secret-manager/integrations/RundeckAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/rundeck/create": { "filePath": "secret-manager/integrations/RundeckConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/authorize": { "filePath": "secret-manager/integrations/SupabaseAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/supabase/create": { "filePath": "secret-manager/integrations/SupabaseConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/authorize": { "filePath": "secret-manager/integrations/TeamcityAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/teamcity/create": { "filePath": "secret-manager/integrations/TeamcityConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/authorize": { "filePath": "secret-manager/integrations/TerraformCloudAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/terraform-cloud/create": { "filePath": "secret-manager/integrations/TerraformCloudConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/authorize": { "filePath": "secret-manager/integrations/TravisCIAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/travisci/create": { "filePath": "secret-manager/integrations/TravisCIConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/create": { "filePath": "secret-manager/integrations/VercelConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/authorize": { "filePath": "secret-manager/integrations/WindmillAuthorizePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/windmill/create": { "filePath": "secret-manager/integrations/WindmillConfigurePage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-app-configuration/oauth2/callback": { "filePath": "secret-manager/integrations/AzureAppConfigurationOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/azure-key-vault/oauth2/callback": { "filePath": "secret-manager/integrations/AzureKeyVaultOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/bitbucket/oauth2/callback": { "filePath": "secret-manager/integrations/BitbucketOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gcp-secret-manager/oauth2/callback": { "filePath": "secret-manager/integrations/GcpSecretManagerOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/github/oauth2/callback": { "filePath": "secret-manager/integrations/GithubOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/gitlab/oauth2/callback": { "filePath": "secret-manager/integrations/GitlabOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/heroku/oauth2/callback": { "filePath": "secret-manager/integrations/HerokuOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/netlify/oauth2/callback": { "filePath": "secret-manager/integrations/NetlifyOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" }, - "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback": { + "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations/vercel/oauth2/callback": { "filePath": "secret-manager/integrations/VercelOauthCallbackPage/route.tsx", - "parent": "/_authenticate/_inject-org-details/secret-manager/$projectId/_secret-manager-layout/integrations" + "parent": "/_authenticate/_inject-org-details/_org-layout/secret-manager/$projectId/_secret-manager-layout/integrations" } } } diff --git a/frontend/src/routes.ts b/frontend/src/routes.ts index d8913ec66..4fc748361 100644 --- a/frontend/src/routes.ts +++ b/frontend/src/routes.ts @@ -8,28 +8,26 @@ const adminRoute = route("/admin", [ ]); const organizationRoutes = route("/organization", [ - layout("organization/layout.tsx", [ - route("/secret-manager/overview", "organization/SecretManagerOverviewPage/route.tsx"), - route("/cert-manager/overview", "organization/CertManagerOverviewPage/route.tsx"), - route("/ssh/overview", "organization/SshOverviewPage/route.tsx"), - route("/kms/overview", "organization/KmsOverviewPage/route.tsx"), - route("/access-management", "organization/AccessManagementPage/route.tsx"), - route("/admin", "organization/AdminPage/route.tsx"), - route("/audit-logs", "organization/AuditLogsPage/route.tsx"), - route("/billing", "organization/BillingPage/route.tsx"), - route("/none", "organization/NoOrgPage/route.tsx"), - route("/secret-sharing", "organization/SecretSharingPage/route.tsx"), - route("/settings", "organization/SettingsPage/route.tsx"), - route("/secret-scanning", "organization/SecretScanningPage/route.tsx"), - route("/groups/$groupId", "organization/GroupDetailsByIDPage/route.tsx"), - route("/members/$membershipId", "organization/UserDetailsByIDPage/route.tsx"), - route("/roles/$roleId", "organization/RoleByIDPage/route.tsx"), - route("/identities/$identityId", "organization/IdentityDetailsByIDPage/route.tsx"), - route( - "/app-connections/github/oauth/callback", - "organization/AppConnections/GithubOauthCallbackPage/route.tsx" - ) - ]) + route("/secret-manager/overview", "organization/SecretManagerOverviewPage/route.tsx"), + route("/cert-manager/overview", "organization/CertManagerOverviewPage/route.tsx"), + route("/ssh/overview", "organization/SshOverviewPage/route.tsx"), + route("/kms/overview", "organization/KmsOverviewPage/route.tsx"), + route("/access-management", "organization/AccessManagementPage/route.tsx"), + route("/admin", "organization/AdminPage/route.tsx"), + route("/audit-logs", "organization/AuditLogsPage/route.tsx"), + route("/billing", "organization/BillingPage/route.tsx"), + route("/none", "organization/NoOrgPage/route.tsx"), + route("/secret-sharing", "organization/SecretSharingPage/route.tsx"), + route("/settings", "organization/SettingsPage/route.tsx"), + route("/secret-scanning", "organization/SecretScanningPage/route.tsx"), + route("/groups/$groupId", "organization/GroupDetailsByIDPage/route.tsx"), + route("/members/$membershipId", "organization/UserDetailsByIDPage/route.tsx"), + route("/roles/$roleId", "organization/RoleByIDPage/route.tsx"), + route("/identities/$identityId", "organization/IdentityDetailsByIDPage/route.tsx"), + route( + "/app-connections/github/oauth/callback", + "organization/AppConnections/GithubOauthCallbackPage/route.tsx" + ) ]); const secretManagerRoutes = route("/secret-manager/$projectId", [ @@ -338,12 +336,14 @@ export const routes = rootRoute("root.tsx", [ ]), middleware("inject-org-details.tsx", [ adminRoute, - organizationRoutes, - secretManagerRoutes, - secretManagerIntegrationsRedirect, - certManagerRoutes, - kmsRoutes, - sshRoutes + layout("org-layout", "organization/layout.tsx", [ + organizationRoutes, + secretManagerRoutes, + secretManagerIntegrationsRedirect, + certManagerRoutes, + kmsRoutes, + sshRoutes + ]) ]) ]) ]);