@almadar/ui 5.21.11 → 5.22.2
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/avl/index.cjs +939 -638
- package/dist/avl/index.js +939 -638
- package/dist/components/core/molecules/CalendarGrid.d.ts +3 -10
- package/dist/components/core/molecules/ContentRenderer.d.ts +2 -2
- package/dist/components/core/molecules/DataGrid.d.ts +11 -20
- package/dist/components/core/molecules/DataList.d.ts +9 -15
- package/dist/components/core/molecules/FormSection.d.ts +4 -4
- package/dist/components/core/molecules/PositionedCanvas.d.ts +4 -17
- package/dist/components/core/molecules/ReplyTree.d.ts +2 -13
- package/dist/components/core/molecules/RichBlockEditor.d.ts +3 -6
- package/dist/components/core/molecules/SortableList.d.ts +7 -5
- package/dist/components/core/molecules/TableView.d.ts +7 -7
- package/dist/components/core/molecules/index.d.ts +3 -3
- package/dist/components/core/molecules/useDataDnd.d.ts +5 -5
- package/dist/components/core/organisms/CardGrid.d.ts +5 -2
- package/dist/components/core/organisms/CaseStudyOrganism.d.ts +4 -3
- package/dist/components/core/organisms/DataTable.d.ts +4 -2
- package/dist/components/core/organisms/DetailPanel.d.ts +6 -6
- package/dist/components/core/organisms/FeatureGridOrganism.d.ts +4 -3
- package/dist/components/core/organisms/HeroOrganism.d.ts +4 -5
- package/dist/components/core/organisms/List.d.ts +5 -2
- package/dist/components/core/organisms/MasterDetail.d.ts +4 -2
- package/dist/components/core/organisms/MediaGallery.d.ts +4 -2
- package/dist/components/core/organisms/ShowcaseOrganism.d.ts +4 -3
- package/dist/components/core/organisms/StatCard.d.ts +5 -2
- package/dist/components/core/organisms/StepFlowOrganism.d.ts +4 -3
- package/dist/components/core/organisms/Timeline.d.ts +2 -2
- package/dist/components/core/organisms/book/index.d.ts +1 -1
- package/dist/components/core/organisms/book/types.d.ts +28 -48
- package/dist/components/core/organisms/index.d.ts +1 -2
- package/dist/components/core/organisms/layout/DashboardGrid.d.ts +2 -2
- package/dist/components/core/organisms/marketing-types.d.ts +5 -94
- package/dist/components/core/organisms/types.d.ts +9 -27
- package/dist/components/core/templates/index.d.ts +6 -6
- package/dist/components/game/organisms/BattleBoard.d.ts +14 -90
- package/dist/components/game/organisms/CastleBoard.d.ts +7 -21
- package/dist/components/game/organisms/UncontrolledBattleBoard.d.ts +2 -7
- package/dist/components/game/organisms/WorldMapBoard.d.ts +13 -59
- package/dist/components/game/organisms/boardEntity.d.ts +44 -0
- package/dist/components/game/organisms/hooks/useBattleState.d.ts +7 -7
- package/dist/components/game/organisms/index.d.ts +3 -3
- package/dist/components/game/organisms/puzzles/builder/BuilderBoard.d.ts +7 -20
- package/dist/components/game/organisms/puzzles/builder/index.d.ts +1 -1
- package/dist/components/game/organisms/puzzles/classifier/ClassifierBoard.d.ts +7 -20
- package/dist/components/game/organisms/puzzles/classifier/index.d.ts +1 -1
- package/dist/components/game/organisms/puzzles/debugger/DebuggerBoard.d.ts +6 -22
- package/dist/components/game/organisms/puzzles/debugger/index.d.ts +1 -1
- package/dist/components/game/organisms/puzzles/event-handler/EventHandlerBoard.d.ts +6 -33
- package/dist/components/game/organisms/puzzles/event-handler/ObjectRulePanel.d.ts +3 -21
- package/dist/components/game/organisms/puzzles/event-handler/index.d.ts +2 -2
- package/dist/components/game/organisms/puzzles/event-handler/puzzleObject.d.ts +21 -0
- package/dist/components/game/organisms/puzzles/negotiator/NegotiatorBoard.d.ts +8 -24
- package/dist/components/game/organisms/puzzles/negotiator/index.d.ts +1 -1
- package/dist/components/game/organisms/puzzles/sequencer/ActionTile.d.ts +2 -2
- package/dist/components/game/organisms/puzzles/sequencer/SequencerBoard.d.ts +7 -36
- package/dist/components/game/organisms/puzzles/sequencer/index.d.ts +1 -1
- package/dist/components/game/organisms/puzzles/simulator/SimulatorBoard.d.ts +6 -25
- package/dist/components/game/organisms/puzzles/simulator/index.d.ts +1 -1
- package/dist/components/game/organisms/puzzles/state-architect/StateArchitectBoard.d.ts +7 -40
- package/dist/components/game/organisms/puzzles/state-architect/VariablePanel.d.ts +3 -9
- package/dist/components/game/organisms/puzzles/state-architect/index.d.ts +2 -2
- package/dist/components/game/organisms/three/index.cjs +35 -21
- package/dist/components/game/organisms/three/index.js +35 -21
- package/dist/components/game/templates/BattleTemplate.d.ts +2 -3
- package/dist/components/game/templates/CastleTemplate.d.ts +2 -3
- package/dist/components/game/templates/GameCanvas3DBattleTemplate.d.ts +1 -16
- package/dist/components/game/templates/GameCanvas3DCastleTemplate.d.ts +1 -18
- package/dist/components/game/templates/GameCanvas3DWorldMapTemplate.d.ts +1 -14
- package/dist/components/game/templates/GameTemplate.d.ts +1 -6
- package/dist/components/game/templates/WorldMapTemplate.d.ts +2 -3
- package/dist/components/index.cjs +2036 -1675
- package/dist/components/index.js +1148 -787
- package/dist/components/marketing/organisms/PricingOrganism.d.ts +4 -3
- package/dist/components/marketing/organisms/StatsOrganism.d.ts +4 -3
- package/dist/components/marketing/organisms/TeamOrganism.d.ts +4 -3
- package/dist/components/marketing/organisms/book/BookChapterView.d.ts +5 -2
- package/dist/components/marketing/organisms/book/BookTableOfContents.d.ts +3 -2
- package/dist/components/marketing/organisms/book/BookViewer.d.ts +4 -4
- package/dist/components/marketing/templates/AboutPageTemplate.d.ts +32 -6
- package/dist/components/marketing/templates/FeatureDetailPageTemplate.d.ts +14 -4
- package/dist/components/marketing/templates/LandingPageTemplate.d.ts +47 -9
- package/dist/components/marketing/templates/PricingPageTemplate.d.ts +23 -5
- package/dist/providers/index.cjs +932 -631
- package/dist/providers/index.js +932 -631
- package/dist/runtime/index.cjs +934 -633
- package/dist/runtime/index.js +934 -633
- package/package.json +2 -2
|
@@ -3165,13 +3165,18 @@ function GameCanvas3DBattleTemplate({
|
|
|
3165
3165
|
}) {
|
|
3166
3166
|
const resolved = entity && typeof entity === "object" && !Array.isArray(entity) ? entity : void 0;
|
|
3167
3167
|
if (!resolved) return null;
|
|
3168
|
+
const tiles = Array.isArray(resolved.tiles) ? resolved.tiles : [];
|
|
3169
|
+
const units = Array.isArray(resolved.units) ? resolved.units : [];
|
|
3170
|
+
const features = Array.isArray(resolved.features) ? resolved.features : [];
|
|
3171
|
+
const currentTurn = resolved.currentTurn;
|
|
3172
|
+
const round = resolved.round == null ? void 0 : Number(resolved.round);
|
|
3168
3173
|
return /* @__PURE__ */ jsxRuntime.jsxs(Box, { className: cn("game-canvas-3d-battle-template", className), children: [
|
|
3169
3174
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3170
3175
|
GameCanvas3D,
|
|
3171
3176
|
{
|
|
3172
|
-
tiles
|
|
3173
|
-
units
|
|
3174
|
-
features
|
|
3177
|
+
tiles,
|
|
3178
|
+
units,
|
|
3179
|
+
features,
|
|
3175
3180
|
cameraMode,
|
|
3176
3181
|
showGrid,
|
|
3177
3182
|
showCoordinates: false,
|
|
@@ -3186,17 +3191,17 @@ function GameCanvas3DBattleTemplate({
|
|
|
3186
3191
|
className: "game-canvas-3d-battle-template__canvas"
|
|
3187
3192
|
}
|
|
3188
3193
|
),
|
|
3189
|
-
|
|
3194
|
+
currentTurn && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3190
3195
|
HStack,
|
|
3191
3196
|
{
|
|
3192
3197
|
gap: "sm",
|
|
3193
3198
|
align: "center",
|
|
3194
|
-
className: cn("battle-template__turn-indicator", `battle-template__turn-indicator--${
|
|
3199
|
+
className: cn("battle-template__turn-indicator", `battle-template__turn-indicator--${currentTurn}`),
|
|
3195
3200
|
children: [
|
|
3196
|
-
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body", className: "turn-indicator__label", children:
|
|
3197
|
-
|
|
3201
|
+
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "body", className: "turn-indicator__label", children: currentTurn === "player" ? "Your Turn" : "Enemy's Turn" }),
|
|
3202
|
+
round != null && /* @__PURE__ */ jsxRuntime.jsxs(Typography, { variant: "small", className: "turn-indicator__round", children: [
|
|
3198
3203
|
"Round ",
|
|
3199
|
-
|
|
3204
|
+
round
|
|
3200
3205
|
] })
|
|
3201
3206
|
]
|
|
3202
3207
|
}
|
|
@@ -3223,21 +3228,27 @@ function GameCanvas3DCastleTemplate({
|
|
|
3223
3228
|
}) {
|
|
3224
3229
|
const resolved = entity && typeof entity === "object" && !Array.isArray(entity) ? entity : void 0;
|
|
3225
3230
|
if (!resolved) return null;
|
|
3231
|
+
const tiles = Array.isArray(resolved.tiles) ? resolved.tiles : [];
|
|
3232
|
+
const units = Array.isArray(resolved.units) ? resolved.units : [];
|
|
3233
|
+
const features = Array.isArray(resolved.features) ? resolved.features : [];
|
|
3234
|
+
const name = resolved.name == null ? void 0 : String(resolved.name);
|
|
3235
|
+
const level = resolved.level == null ? void 0 : Number(resolved.level);
|
|
3236
|
+
const owner = resolved.owner == null ? void 0 : String(resolved.owner);
|
|
3226
3237
|
return /* @__PURE__ */ jsxRuntime.jsxs(VStack, { className: cn("game-canvas-3d-castle-template", className), children: [
|
|
3227
|
-
showHeader &&
|
|
3228
|
-
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h2", className: "header__name", children:
|
|
3229
|
-
|
|
3238
|
+
showHeader && name && /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "md", align: "center", className: "castle-template__header", children: [
|
|
3239
|
+
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "h2", className: "header__name", children: name }),
|
|
3240
|
+
level != null && /* @__PURE__ */ jsxRuntime.jsxs(Typography, { variant: "small", className: "header__level", children: [
|
|
3230
3241
|
"Level ",
|
|
3231
|
-
|
|
3242
|
+
level
|
|
3232
3243
|
] }),
|
|
3233
|
-
|
|
3244
|
+
owner && /* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "small", color: "muted", className: "header__owner", children: owner })
|
|
3234
3245
|
] }),
|
|
3235
3246
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3236
3247
|
GameCanvas3D,
|
|
3237
3248
|
{
|
|
3238
|
-
tiles
|
|
3239
|
-
units
|
|
3240
|
-
features
|
|
3249
|
+
tiles,
|
|
3250
|
+
units,
|
|
3251
|
+
features,
|
|
3241
3252
|
cameraMode,
|
|
3242
3253
|
showGrid,
|
|
3243
3254
|
showCoordinates: false,
|
|
@@ -3251,10 +3262,10 @@ function GameCanvas3DCastleTemplate({
|
|
|
3251
3262
|
className: "game-canvas-3d-castle-template__canvas"
|
|
3252
3263
|
}
|
|
3253
3264
|
),
|
|
3254
|
-
|
|
3265
|
+
units.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(HStack, { gap: "sm", align: "center", className: "castle-template__garrison-info", children: [
|
|
3255
3266
|
/* @__PURE__ */ jsxRuntime.jsx(Typography, { variant: "small", className: "garrison-info__label", children: "Garrison:" }),
|
|
3256
3267
|
/* @__PURE__ */ jsxRuntime.jsxs(Typography, { variant: "small", weight: "bold", className: "garrison-info__count", children: [
|
|
3257
|
-
|
|
3268
|
+
units.length,
|
|
3258
3269
|
" units"
|
|
3259
3270
|
] })
|
|
3260
3271
|
] })
|
|
@@ -3282,12 +3293,15 @@ function GameCanvas3DWorldMapTemplate({
|
|
|
3282
3293
|
}) {
|
|
3283
3294
|
const resolved = entity && typeof entity === "object" && !Array.isArray(entity) ? entity : void 0;
|
|
3284
3295
|
if (!resolved) return null;
|
|
3296
|
+
const tiles = Array.isArray(resolved.tiles) ? resolved.tiles : [];
|
|
3297
|
+
const units = Array.isArray(resolved.units) ? resolved.units : [];
|
|
3298
|
+
const features = Array.isArray(resolved.features) ? resolved.features : [];
|
|
3285
3299
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3286
3300
|
GameCanvas3D,
|
|
3287
3301
|
{
|
|
3288
|
-
tiles
|
|
3289
|
-
units
|
|
3290
|
-
features
|
|
3302
|
+
tiles,
|
|
3303
|
+
units,
|
|
3304
|
+
features,
|
|
3291
3305
|
cameraMode,
|
|
3292
3306
|
showGrid,
|
|
3293
3307
|
showCoordinates,
|
|
@@ -3141,13 +3141,18 @@ function GameCanvas3DBattleTemplate({
|
|
|
3141
3141
|
}) {
|
|
3142
3142
|
const resolved = entity && typeof entity === "object" && !Array.isArray(entity) ? entity : void 0;
|
|
3143
3143
|
if (!resolved) return null;
|
|
3144
|
+
const tiles = Array.isArray(resolved.tiles) ? resolved.tiles : [];
|
|
3145
|
+
const units = Array.isArray(resolved.units) ? resolved.units : [];
|
|
3146
|
+
const features = Array.isArray(resolved.features) ? resolved.features : [];
|
|
3147
|
+
const currentTurn = resolved.currentTurn;
|
|
3148
|
+
const round = resolved.round == null ? void 0 : Number(resolved.round);
|
|
3144
3149
|
return /* @__PURE__ */ jsxs(Box, { className: cn("game-canvas-3d-battle-template", className), children: [
|
|
3145
3150
|
/* @__PURE__ */ jsx(
|
|
3146
3151
|
GameCanvas3D,
|
|
3147
3152
|
{
|
|
3148
|
-
tiles
|
|
3149
|
-
units
|
|
3150
|
-
features
|
|
3153
|
+
tiles,
|
|
3154
|
+
units,
|
|
3155
|
+
features,
|
|
3151
3156
|
cameraMode,
|
|
3152
3157
|
showGrid,
|
|
3153
3158
|
showCoordinates: false,
|
|
@@ -3162,17 +3167,17 @@ function GameCanvas3DBattleTemplate({
|
|
|
3162
3167
|
className: "game-canvas-3d-battle-template__canvas"
|
|
3163
3168
|
}
|
|
3164
3169
|
),
|
|
3165
|
-
|
|
3170
|
+
currentTurn && /* @__PURE__ */ jsxs(
|
|
3166
3171
|
HStack,
|
|
3167
3172
|
{
|
|
3168
3173
|
gap: "sm",
|
|
3169
3174
|
align: "center",
|
|
3170
|
-
className: cn("battle-template__turn-indicator", `battle-template__turn-indicator--${
|
|
3175
|
+
className: cn("battle-template__turn-indicator", `battle-template__turn-indicator--${currentTurn}`),
|
|
3171
3176
|
children: [
|
|
3172
|
-
/* @__PURE__ */ jsx(Typography, { variant: "body", className: "turn-indicator__label", children:
|
|
3173
|
-
|
|
3177
|
+
/* @__PURE__ */ jsx(Typography, { variant: "body", className: "turn-indicator__label", children: currentTurn === "player" ? "Your Turn" : "Enemy's Turn" }),
|
|
3178
|
+
round != null && /* @__PURE__ */ jsxs(Typography, { variant: "small", className: "turn-indicator__round", children: [
|
|
3174
3179
|
"Round ",
|
|
3175
|
-
|
|
3180
|
+
round
|
|
3176
3181
|
] })
|
|
3177
3182
|
]
|
|
3178
3183
|
}
|
|
@@ -3199,21 +3204,27 @@ function GameCanvas3DCastleTemplate({
|
|
|
3199
3204
|
}) {
|
|
3200
3205
|
const resolved = entity && typeof entity === "object" && !Array.isArray(entity) ? entity : void 0;
|
|
3201
3206
|
if (!resolved) return null;
|
|
3207
|
+
const tiles = Array.isArray(resolved.tiles) ? resolved.tiles : [];
|
|
3208
|
+
const units = Array.isArray(resolved.units) ? resolved.units : [];
|
|
3209
|
+
const features = Array.isArray(resolved.features) ? resolved.features : [];
|
|
3210
|
+
const name = resolved.name == null ? void 0 : String(resolved.name);
|
|
3211
|
+
const level = resolved.level == null ? void 0 : Number(resolved.level);
|
|
3212
|
+
const owner = resolved.owner == null ? void 0 : String(resolved.owner);
|
|
3202
3213
|
return /* @__PURE__ */ jsxs(VStack, { className: cn("game-canvas-3d-castle-template", className), children: [
|
|
3203
|
-
showHeader &&
|
|
3204
|
-
/* @__PURE__ */ jsx(Typography, { variant: "h2", className: "header__name", children:
|
|
3205
|
-
|
|
3214
|
+
showHeader && name && /* @__PURE__ */ jsxs(HStack, { gap: "md", align: "center", className: "castle-template__header", children: [
|
|
3215
|
+
/* @__PURE__ */ jsx(Typography, { variant: "h2", className: "header__name", children: name }),
|
|
3216
|
+
level != null && /* @__PURE__ */ jsxs(Typography, { variant: "small", className: "header__level", children: [
|
|
3206
3217
|
"Level ",
|
|
3207
|
-
|
|
3218
|
+
level
|
|
3208
3219
|
] }),
|
|
3209
|
-
|
|
3220
|
+
owner && /* @__PURE__ */ jsx(Typography, { variant: "small", color: "muted", className: "header__owner", children: owner })
|
|
3210
3221
|
] }),
|
|
3211
3222
|
/* @__PURE__ */ jsx(
|
|
3212
3223
|
GameCanvas3D,
|
|
3213
3224
|
{
|
|
3214
|
-
tiles
|
|
3215
|
-
units
|
|
3216
|
-
features
|
|
3225
|
+
tiles,
|
|
3226
|
+
units,
|
|
3227
|
+
features,
|
|
3217
3228
|
cameraMode,
|
|
3218
3229
|
showGrid,
|
|
3219
3230
|
showCoordinates: false,
|
|
@@ -3227,10 +3238,10 @@ function GameCanvas3DCastleTemplate({
|
|
|
3227
3238
|
className: "game-canvas-3d-castle-template__canvas"
|
|
3228
3239
|
}
|
|
3229
3240
|
),
|
|
3230
|
-
|
|
3241
|
+
units.length > 0 && /* @__PURE__ */ jsxs(HStack, { gap: "sm", align: "center", className: "castle-template__garrison-info", children: [
|
|
3231
3242
|
/* @__PURE__ */ jsx(Typography, { variant: "small", className: "garrison-info__label", children: "Garrison:" }),
|
|
3232
3243
|
/* @__PURE__ */ jsxs(Typography, { variant: "small", weight: "bold", className: "garrison-info__count", children: [
|
|
3233
|
-
|
|
3244
|
+
units.length,
|
|
3234
3245
|
" units"
|
|
3235
3246
|
] })
|
|
3236
3247
|
] })
|
|
@@ -3258,12 +3269,15 @@ function GameCanvas3DWorldMapTemplate({
|
|
|
3258
3269
|
}) {
|
|
3259
3270
|
const resolved = entity && typeof entity === "object" && !Array.isArray(entity) ? entity : void 0;
|
|
3260
3271
|
if (!resolved) return null;
|
|
3272
|
+
const tiles = Array.isArray(resolved.tiles) ? resolved.tiles : [];
|
|
3273
|
+
const units = Array.isArray(resolved.units) ? resolved.units : [];
|
|
3274
|
+
const features = Array.isArray(resolved.features) ? resolved.features : [];
|
|
3261
3275
|
return /* @__PURE__ */ jsx(
|
|
3262
3276
|
GameCanvas3D,
|
|
3263
3277
|
{
|
|
3264
|
-
tiles
|
|
3265
|
-
units
|
|
3266
|
-
features
|
|
3278
|
+
tiles,
|
|
3279
|
+
units,
|
|
3280
|
+
features,
|
|
3267
3281
|
cameraMode,
|
|
3268
3282
|
showGrid,
|
|
3269
3283
|
showCoordinates,
|
|
@@ -10,9 +10,8 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import React from 'react';
|
|
12
12
|
import type { TemplateProps } from '../../core/templates/types';
|
|
13
|
-
|
|
14
|
-
export
|
|
15
|
-
export interface BattleTemplateProps extends TemplateProps<BattleEntity> {
|
|
13
|
+
export type { BattlePhase, BattleSlotContext, } from '../organisms/BattleBoard';
|
|
14
|
+
export interface BattleTemplateProps extends TemplateProps {
|
|
16
15
|
/** Canvas render scale */
|
|
17
16
|
scale?: number;
|
|
18
17
|
/** Unit draw-size multiplier */
|
|
@@ -10,9 +10,8 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import React from 'react';
|
|
12
12
|
import type { TemplateProps } from '../../core/templates/types';
|
|
13
|
-
|
|
14
|
-
export
|
|
15
|
-
export interface CastleTemplateProps extends TemplateProps<CastleEntity> {
|
|
13
|
+
export type { CastleSlotContext } from '../organisms/CastleBoard';
|
|
14
|
+
export interface CastleTemplateProps extends TemplateProps {
|
|
16
15
|
/** Canvas render scale */
|
|
17
16
|
scale?: number;
|
|
18
17
|
}
|
|
@@ -19,23 +19,8 @@
|
|
|
19
19
|
* @packageDocumentation
|
|
20
20
|
*/
|
|
21
21
|
import React from 'react';
|
|
22
|
-
import type { IsometricTile, IsometricUnit, IsometricFeature } from '../organisms/types/isometric';
|
|
23
22
|
import type { TemplateProps } from '../../core/templates/types';
|
|
24
|
-
export interface
|
|
25
|
-
/** Battlefield tiles */
|
|
26
|
-
tiles: IsometricTile[];
|
|
27
|
-
/** Combatants */
|
|
28
|
-
units: IsometricUnit[];
|
|
29
|
-
/** Battlefield features (cover, obstacles) */
|
|
30
|
-
features: IsometricFeature[];
|
|
31
|
-
/** Current turn (player/enemy) */
|
|
32
|
-
currentTurn?: 'player' | 'enemy';
|
|
33
|
-
/** Round number */
|
|
34
|
-
round?: number;
|
|
35
|
-
/** Entity ID */
|
|
36
|
-
id: string;
|
|
37
|
-
}
|
|
38
|
-
export interface GameCanvas3DBattleTemplateProps extends TemplateProps<Battle3DEntity> {
|
|
23
|
+
export interface GameCanvas3DBattleTemplateProps extends TemplateProps {
|
|
39
24
|
/** 3D camera mode - defaults to perspective for dramatic effect */
|
|
40
25
|
cameraMode?: 'isometric' | 'perspective' | 'top-down';
|
|
41
26
|
/** Show grid helper */
|
|
@@ -18,25 +18,8 @@
|
|
|
18
18
|
* @packageDocumentation
|
|
19
19
|
*/
|
|
20
20
|
import React from 'react';
|
|
21
|
-
import type { IsometricTile, IsometricUnit, IsometricFeature } from '../organisms/types/isometric';
|
|
22
21
|
import type { TemplateProps } from '../../core/templates/types';
|
|
23
|
-
export interface
|
|
24
|
-
/** Castle grounds tiles */
|
|
25
|
-
tiles: IsometricTile[];
|
|
26
|
-
/** Garrisoned units */
|
|
27
|
-
units: IsometricUnit[];
|
|
28
|
-
/** Buildings and structures */
|
|
29
|
-
features: IsometricFeature[];
|
|
30
|
-
/** Castle name */
|
|
31
|
-
name?: string;
|
|
32
|
-
/** Castle level */
|
|
33
|
-
level?: number;
|
|
34
|
-
/** Owner faction */
|
|
35
|
-
owner?: string;
|
|
36
|
-
/** Entity ID */
|
|
37
|
-
id: string;
|
|
38
|
-
}
|
|
39
|
-
export interface GameCanvas3DCastleTemplateProps extends TemplateProps<Castle3DEntity> {
|
|
22
|
+
export interface GameCanvas3DCastleTemplateProps extends TemplateProps {
|
|
40
23
|
/** 3D camera mode */
|
|
41
24
|
cameraMode?: 'isometric' | 'perspective' | 'top-down';
|
|
42
25
|
/** Show grid helper */
|
|
@@ -19,21 +19,8 @@
|
|
|
19
19
|
* @packageDocumentation
|
|
20
20
|
*/
|
|
21
21
|
import React from 'react';
|
|
22
|
-
import type { IsometricTile, IsometricUnit, IsometricFeature } from '../organisms/types/isometric';
|
|
23
22
|
import type { TemplateProps } from '../../core/templates/types';
|
|
24
|
-
export interface
|
|
25
|
-
/** Map tiles */
|
|
26
|
-
tiles: IsometricTile[];
|
|
27
|
-
/** Units on the map */
|
|
28
|
-
units: IsometricUnit[];
|
|
29
|
-
/** Map features (castles, resources, etc.) */
|
|
30
|
-
features: IsometricFeature[];
|
|
31
|
-
/** Entity ID */
|
|
32
|
-
id: string;
|
|
33
|
-
/** Entity name */
|
|
34
|
-
name?: string;
|
|
35
|
-
}
|
|
36
|
-
export interface GameCanvas3DWorldMapTemplateProps extends TemplateProps<WorldMap3DEntity> {
|
|
23
|
+
export interface GameCanvas3DWorldMapTemplateProps extends TemplateProps {
|
|
37
24
|
/** 3D camera mode */
|
|
38
25
|
cameraMode?: 'isometric' | 'perspective' | 'top-down';
|
|
39
26
|
/** Show grid helper */
|
|
@@ -7,17 +7,13 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import React from "react";
|
|
9
9
|
import type { TemplateProps } from "../../core/templates/types";
|
|
10
|
-
interface GameEntity {
|
|
11
|
-
id: string;
|
|
12
|
-
title?: string;
|
|
13
|
-
}
|
|
14
10
|
export interface GameControls {
|
|
15
11
|
onPlay?: () => void;
|
|
16
12
|
onPause?: () => void;
|
|
17
13
|
onReset?: () => void;
|
|
18
14
|
isPlaying?: boolean;
|
|
19
15
|
}
|
|
20
|
-
export interface GameTemplateProps extends TemplateProps
|
|
16
|
+
export interface GameTemplateProps extends TemplateProps {
|
|
21
17
|
/** Title of the game */
|
|
22
18
|
title?: string;
|
|
23
19
|
/** The main game canvas or content */
|
|
@@ -34,4 +30,3 @@ export interface GameTemplateProps extends TemplateProps<GameEntity> {
|
|
|
34
30
|
className?: string;
|
|
35
31
|
}
|
|
36
32
|
export declare const GameTemplate: React.FC<GameTemplateProps>;
|
|
37
|
-
export {};
|
|
@@ -10,9 +10,8 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import React from 'react';
|
|
12
12
|
import type { TemplateProps } from '../../core/templates/types';
|
|
13
|
-
|
|
14
|
-
export
|
|
15
|
-
export interface WorldMapTemplateProps extends TemplateProps<WorldMapEntity> {
|
|
13
|
+
export type { WorldMapSlotContext } from '../organisms/WorldMapBoard';
|
|
14
|
+
export interface WorldMapTemplateProps extends TemplateProps {
|
|
16
15
|
/** Canvas render scale */
|
|
17
16
|
scale?: number;
|
|
18
17
|
/** Unit draw-size multiplier */
|