@industry-theme/repository-composition-panels 0.6.30 → 0.6.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BufferResource-BBok61RS.js → BufferResource-CgXBwTAK.js} +2 -2
- package/dist/{BufferResource-BBok61RS.js.map → BufferResource-CgXBwTAK.js.map} +1 -1
- package/dist/{CanvasRenderer-ChUHHBzp.js → CanvasRenderer-4WtcAgzc.js} +3 -3
- package/dist/{CanvasRenderer-ChUHHBzp.js.map → CanvasRenderer-4WtcAgzc.js.map} +1 -1
- package/dist/{Filter-CIW5VDE6.js → Filter-CCbEvcn-.js} +2 -2
- package/dist/{Filter-CIW5VDE6.js.map → Filter-CCbEvcn-.js.map} +1 -1
- package/dist/{RenderTargetSystem-DHo9fiqa.js → RenderTargetSystem-CUjfwYdJ.js} +3 -3
- package/dist/{RenderTargetSystem-DHo9fiqa.js.map → RenderTargetSystem-CUjfwYdJ.js.map} +1 -1
- package/dist/{WebGLRenderer-9uzpEisE.js → WebGLRenderer-Bpz07IxR.js} +4 -4
- package/dist/{WebGLRenderer-9uzpEisE.js.map → WebGLRenderer-Bpz07IxR.js.map} +1 -1
- package/dist/{WebGPURenderer-Bjpg8hkG.js → WebGPURenderer-CYHP_r5v.js} +4 -4
- package/dist/{WebGPURenderer-Bjpg8hkG.js.map → WebGPURenderer-CYHP_r5v.js.map} +1 -1
- package/dist/{browserAll-B0PE4Ly2.js → browserAll-8dgNqS_u.js} +3 -3
- package/dist/{browserAll-B0PE4Ly2.js.map → browserAll-8dgNqS_u.js.map} +1 -1
- package/dist/{index-B5obJmUS.js → index-DKt_e7J1.js} +924 -11
- package/dist/{index-B5obJmUS.js.map → index-DKt_e7J1.js.map} +1 -1
- package/dist/{init-BE3Rk_Ji.js → init-CnAv03An.js} +3 -3
- package/dist/{init-BE3Rk_Ji.js.map → init-CnAv03An.js.map} +1 -1
- package/dist/panels/CollectionMapPanel.d.ts.map +1 -1
- package/dist/panels/overworld-map/LayoutEngineTest.d.ts +1 -0
- package/dist/panels/overworld-map/LayoutEngineTest.d.ts.map +1 -1
- package/dist/panels/overworld-map/LicenseSignTest.d.ts +7 -0
- package/dist/panels/overworld-map/LicenseSignTest.d.ts.map +1 -0
- package/dist/panels/overworld-map/OverworldMapPanel.d.ts.map +1 -1
- package/dist/panels/overworld-map/components/IsometricRenderer.d.ts +3 -0
- package/dist/panels/overworld-map/components/IsometricRenderer.d.ts.map +1 -1
- package/dist/panels/overworld-map/components/licenseSignSprites.d.ts +122 -0
- package/dist/panels/overworld-map/components/licenseSignSprites.d.ts.map +1 -0
- package/dist/panels/overworld-map/genericMapper.d.ts +1 -0
- package/dist/panels/overworld-map/genericMapper.d.ts.map +1 -1
- package/dist/panels/overworld-map/types.d.ts +1 -0
- package/dist/panels/overworld-map/types.d.ts.map +1 -1
- package/dist/panels.bundle.js +1 -1
- package/dist/webworkerAll-x0txRvuX.js +3 -0
- package/dist/webworkerAll-x0txRvuX.js.map +1 -0
- package/package.json +1 -1
- package/dist/panels/overworld-map/IsometricGridTest.d.ts +0 -15
- package/dist/panels/overworld-map/IsometricGridTest.d.ts.map +0 -1
- package/dist/webworkerAll-BBVbOe1V.js +0 -3
- package/dist/webworkerAll-BBVbOe1V.js.map +0 -1
|
@@ -106176,7 +106176,7 @@ const browserExt = {
|
|
|
106176
106176
|
},
|
|
106177
106177
|
test: () => true,
|
|
106178
106178
|
load: async () => {
|
|
106179
|
-
await import("./browserAll-
|
|
106179
|
+
await import("./browserAll-8dgNqS_u.js");
|
|
106180
106180
|
}
|
|
106181
106181
|
};
|
|
106182
106182
|
const webworkerExt = {
|
|
@@ -106187,7 +106187,7 @@ const webworkerExt = {
|
|
|
106187
106187
|
},
|
|
106188
106188
|
test: () => typeof self !== "undefined" && self.WorkerGlobalScope !== void 0,
|
|
106189
106189
|
load: async () => {
|
|
106190
|
-
await import("./webworkerAll-
|
|
106190
|
+
await import("./webworkerAll-x0txRvuX.js");
|
|
106191
106191
|
}
|
|
106192
106192
|
};
|
|
106193
106193
|
class ObservablePoint {
|
|
@@ -118430,19 +118430,19 @@ async function autoDetectRenderer(options) {
|
|
|
118430
118430
|
for (let i2 = 0; i2 < preferredOrder.length; i2++) {
|
|
118431
118431
|
const rendererType = preferredOrder[i2];
|
|
118432
118432
|
if (rendererType === "webgpu" && await isWebGPUSupported()) {
|
|
118433
|
-
const { WebGPURenderer } = await import("./WebGPURenderer-
|
|
118433
|
+
const { WebGPURenderer } = await import("./WebGPURenderer-CYHP_r5v.js");
|
|
118434
118434
|
RendererClass = WebGPURenderer;
|
|
118435
118435
|
finalOptions = { ...options, ...options.webgpu };
|
|
118436
118436
|
break;
|
|
118437
118437
|
} else if (rendererType === "webgl" && isWebGLSupported(
|
|
118438
118438
|
options.failIfMajorPerformanceCaveat ?? AbstractRenderer.defaultOptions.failIfMajorPerformanceCaveat
|
|
118439
118439
|
)) {
|
|
118440
|
-
const { WebGLRenderer } = await import("./WebGLRenderer-
|
|
118440
|
+
const { WebGLRenderer } = await import("./WebGLRenderer-Bpz07IxR.js");
|
|
118441
118441
|
RendererClass = WebGLRenderer;
|
|
118442
118442
|
finalOptions = { ...options, ...options.webgl };
|
|
118443
118443
|
break;
|
|
118444
118444
|
} else if (rendererType === "canvas") {
|
|
118445
|
-
const { CanvasRenderer } = await import("./CanvasRenderer-
|
|
118445
|
+
const { CanvasRenderer } = await import("./CanvasRenderer-4WtcAgzc.js");
|
|
118446
118446
|
RendererClass = CanvasRenderer;
|
|
118447
118447
|
finalOptions = { ...options, ...options.canvasOptions };
|
|
118448
118448
|
break;
|
|
@@ -132920,6 +132920,834 @@ function domEventToGridCoords(clientX, clientY, viewport, canvasElement) {
|
|
|
132920
132920
|
const gridCoords = screenToGrid(worldPoint.x, worldPoint.y);
|
|
132921
132921
|
return gridCoords;
|
|
132922
132922
|
}
|
|
132923
|
+
const TILE_WIDTH = ISO_TILE_WIDTH$1;
|
|
132924
|
+
const TILE_HEIGHT = ISO_TILE_HEIGHT$1;
|
|
132925
|
+
function calculateFootprint(sizeMultiplier) {
|
|
132926
|
+
const tiles = 4 * sizeMultiplier;
|
|
132927
|
+
return {
|
|
132928
|
+
tiles,
|
|
132929
|
+
width: tiles * TILE_WIDTH / 2,
|
|
132930
|
+
height: tiles * TILE_HEIGHT / 2
|
|
132931
|
+
};
|
|
132932
|
+
}
|
|
132933
|
+
const COLORS = {
|
|
132934
|
+
// Wood colors
|
|
132935
|
+
woodDark: 6111287,
|
|
132936
|
+
woodMedium: 7951688,
|
|
132937
|
+
woodLight: 9268835,
|
|
132938
|
+
// Flower/vine colors (MIT - welcoming, open)
|
|
132939
|
+
flowerPink: 16738740,
|
|
132940
|
+
flowerPinkDark: 14381203,
|
|
132941
|
+
flowerYellow: 16766720,
|
|
132942
|
+
leafGreen: 2263842,
|
|
132943
|
+
leafGreenLight: 3329330,
|
|
132944
|
+
vineGreen: 3050327,
|
|
132945
|
+
// Grass colors
|
|
132946
|
+
grassLight: 9498256,
|
|
132947
|
+
grassMedium: 3329330,
|
|
132948
|
+
grassDark: 2263842
|
|
132949
|
+
};
|
|
132950
|
+
function generateMITFlowerArch(config) {
|
|
132951
|
+
const { name: name2, sizeMultiplier, archWidth: customArchWidth } = config;
|
|
132952
|
+
const container = new Container();
|
|
132953
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
132954
|
+
const archWidth = customArchWidth ?? footprint.width * 0.5;
|
|
132955
|
+
const scale = archWidth / 80;
|
|
132956
|
+
const postWidth = Math.max(3, 4 * scale);
|
|
132957
|
+
const postHeight = Math.max(25, 35 * scale);
|
|
132958
|
+
const archHeight = postHeight + 4 * scale;
|
|
132959
|
+
const graphics = new Graphics();
|
|
132960
|
+
graphics.rect(-archWidth / 2, -postHeight, postWidth, postHeight);
|
|
132961
|
+
graphics.fill(COLORS.woodMedium);
|
|
132962
|
+
graphics.rect(-archWidth / 2, -postHeight, Math.max(1, scale), postHeight);
|
|
132963
|
+
graphics.fill(COLORS.woodLight);
|
|
132964
|
+
graphics.rect(
|
|
132965
|
+
-archWidth / 2 + postWidth - Math.max(1, scale),
|
|
132966
|
+
-postHeight,
|
|
132967
|
+
Math.max(1, scale),
|
|
132968
|
+
postHeight
|
|
132969
|
+
);
|
|
132970
|
+
graphics.fill(COLORS.woodDark);
|
|
132971
|
+
graphics.rect(archWidth / 2 - postWidth, -postHeight, postWidth, postHeight);
|
|
132972
|
+
graphics.fill(COLORS.woodMedium);
|
|
132973
|
+
graphics.rect(
|
|
132974
|
+
archWidth / 2 - postWidth,
|
|
132975
|
+
-postHeight,
|
|
132976
|
+
Math.max(1, scale),
|
|
132977
|
+
postHeight
|
|
132978
|
+
);
|
|
132979
|
+
graphics.fill(COLORS.woodLight);
|
|
132980
|
+
graphics.rect(
|
|
132981
|
+
archWidth / 2 - Math.max(1, scale),
|
|
132982
|
+
-postHeight,
|
|
132983
|
+
Math.max(1, scale),
|
|
132984
|
+
postHeight
|
|
132985
|
+
);
|
|
132986
|
+
graphics.fill(COLORS.woodDark);
|
|
132987
|
+
const crossbarHeight = Math.max(3, 4 * scale);
|
|
132988
|
+
graphics.rect(-archWidth / 2, -archHeight, archWidth, crossbarHeight);
|
|
132989
|
+
graphics.fill(COLORS.woodMedium);
|
|
132990
|
+
graphics.rect(-archWidth / 2, -archHeight, archWidth, Math.max(1, scale));
|
|
132991
|
+
graphics.fill(COLORS.woodLight);
|
|
132992
|
+
graphics.rect(
|
|
132993
|
+
-archWidth / 2,
|
|
132994
|
+
-archHeight + crossbarHeight - Math.max(1, scale),
|
|
132995
|
+
archWidth,
|
|
132996
|
+
Math.max(1, scale)
|
|
132997
|
+
);
|
|
132998
|
+
graphics.fill(COLORS.woodDark);
|
|
132999
|
+
const flagWidth = archWidth * 0.5;
|
|
133000
|
+
const flagHeight = Math.max(18, 24 * scale);
|
|
133001
|
+
const flagTop = -postHeight + 2 * scale;
|
|
133002
|
+
graphics.rect(-flagWidth / 2, flagTop, flagWidth, flagHeight);
|
|
133003
|
+
graphics.fill(9498256);
|
|
133004
|
+
graphics.rect(-flagWidth / 2, flagTop, flagWidth, Math.max(1, scale));
|
|
133005
|
+
graphics.fill(8244349);
|
|
133006
|
+
graphics.rect(
|
|
133007
|
+
-flagWidth / 2,
|
|
133008
|
+
flagTop + flagHeight - Math.max(1, scale),
|
|
133009
|
+
flagWidth,
|
|
133010
|
+
Math.max(1, scale)
|
|
133011
|
+
);
|
|
133012
|
+
graphics.fill(7059563);
|
|
133013
|
+
graphics.rect(-flagWidth / 2, flagTop, Math.max(1, scale), flagHeight);
|
|
133014
|
+
graphics.fill(8244349);
|
|
133015
|
+
graphics.rect(
|
|
133016
|
+
flagWidth / 2 - Math.max(1, scale),
|
|
133017
|
+
flagTop,
|
|
133018
|
+
Math.max(1, scale),
|
|
133019
|
+
flagHeight
|
|
133020
|
+
);
|
|
133021
|
+
graphics.fill(7059563);
|
|
133022
|
+
const vineSize = Math.max(2, 3 * scale);
|
|
133023
|
+
const vinePositions = [
|
|
133024
|
+
{ x: -archWidth / 2 - 2 * scale, y: -postHeight * 0.9 },
|
|
133025
|
+
{ x: -archWidth / 2 - 1 * scale, y: -postHeight * 0.6 },
|
|
133026
|
+
{ x: -archWidth / 2 + 1 * scale, y: -postHeight * 0.4 },
|
|
133027
|
+
{ x: -archWidth / 2 - 2 * scale, y: -postHeight * 0.2 }
|
|
133028
|
+
];
|
|
133029
|
+
for (const pos of vinePositions) {
|
|
133030
|
+
graphics.rect(pos.x, pos.y, vineSize, vineSize * 0.66);
|
|
133031
|
+
graphics.fill(COLORS.vineGreen);
|
|
133032
|
+
}
|
|
133033
|
+
const rightVinePositions = [
|
|
133034
|
+
{ x: archWidth / 2 - 1 * scale, y: -postHeight * 0.8 },
|
|
133035
|
+
{ x: archWidth / 2 + 1 * scale, y: -postHeight * 0.5 },
|
|
133036
|
+
{ x: archWidth / 2 - 2 * scale, y: -postHeight * 0.3 },
|
|
133037
|
+
{ x: archWidth / 2, y: -postHeight * 0.1 }
|
|
133038
|
+
];
|
|
133039
|
+
for (const pos of rightVinePositions) {
|
|
133040
|
+
graphics.rect(pos.x, pos.y, vineSize, vineSize * 0.66);
|
|
133041
|
+
graphics.fill(COLORS.vineGreen);
|
|
133042
|
+
}
|
|
133043
|
+
const flowerCount = Math.max(4, Math.floor(6 * scale));
|
|
133044
|
+
const flowerSpacing = archWidth / (flowerCount + 1);
|
|
133045
|
+
const flowerSize = Math.max(3, 4 * scale);
|
|
133046
|
+
for (let i2 = 0; i2 < flowerCount; i2++) {
|
|
133047
|
+
const fx = -archWidth / 2 + flowerSpacing * (i2 + 1);
|
|
133048
|
+
const flowerColor = i2 % 2 === 0 ? COLORS.flowerPink : COLORS.flowerYellow;
|
|
133049
|
+
graphics.rect(
|
|
133050
|
+
fx - flowerSize * 0.5,
|
|
133051
|
+
-flowerSize - 2 * scale,
|
|
133052
|
+
flowerSize * 0.5,
|
|
133053
|
+
flowerSize * 0.5
|
|
133054
|
+
);
|
|
133055
|
+
graphics.fill(COLORS.leafGreen);
|
|
133056
|
+
graphics.rect(
|
|
133057
|
+
fx + flowerSize * 0.25,
|
|
133058
|
+
-flowerSize - 1 * scale,
|
|
133059
|
+
flowerSize * 0.5,
|
|
133060
|
+
flowerSize * 0.5
|
|
133061
|
+
);
|
|
133062
|
+
graphics.fill(COLORS.leafGreenLight);
|
|
133063
|
+
graphics.rect(fx - flowerSize * 0.5, -flowerSize, flowerSize, flowerSize);
|
|
133064
|
+
graphics.fill(flowerColor);
|
|
133065
|
+
graphics.rect(
|
|
133066
|
+
fx - flowerSize * 0.25,
|
|
133067
|
+
-flowerSize * 0.75,
|
|
133068
|
+
flowerSize * 0.5,
|
|
133069
|
+
flowerSize * 0.5
|
|
133070
|
+
);
|
|
133071
|
+
graphics.fill(COLORS.flowerYellow);
|
|
133072
|
+
}
|
|
133073
|
+
const cornerFlowerSize = Math.max(4, 5 * scale);
|
|
133074
|
+
graphics.rect(
|
|
133075
|
+
-archWidth / 2 - cornerFlowerSize * 0.3,
|
|
133076
|
+
-cornerFlowerSize,
|
|
133077
|
+
cornerFlowerSize,
|
|
133078
|
+
cornerFlowerSize
|
|
133079
|
+
);
|
|
133080
|
+
graphics.fill(COLORS.flowerPink);
|
|
133081
|
+
graphics.rect(
|
|
133082
|
+
-archWidth / 2 - cornerFlowerSize * 0.1,
|
|
133083
|
+
-cornerFlowerSize * 0.8,
|
|
133084
|
+
cornerFlowerSize * 0.6,
|
|
133085
|
+
cornerFlowerSize * 0.6
|
|
133086
|
+
);
|
|
133087
|
+
graphics.fill(COLORS.flowerPinkDark);
|
|
133088
|
+
graphics.rect(
|
|
133089
|
+
archWidth / 2 - cornerFlowerSize * 0.7,
|
|
133090
|
+
-cornerFlowerSize,
|
|
133091
|
+
cornerFlowerSize,
|
|
133092
|
+
cornerFlowerSize
|
|
133093
|
+
);
|
|
133094
|
+
graphics.fill(COLORS.flowerPink);
|
|
133095
|
+
graphics.rect(
|
|
133096
|
+
archWidth / 2 - cornerFlowerSize * 0.5,
|
|
133097
|
+
-cornerFlowerSize * 0.8,
|
|
133098
|
+
cornerFlowerSize * 0.6,
|
|
133099
|
+
cornerFlowerSize * 0.6
|
|
133100
|
+
);
|
|
133101
|
+
graphics.fill(COLORS.flowerPinkDark);
|
|
133102
|
+
container.addChild(graphics);
|
|
133103
|
+
const mitFontSize = Math.max(10, 14 * scale);
|
|
133104
|
+
const mitText = new Text({
|
|
133105
|
+
text: "MIT",
|
|
133106
|
+
style: {
|
|
133107
|
+
fontSize: mitFontSize,
|
|
133108
|
+
fill: 2263842,
|
|
133109
|
+
// Forest green text
|
|
133110
|
+
fontFamily: "Arial",
|
|
133111
|
+
fontWeight: "bold"
|
|
133112
|
+
},
|
|
133113
|
+
resolution: 2
|
|
133114
|
+
});
|
|
133115
|
+
mitText.anchor.set(0.5, 0.5);
|
|
133116
|
+
mitText.y = flagTop + flagHeight * 0.5;
|
|
133117
|
+
container.addChild(mitText);
|
|
133118
|
+
const signBoard = new Graphics();
|
|
133119
|
+
const fontSize = Math.max(8, 9 * scale);
|
|
133120
|
+
const estimatedTextWidth = name2.length * fontSize * 0.6;
|
|
133121
|
+
const signWidth = Math.min(
|
|
133122
|
+
estimatedTextWidth + 16 * scale,
|
|
133123
|
+
archWidth - 8 * scale
|
|
133124
|
+
);
|
|
133125
|
+
const signHeight = Math.max(8, 10 * scale);
|
|
133126
|
+
const signBoardY = -archHeight - signHeight - 2 * scale;
|
|
133127
|
+
signBoard.rect(-signWidth / 2, signBoardY, signWidth, signHeight);
|
|
133128
|
+
signBoard.fill(COLORS.woodLight);
|
|
133129
|
+
signBoard.rect(-signWidth / 2, signBoardY, signWidth, Math.max(1, scale));
|
|
133130
|
+
signBoard.fill(COLORS.woodMedium);
|
|
133131
|
+
signBoard.rect(
|
|
133132
|
+
-signWidth / 2,
|
|
133133
|
+
signBoardY + signHeight - Math.max(1, scale),
|
|
133134
|
+
signWidth,
|
|
133135
|
+
Math.max(1, scale)
|
|
133136
|
+
);
|
|
133137
|
+
signBoard.fill(COLORS.woodDark);
|
|
133138
|
+
container.addChild(signBoard);
|
|
133139
|
+
const nameText = new Text({
|
|
133140
|
+
text: name2,
|
|
133141
|
+
style: {
|
|
133142
|
+
fontSize,
|
|
133143
|
+
fill: 4073251,
|
|
133144
|
+
// Dark brown text
|
|
133145
|
+
fontFamily: "Arial",
|
|
133146
|
+
fontWeight: "600"
|
|
133147
|
+
},
|
|
133148
|
+
resolution: 2
|
|
133149
|
+
});
|
|
133150
|
+
nameText.anchor.set(0.5, 0.5);
|
|
133151
|
+
nameText.y = signBoardY + signHeight / 2;
|
|
133152
|
+
container.addChild(nameText);
|
|
133153
|
+
return container;
|
|
133154
|
+
}
|
|
133155
|
+
function generateOpenGrassGround(sizeMultiplier) {
|
|
133156
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
133157
|
+
const grass = new Graphics();
|
|
133158
|
+
const halfW = footprint.width;
|
|
133159
|
+
const halfH = footprint.height;
|
|
133160
|
+
grass.moveTo(0, -halfH);
|
|
133161
|
+
grass.lineTo(halfW, 0);
|
|
133162
|
+
grass.lineTo(0, halfH);
|
|
133163
|
+
grass.lineTo(-halfW, 0);
|
|
133164
|
+
grass.closePath();
|
|
133165
|
+
grass.fill(COLORS.grassMedium);
|
|
133166
|
+
const textureCount = Math.max(6, Math.floor(8 * sizeMultiplier));
|
|
133167
|
+
for (let i2 = 0; i2 < textureCount; i2++) {
|
|
133168
|
+
const angle = i2 / textureCount * Math.PI * 2;
|
|
133169
|
+
const radius = 0.3 + i2 % 3 * 0.15;
|
|
133170
|
+
const x2 = Math.cos(angle) * halfW * radius;
|
|
133171
|
+
const y2 = Math.sin(angle) * halfH * radius;
|
|
133172
|
+
const dotSize = Math.max(1.5, 2 * sizeMultiplier);
|
|
133173
|
+
grass.circle(x2, y2, dotSize);
|
|
133174
|
+
grass.fill(i2 % 2 === 0 ? COLORS.grassLight : COLORS.grassDark);
|
|
133175
|
+
}
|
|
133176
|
+
const flowerSize = Math.max(1, 1.5 * sizeMultiplier);
|
|
133177
|
+
const flowerSpots = [
|
|
133178
|
+
{ x: -halfW * 0.5, y: -halfH * 0.2 },
|
|
133179
|
+
{ x: halfW * 0.4, y: halfH * 0.3 },
|
|
133180
|
+
{ x: -halfW * 0.2, y: halfH * 0.4 },
|
|
133181
|
+
{ x: halfW * 0.3, y: -halfH * 0.35 }
|
|
133182
|
+
];
|
|
133183
|
+
for (const spot of flowerSpots) {
|
|
133184
|
+
grass.circle(spot.x, spot.y, flowerSize);
|
|
133185
|
+
grass.fill(COLORS.flowerPink);
|
|
133186
|
+
}
|
|
133187
|
+
return grass;
|
|
133188
|
+
}
|
|
133189
|
+
function generateApacheSign(config) {
|
|
133190
|
+
const { name: name2, sizeMultiplier, archWidth: customArchWidth } = config;
|
|
133191
|
+
const container = new Container();
|
|
133192
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
133193
|
+
const archWidth = customArchWidth ?? footprint.width * 0.5;
|
|
133194
|
+
const scale = archWidth / 80;
|
|
133195
|
+
const graphics = new Graphics();
|
|
133196
|
+
const postWidth = Math.max(3, 4 * scale);
|
|
133197
|
+
const postHeight = Math.max(25, 35 * scale);
|
|
133198
|
+
graphics.rect(-archWidth / 2, -postHeight, postWidth, postHeight);
|
|
133199
|
+
graphics.fill(COLORS.woodMedium);
|
|
133200
|
+
graphics.rect(-archWidth / 2, -postHeight, Math.max(1, scale), postHeight);
|
|
133201
|
+
graphics.fill(COLORS.woodLight);
|
|
133202
|
+
graphics.rect(
|
|
133203
|
+
-archWidth / 2 + postWidth - Math.max(1, scale),
|
|
133204
|
+
-postHeight,
|
|
133205
|
+
Math.max(1, scale),
|
|
133206
|
+
postHeight
|
|
133207
|
+
);
|
|
133208
|
+
graphics.fill(COLORS.woodDark);
|
|
133209
|
+
graphics.rect(archWidth / 2 - postWidth, -postHeight, postWidth, postHeight);
|
|
133210
|
+
graphics.fill(COLORS.woodMedium);
|
|
133211
|
+
graphics.rect(
|
|
133212
|
+
archWidth / 2 - postWidth,
|
|
133213
|
+
-postHeight,
|
|
133214
|
+
Math.max(1, scale),
|
|
133215
|
+
postHeight
|
|
133216
|
+
);
|
|
133217
|
+
graphics.fill(COLORS.woodLight);
|
|
133218
|
+
graphics.rect(
|
|
133219
|
+
archWidth / 2 - Math.max(1, scale),
|
|
133220
|
+
-postHeight,
|
|
133221
|
+
Math.max(1, scale),
|
|
133222
|
+
postHeight
|
|
133223
|
+
);
|
|
133224
|
+
graphics.fill(COLORS.woodDark);
|
|
133225
|
+
const crossbarHeight = Math.max(3, 4 * scale);
|
|
133226
|
+
graphics.rect(
|
|
133227
|
+
-archWidth / 2,
|
|
133228
|
+
-postHeight - crossbarHeight,
|
|
133229
|
+
archWidth,
|
|
133230
|
+
crossbarHeight
|
|
133231
|
+
);
|
|
133232
|
+
graphics.fill(COLORS.woodMedium);
|
|
133233
|
+
graphics.rect(
|
|
133234
|
+
-archWidth / 2,
|
|
133235
|
+
-postHeight - crossbarHeight,
|
|
133236
|
+
archWidth,
|
|
133237
|
+
Math.max(1, scale)
|
|
133238
|
+
);
|
|
133239
|
+
graphics.fill(COLORS.woodLight);
|
|
133240
|
+
const flagWidth = archWidth * 0.5;
|
|
133241
|
+
const flagHeight = Math.max(18, 24 * scale);
|
|
133242
|
+
const flagTop = -postHeight + 2 * scale;
|
|
133243
|
+
graphics.rect(-flagWidth / 2, flagTop, flagWidth, flagHeight);
|
|
133244
|
+
graphics.fill(16777215);
|
|
133245
|
+
graphics.rect(-flagWidth / 2, flagTop, flagWidth, Math.max(1, scale));
|
|
133246
|
+
graphics.fill(14540253);
|
|
133247
|
+
graphics.rect(
|
|
133248
|
+
-flagWidth / 2,
|
|
133249
|
+
flagTop + flagHeight - Math.max(1, scale),
|
|
133250
|
+
flagWidth,
|
|
133251
|
+
Math.max(1, scale)
|
|
133252
|
+
);
|
|
133253
|
+
graphics.fill(13421772);
|
|
133254
|
+
graphics.rect(-flagWidth / 2, flagTop, Math.max(1, scale), flagHeight);
|
|
133255
|
+
graphics.fill(14540253);
|
|
133256
|
+
graphics.rect(
|
|
133257
|
+
flagWidth / 2 - Math.max(1, scale),
|
|
133258
|
+
flagTop,
|
|
133259
|
+
Math.max(1, scale),
|
|
133260
|
+
flagHeight
|
|
133261
|
+
);
|
|
133262
|
+
graphics.fill(13421772);
|
|
133263
|
+
const leafCenterY = flagTop + flagHeight * 0.55;
|
|
133264
|
+
const leafSize = Math.min(flagWidth, flagHeight) * 0.35;
|
|
133265
|
+
const leafColor = 13369344;
|
|
133266
|
+
const leafGraphics = new Graphics();
|
|
133267
|
+
leafGraphics.rect(-scale * 0.5, 0, scale, leafSize * 0.6);
|
|
133268
|
+
leafGraphics.fill(9109504);
|
|
133269
|
+
leafGraphics.beginPath();
|
|
133270
|
+
leafGraphics.moveTo(0, -leafSize * 0.8);
|
|
133271
|
+
leafGraphics.lineTo(leafSize * 0.3, -leafSize * 0.4);
|
|
133272
|
+
leafGraphics.lineTo(leafSize * 0.6, -leafSize * 0.3);
|
|
133273
|
+
leafGraphics.lineTo(leafSize * 0.3, -leafSize * 0.1);
|
|
133274
|
+
leafGraphics.lineTo(leafSize * 0.4, leafSize * 0.2);
|
|
133275
|
+
leafGraphics.lineTo(leafSize * 0.15, leafSize * 0.15);
|
|
133276
|
+
leafGraphics.lineTo(0, leafSize * 0.4);
|
|
133277
|
+
leafGraphics.lineTo(-leafSize * 0.15, leafSize * 0.15);
|
|
133278
|
+
leafGraphics.lineTo(-leafSize * 0.4, leafSize * 0.2);
|
|
133279
|
+
leafGraphics.lineTo(-leafSize * 0.3, -leafSize * 0.1);
|
|
133280
|
+
leafGraphics.lineTo(-leafSize * 0.6, -leafSize * 0.3);
|
|
133281
|
+
leafGraphics.lineTo(-leafSize * 0.3, -leafSize * 0.4);
|
|
133282
|
+
leafGraphics.closePath();
|
|
133283
|
+
leafGraphics.fill(leafColor);
|
|
133284
|
+
leafGraphics.x = 0;
|
|
133285
|
+
leafGraphics.y = leafCenterY;
|
|
133286
|
+
leafGraphics.rotation = 0.3;
|
|
133287
|
+
graphics.addChild(leafGraphics);
|
|
133288
|
+
container.addChild(graphics);
|
|
133289
|
+
const signBoard = new Graphics();
|
|
133290
|
+
const fontSize = Math.max(8, 9 * scale);
|
|
133291
|
+
const estimatedTextWidth = name2.length * fontSize * 0.6;
|
|
133292
|
+
const signBoardWidth = Math.min(
|
|
133293
|
+
estimatedTextWidth + 16 * scale,
|
|
133294
|
+
archWidth - 8 * scale
|
|
133295
|
+
);
|
|
133296
|
+
const signBoardHeight = Math.max(8, 10 * scale);
|
|
133297
|
+
const signBoardY = -postHeight - crossbarHeight + 2 * scale;
|
|
133298
|
+
signBoard.rect(
|
|
133299
|
+
-signBoardWidth / 2,
|
|
133300
|
+
signBoardY,
|
|
133301
|
+
signBoardWidth,
|
|
133302
|
+
signBoardHeight
|
|
133303
|
+
);
|
|
133304
|
+
signBoard.fill(COLORS.woodLight);
|
|
133305
|
+
signBoard.rect(
|
|
133306
|
+
-signBoardWidth / 2,
|
|
133307
|
+
signBoardY,
|
|
133308
|
+
signBoardWidth,
|
|
133309
|
+
Math.max(1, scale)
|
|
133310
|
+
);
|
|
133311
|
+
signBoard.fill(COLORS.woodMedium);
|
|
133312
|
+
signBoard.rect(
|
|
133313
|
+
-signBoardWidth / 2,
|
|
133314
|
+
signBoardY + signBoardHeight - Math.max(1, scale),
|
|
133315
|
+
signBoardWidth,
|
|
133316
|
+
Math.max(1, scale)
|
|
133317
|
+
);
|
|
133318
|
+
signBoard.fill(COLORS.woodDark);
|
|
133319
|
+
container.addChild(signBoard);
|
|
133320
|
+
const nameText = new Text({
|
|
133321
|
+
text: name2,
|
|
133322
|
+
style: {
|
|
133323
|
+
fontSize,
|
|
133324
|
+
fill: 4073251,
|
|
133325
|
+
fontFamily: "Arial",
|
|
133326
|
+
fontWeight: "600"
|
|
133327
|
+
},
|
|
133328
|
+
resolution: 2
|
|
133329
|
+
});
|
|
133330
|
+
nameText.anchor.set(0.5, 0.5);
|
|
133331
|
+
nameText.y = signBoardY + signBoardHeight / 2;
|
|
133332
|
+
container.addChild(nameText);
|
|
133333
|
+
return container;
|
|
133334
|
+
}
|
|
133335
|
+
function generateGPLSign(config) {
|
|
133336
|
+
const { name: name2, sizeMultiplier, archWidth: customArchWidth } = config;
|
|
133337
|
+
const container = new Container();
|
|
133338
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
133339
|
+
const archWidth = customArchWidth ?? footprint.width * 0.5;
|
|
133340
|
+
const scale = archWidth / 80;
|
|
133341
|
+
const graphics = new Graphics();
|
|
133342
|
+
const ironDark = 2763306;
|
|
133343
|
+
const ironMedium = 3815994;
|
|
133344
|
+
const ironLight = 4868682;
|
|
133345
|
+
const ironHighlight = 5921370;
|
|
133346
|
+
const postWidth = Math.max(4, 5 * scale);
|
|
133347
|
+
const postHeight = Math.max(25, 35 * scale);
|
|
133348
|
+
graphics.rect(-archWidth / 2, -postHeight, postWidth, postHeight);
|
|
133349
|
+
graphics.fill(ironMedium);
|
|
133350
|
+
graphics.rect(-archWidth / 2, -postHeight, Math.max(1, scale), postHeight);
|
|
133351
|
+
graphics.fill(ironHighlight);
|
|
133352
|
+
graphics.rect(
|
|
133353
|
+
-archWidth / 2 + postWidth - Math.max(1, scale),
|
|
133354
|
+
-postHeight,
|
|
133355
|
+
Math.max(1, scale),
|
|
133356
|
+
postHeight
|
|
133357
|
+
);
|
|
133358
|
+
graphics.fill(ironDark);
|
|
133359
|
+
const finialSize = postWidth * 1.2;
|
|
133360
|
+
graphics.circle(
|
|
133361
|
+
-archWidth / 2 + postWidth / 2,
|
|
133362
|
+
-postHeight - finialSize / 2,
|
|
133363
|
+
finialSize / 2
|
|
133364
|
+
);
|
|
133365
|
+
graphics.fill(ironMedium);
|
|
133366
|
+
graphics.circle(
|
|
133367
|
+
-archWidth / 2 + postWidth / 2 - finialSize * 0.15,
|
|
133368
|
+
-postHeight - finialSize * 0.65,
|
|
133369
|
+
finialSize * 0.15
|
|
133370
|
+
);
|
|
133371
|
+
graphics.fill(ironHighlight);
|
|
133372
|
+
graphics.rect(archWidth / 2 - postWidth, -postHeight, postWidth, postHeight);
|
|
133373
|
+
graphics.fill(ironMedium);
|
|
133374
|
+
graphics.rect(
|
|
133375
|
+
archWidth / 2 - postWidth,
|
|
133376
|
+
-postHeight,
|
|
133377
|
+
Math.max(1, scale),
|
|
133378
|
+
postHeight
|
|
133379
|
+
);
|
|
133380
|
+
graphics.fill(ironHighlight);
|
|
133381
|
+
graphics.rect(
|
|
133382
|
+
archWidth / 2 - Math.max(1, scale),
|
|
133383
|
+
-postHeight,
|
|
133384
|
+
Math.max(1, scale),
|
|
133385
|
+
postHeight
|
|
133386
|
+
);
|
|
133387
|
+
graphics.fill(ironDark);
|
|
133388
|
+
graphics.circle(
|
|
133389
|
+
archWidth / 2 - postWidth / 2,
|
|
133390
|
+
-postHeight - finialSize / 2,
|
|
133391
|
+
finialSize / 2
|
|
133392
|
+
);
|
|
133393
|
+
graphics.fill(ironMedium);
|
|
133394
|
+
graphics.circle(
|
|
133395
|
+
archWidth / 2 - postWidth / 2 - finialSize * 0.15,
|
|
133396
|
+
-postHeight - finialSize * 0.65,
|
|
133397
|
+
finialSize * 0.15
|
|
133398
|
+
);
|
|
133399
|
+
graphics.fill(ironHighlight);
|
|
133400
|
+
const crossbarHeight = Math.max(4, 5 * scale);
|
|
133401
|
+
graphics.rect(
|
|
133402
|
+
-archWidth / 2,
|
|
133403
|
+
-postHeight - crossbarHeight,
|
|
133404
|
+
archWidth,
|
|
133405
|
+
crossbarHeight
|
|
133406
|
+
);
|
|
133407
|
+
graphics.fill(ironMedium);
|
|
133408
|
+
graphics.rect(
|
|
133409
|
+
-archWidth / 2,
|
|
133410
|
+
-postHeight - crossbarHeight,
|
|
133411
|
+
archWidth,
|
|
133412
|
+
Math.max(1, scale)
|
|
133413
|
+
);
|
|
133414
|
+
graphics.fill(ironHighlight);
|
|
133415
|
+
graphics.rect(
|
|
133416
|
+
-archWidth / 2,
|
|
133417
|
+
-postHeight - Math.max(1, scale),
|
|
133418
|
+
archWidth,
|
|
133419
|
+
Math.max(1, scale)
|
|
133420
|
+
);
|
|
133421
|
+
graphics.fill(ironDark);
|
|
133422
|
+
const scrollY = -postHeight + 3 * scale;
|
|
133423
|
+
const scrollWidth = archWidth * 0.15;
|
|
133424
|
+
graphics.circle(-archWidth / 4, scrollY, scrollWidth);
|
|
133425
|
+
graphics.stroke({ width: Math.max(2, 2 * scale), color: ironMedium });
|
|
133426
|
+
graphics.circle(archWidth / 4, scrollY, scrollWidth);
|
|
133427
|
+
graphics.stroke({ width: Math.max(2, 2 * scale), color: ironMedium });
|
|
133428
|
+
const flagWidth = archWidth * 0.5;
|
|
133429
|
+
const flagHeight = Math.max(18, 24 * scale);
|
|
133430
|
+
const flagTop = -postHeight + 8 * scale;
|
|
133431
|
+
graphics.rect(-flagWidth / 2, flagTop, flagWidth, flagHeight);
|
|
133432
|
+
graphics.fill(2250154);
|
|
133433
|
+
graphics.rect(-flagWidth / 2, flagTop, flagWidth, Math.max(1, scale));
|
|
133434
|
+
graphics.fill(3368635);
|
|
133435
|
+
graphics.rect(
|
|
133436
|
+
-flagWidth / 2,
|
|
133437
|
+
flagTop + flagHeight - Math.max(1, scale),
|
|
133438
|
+
flagWidth,
|
|
133439
|
+
Math.max(1, scale)
|
|
133440
|
+
);
|
|
133441
|
+
graphics.fill(1131690);
|
|
133442
|
+
graphics.rect(-flagWidth / 2, flagTop, Math.max(1, scale), flagHeight);
|
|
133443
|
+
graphics.fill(3368635);
|
|
133444
|
+
graphics.rect(
|
|
133445
|
+
flagWidth / 2 - Math.max(1, scale),
|
|
133446
|
+
flagTop,
|
|
133447
|
+
Math.max(1, scale),
|
|
133448
|
+
flagHeight
|
|
133449
|
+
);
|
|
133450
|
+
graphics.fill(1131690);
|
|
133451
|
+
container.addChild(graphics);
|
|
133452
|
+
const gplFontSize = Math.max(10, 14 * scale);
|
|
133453
|
+
const gplText = new Text({
|
|
133454
|
+
text: "GPL",
|
|
133455
|
+
style: {
|
|
133456
|
+
fontSize: gplFontSize,
|
|
133457
|
+
fill: 16777215,
|
|
133458
|
+
fontFamily: "Arial",
|
|
133459
|
+
fontWeight: "bold"
|
|
133460
|
+
},
|
|
133461
|
+
resolution: 2
|
|
133462
|
+
});
|
|
133463
|
+
gplText.anchor.set(0.5, 0.5);
|
|
133464
|
+
gplText.y = flagTop + flagHeight * 0.5;
|
|
133465
|
+
container.addChild(gplText);
|
|
133466
|
+
const signBoard = new Graphics();
|
|
133467
|
+
const fontSize = Math.max(8, 9 * scale);
|
|
133468
|
+
const estimatedTextWidth = name2.length * fontSize * 0.6;
|
|
133469
|
+
const signBoardWidth = Math.min(
|
|
133470
|
+
estimatedTextWidth + 16 * scale,
|
|
133471
|
+
archWidth - 8 * scale
|
|
133472
|
+
);
|
|
133473
|
+
const signBoardHeight = Math.max(8, 10 * scale);
|
|
133474
|
+
const signBoardY = -postHeight - crossbarHeight - signBoardHeight - 2 * scale;
|
|
133475
|
+
signBoard.rect(
|
|
133476
|
+
-signBoardWidth / 2,
|
|
133477
|
+
signBoardY,
|
|
133478
|
+
signBoardWidth,
|
|
133479
|
+
signBoardHeight
|
|
133480
|
+
);
|
|
133481
|
+
signBoard.fill(ironLight);
|
|
133482
|
+
signBoard.rect(
|
|
133483
|
+
-signBoardWidth / 2,
|
|
133484
|
+
signBoardY,
|
|
133485
|
+
signBoardWidth,
|
|
133486
|
+
Math.max(1, scale)
|
|
133487
|
+
);
|
|
133488
|
+
signBoard.fill(ironHighlight);
|
|
133489
|
+
signBoard.rect(
|
|
133490
|
+
-signBoardWidth / 2,
|
|
133491
|
+
signBoardY + signBoardHeight - Math.max(1, scale),
|
|
133492
|
+
signBoardWidth,
|
|
133493
|
+
Math.max(1, scale)
|
|
133494
|
+
);
|
|
133495
|
+
signBoard.fill(ironDark);
|
|
133496
|
+
container.addChild(signBoard);
|
|
133497
|
+
const nameText = new Text({
|
|
133498
|
+
text: name2,
|
|
133499
|
+
style: {
|
|
133500
|
+
fontSize,
|
|
133501
|
+
fill: 16777215,
|
|
133502
|
+
fontFamily: "Arial",
|
|
133503
|
+
fontWeight: "600"
|
|
133504
|
+
},
|
|
133505
|
+
resolution: 2
|
|
133506
|
+
});
|
|
133507
|
+
nameText.anchor.set(0.5, 0.5);
|
|
133508
|
+
nameText.y = signBoardY + signBoardHeight / 2;
|
|
133509
|
+
container.addChild(nameText);
|
|
133510
|
+
return container;
|
|
133511
|
+
}
|
|
133512
|
+
function generatePicketFenceGround(sizeMultiplier) {
|
|
133513
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
133514
|
+
const ground = new Graphics();
|
|
133515
|
+
const halfW = footprint.width;
|
|
133516
|
+
const halfH = footprint.height;
|
|
133517
|
+
ground.moveTo(0, -halfH);
|
|
133518
|
+
ground.lineTo(halfW, 0);
|
|
133519
|
+
ground.lineTo(0, halfH);
|
|
133520
|
+
ground.lineTo(-halfW, 0);
|
|
133521
|
+
ground.closePath();
|
|
133522
|
+
ground.fill(COLORS.grassMedium);
|
|
133523
|
+
const textureCount = Math.max(6, Math.floor(8 * sizeMultiplier));
|
|
133524
|
+
for (let i2 = 0; i2 < textureCount; i2++) {
|
|
133525
|
+
const angle = i2 / textureCount * Math.PI * 2;
|
|
133526
|
+
const radius = 0.3 + i2 % 3 * 0.1;
|
|
133527
|
+
const x2 = Math.cos(angle) * halfW * radius;
|
|
133528
|
+
const y2 = Math.sin(angle) * halfH * radius;
|
|
133529
|
+
const dotSize = Math.max(1.5, 2 * sizeMultiplier);
|
|
133530
|
+
ground.circle(x2, y2, dotSize);
|
|
133531
|
+
ground.fill(i2 % 2 === 0 ? COLORS.grassLight : COLORS.grassDark);
|
|
133532
|
+
}
|
|
133533
|
+
const fenceWhite = 16119285;
|
|
133534
|
+
const fenceHighlight = 16777215;
|
|
133535
|
+
const picketWidth = Math.max(2, 3 * sizeMultiplier);
|
|
133536
|
+
const picketHeight = Math.max(8, 12 * sizeMultiplier);
|
|
133537
|
+
const picketSpacing = Math.max(4, 6 * sizeMultiplier);
|
|
133538
|
+
const edgeLength = Math.sqrt(halfW * halfW + halfH * halfH);
|
|
133539
|
+
const picketCount = Math.floor(edgeLength / picketSpacing);
|
|
133540
|
+
const slopeRatio = 0.5;
|
|
133541
|
+
const drawPicket = (px, py, edgeDir) => {
|
|
133542
|
+
const halfW2 = picketWidth / 2;
|
|
133543
|
+
const dx = halfW2 * edgeDir;
|
|
133544
|
+
const dy = halfW2 * slopeRatio;
|
|
133545
|
+
const bottomLeftX = px - dx;
|
|
133546
|
+
const bottomLeftY = py - dy;
|
|
133547
|
+
const bottomRightX = px + dx;
|
|
133548
|
+
const bottomRightY = py + dy;
|
|
133549
|
+
const topLeftX = bottomLeftX;
|
|
133550
|
+
const topLeftY = bottomLeftY - picketHeight;
|
|
133551
|
+
const topRightX = bottomRightX;
|
|
133552
|
+
const topRightY = bottomRightY - picketHeight;
|
|
133553
|
+
ground.beginPath();
|
|
133554
|
+
ground.moveTo(bottomLeftX, bottomLeftY);
|
|
133555
|
+
ground.lineTo(bottomRightX, bottomRightY);
|
|
133556
|
+
ground.lineTo(topRightX, topRightY);
|
|
133557
|
+
ground.lineTo(topLeftX, topLeftY);
|
|
133558
|
+
ground.closePath();
|
|
133559
|
+
ground.fill(fenceWhite);
|
|
133560
|
+
const highlightWidth = Math.max(1, sizeMultiplier * 0.5);
|
|
133561
|
+
ground.beginPath();
|
|
133562
|
+
if (edgeDir > 0) {
|
|
133563
|
+
ground.moveTo(bottomLeftX, bottomLeftY);
|
|
133564
|
+
ground.lineTo(
|
|
133565
|
+
bottomLeftX + highlightWidth * 0.5,
|
|
133566
|
+
bottomLeftY + highlightWidth * 0.25
|
|
133567
|
+
);
|
|
133568
|
+
ground.lineTo(
|
|
133569
|
+
topLeftX + highlightWidth * 0.5,
|
|
133570
|
+
topLeftY + highlightWidth * 0.25
|
|
133571
|
+
);
|
|
133572
|
+
ground.lineTo(topLeftX, topLeftY);
|
|
133573
|
+
} else {
|
|
133574
|
+
ground.moveTo(bottomRightX, bottomRightY);
|
|
133575
|
+
ground.lineTo(
|
|
133576
|
+
bottomRightX - highlightWidth * 0.5,
|
|
133577
|
+
bottomRightY + highlightWidth * 0.25
|
|
133578
|
+
);
|
|
133579
|
+
ground.lineTo(
|
|
133580
|
+
topRightX - highlightWidth * 0.5,
|
|
133581
|
+
topRightY + highlightWidth * 0.25
|
|
133582
|
+
);
|
|
133583
|
+
ground.lineTo(topRightX, topRightY);
|
|
133584
|
+
}
|
|
133585
|
+
ground.closePath();
|
|
133586
|
+
ground.fill(fenceHighlight);
|
|
133587
|
+
ground.beginPath();
|
|
133588
|
+
ground.moveTo(topLeftX, topLeftY);
|
|
133589
|
+
ground.lineTo(px, py - dy * 0 - picketHeight - picketWidth);
|
|
133590
|
+
ground.lineTo(topRightX, topRightY);
|
|
133591
|
+
ground.closePath();
|
|
133592
|
+
ground.fill(fenceWhite);
|
|
133593
|
+
};
|
|
133594
|
+
for (let i2 = 1; i2 < picketCount; i2++) {
|
|
133595
|
+
const t2 = i2 / picketCount;
|
|
133596
|
+
const px = -halfW * t2;
|
|
133597
|
+
const py = -halfH * (1 - t2);
|
|
133598
|
+
drawPicket(px, py, -1);
|
|
133599
|
+
}
|
|
133600
|
+
for (let i2 = 1; i2 < picketCount; i2++) {
|
|
133601
|
+
const t2 = i2 / picketCount;
|
|
133602
|
+
const px = halfW * t2;
|
|
133603
|
+
const py = -halfH * (1 - t2);
|
|
133604
|
+
drawPicket(px, py, 1);
|
|
133605
|
+
}
|
|
133606
|
+
for (let i2 = 1; i2 < picketCount * 0.75; i2++) {
|
|
133607
|
+
const t2 = i2 / picketCount;
|
|
133608
|
+
const px = -halfW * (1 - t2);
|
|
133609
|
+
const py = halfH * t2;
|
|
133610
|
+
drawPicket(px, py, 1);
|
|
133611
|
+
}
|
|
133612
|
+
for (let i2 = 1; i2 < picketCount * 0.75; i2++) {
|
|
133613
|
+
const t2 = i2 / picketCount;
|
|
133614
|
+
const px = halfW * (1 - t2);
|
|
133615
|
+
const py = halfH * t2;
|
|
133616
|
+
drawPicket(px, py, -1);
|
|
133617
|
+
}
|
|
133618
|
+
const cornerPostWidth = picketWidth * 1.5;
|
|
133619
|
+
const cornerPostHeight = picketHeight * 1.2;
|
|
133620
|
+
ground.rect(
|
|
133621
|
+
-cornerPostWidth / 2,
|
|
133622
|
+
-halfH - cornerPostHeight,
|
|
133623
|
+
cornerPostWidth,
|
|
133624
|
+
cornerPostHeight
|
|
133625
|
+
);
|
|
133626
|
+
ground.fill(fenceWhite);
|
|
133627
|
+
ground.rect(
|
|
133628
|
+
-halfW - cornerPostWidth / 2,
|
|
133629
|
+
-cornerPostHeight,
|
|
133630
|
+
cornerPostWidth,
|
|
133631
|
+
cornerPostHeight
|
|
133632
|
+
);
|
|
133633
|
+
ground.fill(fenceWhite);
|
|
133634
|
+
ground.rect(
|
|
133635
|
+
halfW - cornerPostWidth / 2,
|
|
133636
|
+
-cornerPostHeight,
|
|
133637
|
+
cornerPostWidth,
|
|
133638
|
+
cornerPostHeight
|
|
133639
|
+
);
|
|
133640
|
+
ground.fill(fenceWhite);
|
|
133641
|
+
const gatePostT = 0.75;
|
|
133642
|
+
const gatePostLeftX = -halfW * (1 - gatePostT);
|
|
133643
|
+
const gatePostLeftY = halfH * gatePostT;
|
|
133644
|
+
const gatePostRightX = halfW * (1 - gatePostT);
|
|
133645
|
+
const gatePostRightY = halfH * gatePostT;
|
|
133646
|
+
ground.rect(
|
|
133647
|
+
gatePostLeftX - cornerPostWidth / 2,
|
|
133648
|
+
gatePostLeftY - cornerPostHeight,
|
|
133649
|
+
cornerPostWidth,
|
|
133650
|
+
cornerPostHeight
|
|
133651
|
+
);
|
|
133652
|
+
ground.fill(fenceWhite);
|
|
133653
|
+
ground.rect(
|
|
133654
|
+
gatePostRightX - cornerPostWidth / 2,
|
|
133655
|
+
gatePostRightY - cornerPostHeight,
|
|
133656
|
+
cornerPostWidth,
|
|
133657
|
+
cornerPostHeight
|
|
133658
|
+
);
|
|
133659
|
+
ground.fill(fenceWhite);
|
|
133660
|
+
return ground;
|
|
133661
|
+
}
|
|
133662
|
+
function generateCobblestoneGround(sizeMultiplier) {
|
|
133663
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
133664
|
+
const ground = new Graphics();
|
|
133665
|
+
const halfW = footprint.width;
|
|
133666
|
+
const halfH = footprint.height;
|
|
133667
|
+
ground.moveTo(0, -halfH);
|
|
133668
|
+
ground.lineTo(halfW, 0);
|
|
133669
|
+
ground.lineTo(0, halfH);
|
|
133670
|
+
ground.lineTo(-halfW, 0);
|
|
133671
|
+
ground.closePath();
|
|
133672
|
+
ground.fill(COLORS.grassMedium);
|
|
133673
|
+
const textureCount = Math.max(6, Math.floor(8 * sizeMultiplier));
|
|
133674
|
+
for (let i2 = 0; i2 < textureCount; i2++) {
|
|
133675
|
+
const angle = i2 / textureCount * Math.PI * 2;
|
|
133676
|
+
const radius = 0.4 + i2 % 3 * 0.15;
|
|
133677
|
+
const x2 = Math.cos(angle) * halfW * radius;
|
|
133678
|
+
const y2 = Math.sin(angle) * halfH * radius;
|
|
133679
|
+
if (Math.abs(x2) > halfW * 0.15 || Math.abs(y2) < halfH * 0.3) {
|
|
133680
|
+
const dotSize = Math.max(1.5, 2 * sizeMultiplier);
|
|
133681
|
+
ground.circle(x2, y2, dotSize);
|
|
133682
|
+
ground.fill(i2 % 2 === 0 ? COLORS.grassLight : COLORS.grassDark);
|
|
133683
|
+
}
|
|
133684
|
+
}
|
|
133685
|
+
const stoneSize = Math.max(3, 5 * sizeMultiplier);
|
|
133686
|
+
const stoneColors = [8421504, 9474192, 7368816, 8947848];
|
|
133687
|
+
const pathSteps = Math.max(4, Math.floor(6 * sizeMultiplier));
|
|
133688
|
+
for (let i2 = 0; i2 < pathSteps; i2++) {
|
|
133689
|
+
const progress = i2 / (pathSteps - 1);
|
|
133690
|
+
const y2 = -halfH * 0.5 + progress * halfH * 1.2;
|
|
133691
|
+
for (let j2 = -1; j2 <= 1; j2 += 2) {
|
|
133692
|
+
const offsetX = j2 * stoneSize * 0.6;
|
|
133693
|
+
const offsetY = i2 % 2 * stoneSize * 0.3;
|
|
133694
|
+
const color2 = stoneColors[(i2 + j2 + 10) % stoneColors.length];
|
|
133695
|
+
ground.roundRect(
|
|
133696
|
+
offsetX - stoneSize / 2,
|
|
133697
|
+
y2 + offsetY - stoneSize / 2,
|
|
133698
|
+
stoneSize,
|
|
133699
|
+
stoneSize * 0.7,
|
|
133700
|
+
stoneSize * 0.2
|
|
133701
|
+
);
|
|
133702
|
+
ground.fill(color2);
|
|
133703
|
+
}
|
|
133704
|
+
if (i2 < pathSteps - 1) {
|
|
133705
|
+
const centerY = y2 + stoneSize * 0.5;
|
|
133706
|
+
const color2 = stoneColors[(i2 + 2) % stoneColors.length];
|
|
133707
|
+
ground.roundRect(
|
|
133708
|
+
-stoneSize / 2,
|
|
133709
|
+
centerY - stoneSize / 2,
|
|
133710
|
+
stoneSize,
|
|
133711
|
+
stoneSize * 0.7,
|
|
133712
|
+
stoneSize * 0.2
|
|
133713
|
+
);
|
|
133714
|
+
ground.fill(color2);
|
|
133715
|
+
}
|
|
133716
|
+
}
|
|
133717
|
+
return ground;
|
|
133718
|
+
}
|
|
133719
|
+
function generateLicenseSign(license, config) {
|
|
133720
|
+
switch (license) {
|
|
133721
|
+
case "MIT":
|
|
133722
|
+
case "BSD":
|
|
133723
|
+
case "ISC":
|
|
133724
|
+
case "Unlicense":
|
|
133725
|
+
return generateMITFlowerArch(config);
|
|
133726
|
+
case "Apache-2.0":
|
|
133727
|
+
return generateApacheSign(config);
|
|
133728
|
+
case "GPL-3.0":
|
|
133729
|
+
case "LGPL-3.0":
|
|
133730
|
+
return generateGPLSign(config);
|
|
133731
|
+
default:
|
|
133732
|
+
return generateMITFlowerArch(config);
|
|
133733
|
+
}
|
|
133734
|
+
}
|
|
133735
|
+
function generateLicenseGround(license, sizeMultiplier) {
|
|
133736
|
+
switch (license) {
|
|
133737
|
+
case "MIT":
|
|
133738
|
+
case "BSD":
|
|
133739
|
+
case "ISC":
|
|
133740
|
+
case "Unlicense":
|
|
133741
|
+
return generateOpenGrassGround(sizeMultiplier);
|
|
133742
|
+
case "Apache-2.0":
|
|
133743
|
+
return generateCobblestoneGround(sizeMultiplier);
|
|
133744
|
+
case "GPL-3.0":
|
|
133745
|
+
case "LGPL-3.0":
|
|
133746
|
+
return generatePicketFenceGround(sizeMultiplier);
|
|
133747
|
+
default:
|
|
133748
|
+
return generateOpenGrassGround(sizeMultiplier);
|
|
133749
|
+
}
|
|
133750
|
+
}
|
|
132923
133751
|
const ISO_TILE_WIDTH = 64;
|
|
132924
133752
|
const ISO_TILE_HEIGHT = 32;
|
|
132925
133753
|
class IsometricRenderer {
|
|
@@ -132958,9 +133786,11 @@ class IsometricRenderer {
|
|
|
132958
133786
|
renderScene(mapData, showGrid = true) {
|
|
132959
133787
|
const background = new Container();
|
|
132960
133788
|
const tiles = new Container();
|
|
133789
|
+
const licenseGrounds = new Container();
|
|
132961
133790
|
const bridges = new Container();
|
|
132962
133791
|
const paths = new Container();
|
|
132963
133792
|
const nodes = new Container();
|
|
133793
|
+
licenseGrounds.sortableChildren = true;
|
|
132964
133794
|
if (showGrid) {
|
|
132965
133795
|
const grid = this.renderGrid(
|
|
132966
133796
|
mapData.width,
|
|
@@ -132981,11 +133811,17 @@ class IsometricRenderer {
|
|
|
132981
133811
|
}
|
|
132982
133812
|
const spriteInstances = this.renderSprites(mapData.nodes);
|
|
132983
133813
|
for (const instance of spriteInstances.values()) {
|
|
133814
|
+
if (instance.licenseGround) {
|
|
133815
|
+
licenseGrounds.addChild(instance.licenseGround);
|
|
133816
|
+
}
|
|
132984
133817
|
nodes.addChild(instance.highlight);
|
|
132985
133818
|
nodes.addChild(instance.sprite);
|
|
132986
133819
|
if (instance.weathering) {
|
|
132987
133820
|
nodes.addChild(instance.weathering);
|
|
132988
133821
|
}
|
|
133822
|
+
if (instance.licenseSign) {
|
|
133823
|
+
nodes.addChild(instance.licenseSign);
|
|
133824
|
+
}
|
|
132989
133825
|
nodes.addChild(instance.label);
|
|
132990
133826
|
if (instance.hoverLabel) {
|
|
132991
133827
|
nodes.addChild(instance.hoverLabel);
|
|
@@ -132994,6 +133830,7 @@ class IsometricRenderer {
|
|
|
132994
133830
|
return {
|
|
132995
133831
|
background,
|
|
132996
133832
|
tiles,
|
|
133833
|
+
licenseGrounds,
|
|
132997
133834
|
bridges,
|
|
132998
133835
|
paths,
|
|
132999
133836
|
nodes,
|
|
@@ -133386,6 +134223,24 @@ class IsometricRenderer {
|
|
|
133386
134223
|
);
|
|
133387
134224
|
weathering.zIndex = container.zIndex + 0.1;
|
|
133388
134225
|
}
|
|
134226
|
+
let licenseGround;
|
|
134227
|
+
let licenseSign;
|
|
134228
|
+
if (node2.license) {
|
|
134229
|
+
const licenseType = node2.license;
|
|
134230
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
134231
|
+
licenseGround = generateLicenseGround(licenseType, sizeMultiplier);
|
|
134232
|
+
licenseGround.x = screenX;
|
|
134233
|
+
licenseGround.y = screenY;
|
|
134234
|
+
licenseGround.zIndex = screenY;
|
|
134235
|
+
licenseSign = generateLicenseSign(licenseType, {
|
|
134236
|
+
name: node2.label,
|
|
134237
|
+
sizeMultiplier
|
|
134238
|
+
});
|
|
134239
|
+
licenseSign.x = screenX;
|
|
134240
|
+
licenseSign.y = screenY + footprint.height * 0.75;
|
|
134241
|
+
licenseSign.zIndex = container.zIndex + 0.15;
|
|
134242
|
+
label.visible = false;
|
|
134243
|
+
}
|
|
133389
134244
|
const instance = {
|
|
133390
134245
|
sprite: container,
|
|
133391
134246
|
// Container acts as the sprite
|
|
@@ -133393,6 +134248,8 @@ class IsometricRenderer {
|
|
|
133393
134248
|
label,
|
|
133394
134249
|
hoverLabel,
|
|
133395
134250
|
weathering,
|
|
134251
|
+
licenseGround,
|
|
134252
|
+
licenseSign,
|
|
133396
134253
|
gridPosition: { gridX: node2.gridX, gridY: node2.gridY },
|
|
133397
134254
|
size: sizeMultiplier,
|
|
133398
134255
|
update: (gridX, gridY) => {
|
|
@@ -133421,6 +134278,17 @@ class IsometricRenderer {
|
|
|
133421
134278
|
weathering.x = pos.screenX;
|
|
133422
134279
|
weathering.y = pos.screenY;
|
|
133423
134280
|
}
|
|
134281
|
+
if (licenseGround) {
|
|
134282
|
+
licenseGround.x = pos.screenX;
|
|
134283
|
+
licenseGround.y = pos.screenY;
|
|
134284
|
+
licenseGround.zIndex = pos.screenY;
|
|
134285
|
+
}
|
|
134286
|
+
if (licenseSign) {
|
|
134287
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
134288
|
+
licenseSign.x = pos.screenX;
|
|
134289
|
+
licenseSign.y = pos.screenY + footprint.height * 0.75;
|
|
134290
|
+
licenseSign.zIndex = getIsometricZIndex(gridX, gridY) + 0.15;
|
|
134291
|
+
}
|
|
133424
134292
|
instance.gridPosition = { gridX, gridY };
|
|
133425
134293
|
},
|
|
133426
134294
|
destroy: () => {
|
|
@@ -133429,6 +134297,8 @@ class IsometricRenderer {
|
|
|
133429
134297
|
label.destroy();
|
|
133430
134298
|
hoverLabel.destroy();
|
|
133431
134299
|
weathering == null ? void 0 : weathering.destroy();
|
|
134300
|
+
licenseGround == null ? void 0 : licenseGround.destroy();
|
|
134301
|
+
licenseSign == null ? void 0 : licenseSign.destroy();
|
|
133432
134302
|
}
|
|
133433
134303
|
};
|
|
133434
134304
|
return instance;
|
|
@@ -133502,11 +134372,31 @@ class IsometricRenderer {
|
|
|
133502
134372
|
label.y = screenY + sprite.height * 0.15 + 8;
|
|
133503
134373
|
label.anchor.set(0.5, 0);
|
|
133504
134374
|
label.zIndex = sprite.zIndex + 0.2;
|
|
134375
|
+
let licenseGround;
|
|
134376
|
+
let licenseSign;
|
|
134377
|
+
if (node2.license) {
|
|
134378
|
+
const licenseType = node2.license;
|
|
134379
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
134380
|
+
licenseGround = generateLicenseGround(licenseType, sizeMultiplier);
|
|
134381
|
+
licenseGround.x = screenX;
|
|
134382
|
+
licenseGround.y = screenY;
|
|
134383
|
+
licenseGround.zIndex = screenY;
|
|
134384
|
+
licenseSign = generateLicenseSign(licenseType, {
|
|
134385
|
+
name: node2.label,
|
|
134386
|
+
sizeMultiplier
|
|
134387
|
+
});
|
|
134388
|
+
licenseSign.x = screenX;
|
|
134389
|
+
licenseSign.y = screenY + footprint.height * 0.75;
|
|
134390
|
+
licenseSign.zIndex = sprite.zIndex + 0.15;
|
|
134391
|
+
label.visible = false;
|
|
134392
|
+
}
|
|
133505
134393
|
const instance = {
|
|
133506
134394
|
sprite,
|
|
133507
134395
|
highlight,
|
|
133508
134396
|
label,
|
|
133509
134397
|
weathering,
|
|
134398
|
+
licenseGround,
|
|
134399
|
+
licenseSign,
|
|
133510
134400
|
gridPosition: { gridX: node2.gridX, gridY: node2.gridY },
|
|
133511
134401
|
size: sizeMultiplier,
|
|
133512
134402
|
update: (gridX, gridY) => {
|
|
@@ -133533,6 +134423,17 @@ class IsometricRenderer {
|
|
|
133533
134423
|
weathering.x = pos.screenX;
|
|
133534
134424
|
weathering.y = pos.screenY;
|
|
133535
134425
|
}
|
|
134426
|
+
if (licenseGround) {
|
|
134427
|
+
licenseGround.x = pos.screenX;
|
|
134428
|
+
licenseGround.y = pos.screenY;
|
|
134429
|
+
licenseGround.zIndex = pos.screenY;
|
|
134430
|
+
}
|
|
134431
|
+
if (licenseSign) {
|
|
134432
|
+
const footprint = calculateFootprint(sizeMultiplier);
|
|
134433
|
+
licenseSign.x = pos.screenX;
|
|
134434
|
+
licenseSign.y = pos.screenY + footprint.height * 0.75;
|
|
134435
|
+
licenseSign.zIndex = getIsometricZIndex(gridX, gridY) + 0.15;
|
|
134436
|
+
}
|
|
133536
134437
|
instance.gridPosition = { gridX, gridY };
|
|
133537
134438
|
},
|
|
133538
134439
|
destroy: () => {
|
|
@@ -133540,6 +134441,8 @@ class IsometricRenderer {
|
|
|
133540
134441
|
highlight.destroy();
|
|
133541
134442
|
label.destroy();
|
|
133542
134443
|
weathering == null ? void 0 : weathering.destroy();
|
|
134444
|
+
licenseGround == null ? void 0 : licenseGround.destroy();
|
|
134445
|
+
licenseSign == null ? void 0 : licenseSign.destroy();
|
|
133543
134446
|
}
|
|
133544
134447
|
};
|
|
133545
134448
|
spriteInstances.set(node2.id, instance);
|
|
@@ -134732,7 +135635,8 @@ function nodesToUnifiedOverworldMap(nodes, options = {}) {
|
|
|
134732
135635
|
aging: node2.aging,
|
|
134733
135636
|
subdivisions,
|
|
134734
135637
|
stars: node2.stars,
|
|
134735
|
-
collaborators: node2.collaborators
|
|
135638
|
+
collaborators: node2.collaborators,
|
|
135639
|
+
license: node2.license
|
|
134736
135640
|
};
|
|
134737
135641
|
});
|
|
134738
135642
|
const paths = [];
|
|
@@ -134906,6 +135810,7 @@ const OverworldMapPanelContent = ({
|
|
|
134906
135810
|
if (sceneContainersRef.current) {
|
|
134907
135811
|
viewport.removeChild(sceneContainersRef.current.background);
|
|
134908
135812
|
viewport.removeChild(sceneContainersRef.current.tiles);
|
|
135813
|
+
viewport.removeChild(sceneContainersRef.current.licenseGrounds);
|
|
134909
135814
|
viewport.removeChild(sceneContainersRef.current.bridges);
|
|
134910
135815
|
viewport.removeChild(sceneContainersRef.current.paths);
|
|
134911
135816
|
viewport.removeChild(sceneContainersRef.current.nodes);
|
|
@@ -134913,6 +135818,7 @@ const OverworldMapPanelContent = ({
|
|
|
134913
135818
|
const scene = renderer.renderScene(mapData, true);
|
|
134914
135819
|
viewport.addChild(scene.background);
|
|
134915
135820
|
viewport.addChild(scene.tiles);
|
|
135821
|
+
viewport.addChild(scene.licenseGrounds);
|
|
134916
135822
|
viewport.addChild(scene.bridges);
|
|
134917
135823
|
viewport.addChild(scene.paths);
|
|
134918
135824
|
viewport.addChild(scene.nodes);
|
|
@@ -135004,6 +135910,7 @@ const OverworldMapPanelContent = ({
|
|
|
135004
135910
|
const scene = renderer.renderScene(mapData, true);
|
|
135005
135911
|
viewport.addChild(scene.background);
|
|
135006
135912
|
viewport.addChild(scene.tiles);
|
|
135913
|
+
viewport.addChild(scene.licenseGrounds);
|
|
135007
135914
|
viewport.addChild(scene.bridges);
|
|
135008
135915
|
viewport.addChild(scene.paths);
|
|
135009
135916
|
viewport.addChild(scene.nodes);
|
|
@@ -135400,11 +136307,13 @@ const OverworldMapPanelContent = ({
|
|
|
135400
136307
|
if (sceneContainersRef.current) {
|
|
135401
136308
|
viewport.removeChild(sceneContainersRef.current.background);
|
|
135402
136309
|
viewport.removeChild(sceneContainersRef.current.tiles);
|
|
136310
|
+
viewport.removeChild(sceneContainersRef.current.licenseGrounds);
|
|
135403
136311
|
viewport.removeChild(sceneContainersRef.current.bridges);
|
|
135404
136312
|
viewport.removeChild(sceneContainersRef.current.paths);
|
|
135405
136313
|
viewport.removeChild(sceneContainersRef.current.nodes);
|
|
135406
136314
|
sceneContainersRef.current.background.destroy({ children: true });
|
|
135407
136315
|
sceneContainersRef.current.tiles.destroy({ children: true });
|
|
136316
|
+
sceneContainersRef.current.licenseGrounds.destroy({ children: true });
|
|
135408
136317
|
sceneContainersRef.current.bridges.destroy({ children: true });
|
|
135409
136318
|
sceneContainersRef.current.paths.destroy({ children: true });
|
|
135410
136319
|
sceneContainersRef.current.nodes.destroy({ children: true });
|
|
@@ -135412,6 +136321,7 @@ const OverworldMapPanelContent = ({
|
|
|
135412
136321
|
const scene = renderer.renderScene(mapData, true);
|
|
135413
136322
|
viewport.addChild(scene.background);
|
|
135414
136323
|
viewport.addChild(scene.tiles);
|
|
136324
|
+
viewport.addChild(scene.licenseGrounds);
|
|
135415
136325
|
viewport.addChild(scene.bridges);
|
|
135416
136326
|
viewport.addChild(scene.paths);
|
|
135417
136327
|
viewport.addChild(scene.nodes);
|
|
@@ -136010,7 +136920,7 @@ This indicates a sprite was rendered without valid backing data.`
|
|
|
136010
136920
|
});
|
|
136011
136921
|
const nodes = useMemo(() => {
|
|
136012
136922
|
const memberNodes = collection.members.map((membership) => {
|
|
136013
|
-
var _a2, _b, _c, _d, _e2, _f, _g;
|
|
136923
|
+
var _a2, _b, _c, _d, _e2, _f, _g, _h;
|
|
136014
136924
|
const repo = repositories.find((r2) => {
|
|
136015
136925
|
var _a3;
|
|
136016
136926
|
const repoId = ((_a3 = r2.github) == null ? void 0 : _a3.id) || r2.name;
|
|
@@ -136047,6 +136957,7 @@ This indicates a sprite was rendered without valid backing data.`
|
|
|
136047
136957
|
const decorationBonus = getCollaboratorDecorationSizeBonus(collaborators);
|
|
136048
136958
|
size = size + decorationBonus;
|
|
136049
136959
|
}
|
|
136960
|
+
const license = (_e2 = repo.github) == null ? void 0 : _e2.license;
|
|
136050
136961
|
const node2 = {
|
|
136051
136962
|
id: membership.repositoryId,
|
|
136052
136963
|
name: repo.name,
|
|
@@ -136063,11 +136974,13 @@ This indicates a sprite was rendered without valid backing data.`
|
|
|
136063
136974
|
// GitHub star count for decorations
|
|
136064
136975
|
collaborators,
|
|
136065
136976
|
// Contributor count for community space decorations
|
|
136977
|
+
license,
|
|
136978
|
+
// License identifier for sign/ground treatment
|
|
136066
136979
|
dependencies: dependencies[membership.repositoryId] || [],
|
|
136067
|
-
isRoot: ((
|
|
136068
|
-
regionId: (
|
|
136980
|
+
isRoot: ((_f = membership.metadata) == null ? void 0 : _f.pinned) || false,
|
|
136981
|
+
regionId: (_g = membership.metadata) == null ? void 0 : _g.regionId,
|
|
136069
136982
|
// Preserve region assignment
|
|
136070
|
-
layout: (
|
|
136983
|
+
layout: (_h = membership.metadata) == null ? void 0 : _h.layout
|
|
136071
136984
|
// Pass saved position data
|
|
136072
136985
|
};
|
|
136073
136986
|
return node2;
|
|
@@ -137555,4 +138468,4 @@ export {
|
|
|
137555
138468
|
UPDATE_PRIORITY as y,
|
|
137556
138469
|
removeItems as z
|
|
137557
138470
|
};
|
|
137558
|
-
//# sourceMappingURL=index-
|
|
138471
|
+
//# sourceMappingURL=index-DKt_e7J1.js.map
|