canvasengine 2.0.0-beta.41 → 2.0.0-beta.42
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/{DebugRenderer-BxfW34YG.js → DebugRenderer-BosXI2Pd.js} +2 -2
- package/dist/{DebugRenderer-BxfW34YG.js.map → DebugRenderer-BosXI2Pd.js.map} +1 -1
- package/dist/engine/bootstrap.d.ts +33 -1
- package/dist/engine/bootstrap.d.ts.map +1 -1
- package/dist/engine/reactive.d.ts +20 -0
- package/dist/engine/reactive.d.ts.map +1 -1
- package/dist/{index-BnuKipxl.js → index-DNwqVzaq.js} +797 -788
- package/dist/index-DNwqVzaq.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.global.js +6 -6
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +22 -21
- package/package.json +1 -1
- package/src/engine/bootstrap.ts +69 -2
- package/src/engine/reactive.ts +35 -0
- package/src/index.ts +1 -0
- package/dist/index-BnuKipxl.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Bounds as F, Rectangle as C, Container as M, Graphics as x, BigPool as b } from "pixi.js";
|
|
2
|
-
import { F as _, E as p } from "./index-
|
|
2
|
+
import { F as _, E as p } from "./index-DNwqVzaq.js";
|
|
3
3
|
var l = /* @__PURE__ */ ((e) => (e.Margin = "margin", e.Padding = "padding", e.Border = "border", e.Flex = "flex", e.Content = "content", e))(l || {});
|
|
4
4
|
function w(e, t) {
|
|
5
5
|
const r = `getComputed${t.charAt(0).toUpperCase() + t.slice(1)}`;
|
|
@@ -169,4 +169,4 @@ class y {
|
|
|
169
169
|
export {
|
|
170
170
|
y as DebugRenderer
|
|
171
171
|
};
|
|
172
|
-
//# sourceMappingURL=DebugRenderer-
|
|
172
|
+
//# sourceMappingURL=DebugRenderer-BosXI2Pd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DebugRenderer-BxfW34YG.js","sources":["../../../node_modules/.pnpm/@pixi+layout@3.0.2_@types+react@19.1.3_pixi.js@8.9.2_react@19.1.0_yoga-layout@3.2.1/node_modules/@pixi/layout/dist/core/debug/calculateDebugRegions.mjs","../../../node_modules/.pnpm/@pixi+layout@3.0.2_@types+react@19.1.3_pixi.js@8.9.2_react@19.1.0_yoga-layout@3.2.1/node_modules/@pixi/layout/dist/core/debug/DebugNode.mjs","../../../node_modules/.pnpm/@pixi+layout@3.0.2_@types+react@19.1.3_pixi.js@8.9.2_react@19.1.0_yoga-layout@3.2.1/node_modules/@pixi/layout/dist/core/debug/DebugRenderer.mjs"],"sourcesContent":["import { Bounds, Rectangle } from \"pixi.js\";\nimport { Edge, FlexDirection } from \"yoga-layout/load\";\nvar DebugRegionType = /* @__PURE__ */ ((DebugRegionType2) => {\n DebugRegionType2[\"Margin\"] = \"margin\";\n DebugRegionType2[\"Padding\"] = \"padding\";\n DebugRegionType2[\"Border\"] = \"border\";\n DebugRegionType2[\"Flex\"] = \"flex\";\n DebugRegionType2[\"Content\"] = \"content\";\n return DebugRegionType2;\n})(DebugRegionType || {});\nfunction getEdgeValues(layout, type) {\n const method = `getComputed${type.charAt(0).toUpperCase() + type.slice(1)}`;\n return {\n top: layout.yoga[method](Edge.Top),\n right: layout.yoga[method](Edge.Right),\n bottom: layout.yoga[method](Edge.Bottom),\n left: layout.yoga[method](Edge.Left)\n };\n}\nfunction calculateRegions(layout, regions) {\n const { width, height } = layout.computedLayout;\n const margin = getEdgeValues(layout, \"margin\");\n const border = getEdgeValues(layout, \"border\");\n const padding = getEdgeValues(layout, \"padding\");\n const marginRegion = regions.get(\n \"margin\"\n /* Margin */\n );\n marginRegion.outer.x = -margin.left;\n marginRegion.outer.y = -margin.top;\n marginRegion.outer.width = width + margin.left + margin.right;\n marginRegion.outer.height = height + margin.top + margin.bottom;\n marginRegion.inner.x = 0;\n marginRegion.inner.y = 0;\n marginRegion.inner.width = width;\n marginRegion.inner.height = height;\n const borderRegion = regions.get(\n \"border\"\n /* Border */\n );\n borderRegion.outer.x = 0;\n borderRegion.outer.y = 0;\n borderRegion.outer.width = width;\n borderRegion.outer.height = height;\n borderRegion.inner.x = border.left;\n borderRegion.inner.y = border.top;\n borderRegion.inner.width = width - border.left - border.right;\n borderRegion.inner.height = height - border.top - border.bottom;\n const paddingRegion = regions.get(\n \"padding\"\n /* Padding */\n );\n paddingRegion.outer.copyFrom(borderRegion.inner);\n paddingRegion.inner.x = padding.left + border.left;\n paddingRegion.inner.y = padding.top + border.top;\n paddingRegion.inner.width = width - padding.left - padding.right - border.left - border.right;\n paddingRegion.inner.height = height - padding.top - padding.bottom - border.top - border.bottom;\n calculateFlexRegion(layout, regions);\n}\nfunction calculateFlexRegion(layout, regions) {\n var _a;\n const flexRegion = regions.get(\n \"flex\"\n /* Flex */\n );\n const paddingRegion = regions.get(\n \"padding\"\n /* Padding */\n );\n flexRegion.outer.copyFrom(paddingRegion.inner);\n const bounds = new Bounds();\n const children = layout.yoga.getChildCount();\n for (let i = 0; i < children; i++) {\n const child = layout.yoga.getChild(i);\n const computedBounds = child.getComputedLayout();\n bounds.addRect(\n new Rectangle(computedBounds.left, computedBounds.top, computedBounds.width, computedBounds.height)\n );\n }\n const flexDir = layout.yoga.getFlexDirection();\n if (flexDir === FlexDirection.Column || flexDir === FlexDirection.ColumnReverse) {\n bounds.width = flexRegion.outer.width;\n bounds.x = flexRegion.outer.x;\n } else {\n bounds.height = flexRegion.outer.height;\n bounds.y = flexRegion.outer.y;\n }\n (_a = flexRegion.inner) == null ? void 0 : _a.copyFrom(bounds.rectangle);\n regions.get(\n \"content\"\n /* Content */\n ).outer.copyFrom(bounds.rectangle);\n}\nexport {\n DebugRegionType,\n calculateRegions\n};\n//# sourceMappingURL=calculateDebugRegions.mjs.map\n","var __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nimport { Container, Graphics as Graphics$1 } from \"pixi.js\";\nimport { DebugRegionType } from \"./calculateDebugRegions.mjs\";\nfunction lerpColor(start, end, t) {\n const r = Math.round(start[0] + (end[0] - start[0]) * t);\n const g = Math.round(start[1] + (end[1] - start[1]) * t);\n const b = Math.round(start[2] + (end[2] - start[2]) * t);\n return `rgb(${r},${g},${b})`;\n}\nclass DebugNode extends Container {\n constructor() {\n super();\n /** Graphics objects for each region type */\n __publicField(this, \"graphics\");\n __publicField(this, \"heatGraphics\");\n this.graphics = /* @__PURE__ */ new Map();\n Object.values(DebugRegionType).forEach((type) => {\n const graphics = new Graphics$1();\n this.graphics.set(type, graphics);\n this.addChild(graphics);\n });\n this.heatGraphics = new Graphics$1();\n this.addChild(this.heatGraphics);\n }\n /**\n * Initialize the debug object with region data\n */\n init(regions) {\n const { target, alpha, heat } = regions;\n if (!regions.heatOnly) {\n Object.entries(regions).forEach(([type, region]) => {\n if (type === \"target\" || type === \"alpha\" || type === \"heat\" || type === \"heatOnly\") return;\n region = region;\n const graphics = this.graphics.get(type);\n if (!graphics || !region.draw) return;\n if (region.inner) {\n this.drawCutBox(graphics, region.outer, region.inner, region.color, alpha);\n } else {\n const { x, y, width, height } = region.outer;\n graphics.rect(x, y, width, Math.max(height, 1));\n graphics.fill({ color: region.color, alpha });\n }\n });\n }\n const { invalidationCount, draw } = heat;\n if (invalidationCount > 0 && draw) {\n const MAX_INVALIDATE_COUNT = 20;\n const normalizedAlpha = Math.min(invalidationCount / MAX_INVALIDATE_COUNT, 1);\n const marginRegion = regions[DebugRegionType.Margin];\n const startColor = [255, 255, 0];\n const endColor = [255, 0, 0];\n const color = lerpColor(startColor, endColor, normalizedAlpha);\n this.heatGraphics.rect(\n marginRegion.outer.x,\n marginRegion.outer.y,\n marginRegion.outer.width,\n marginRegion.outer.height\n );\n this.heatGraphics.fill({ color, alpha: Math.min(0.3, normalizedAlpha) });\n this.heatGraphics.stroke({ color, alpha: Math.max(0.3, normalizedAlpha), pixelLine: true });\n }\n this.position.set(target.x, target.y);\n }\n /**\n * Reset the debug object's state\n */\n reset() {\n this.graphics.forEach((graphics) => graphics.clear());\n this.heatGraphics.clear();\n this.removeFromParent();\n }\n /**\n * Draw a box with a cut-out center\n */\n drawCutBox(graphics, outer, inner, color, alpha) {\n const { x, y, width, height } = outer;\n const { x: innerX, y: innerY, width: innerWidth, height: innerHeight } = inner;\n graphics.rect(x, y, width, height);\n graphics.fill({ color, alpha });\n graphics.rect(innerX, innerY, innerWidth, innerHeight);\n graphics.cut();\n }\n}\nexport {\n DebugNode\n};\n//# sourceMappingURL=DebugNode.mjs.map\n","var __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nimport { Container, Rectangle, BigPool } from \"pixi.js\";\nimport { DebugRegionType, calculateRegions } from \"./calculateDebugRegions.mjs\";\nimport { DebugNode } from \"./DebugNode.mjs\";\nclass DebugRenderer {\n constructor() {\n /** Container for all debug visuals */\n __publicField(this, \"holder\", new Container());\n /** Region data for each debug type */\n __publicField(this, \"regions\", /* @__PURE__ */ new Map());\n /** Color configuration for each region type */\n __publicField(this, \"colors\", {\n [DebugRegionType.Margin]: \"#B68655\",\n [DebugRegionType.Padding]: \"#BAC57F\",\n [DebugRegionType.Border]: \"#E7C583\",\n [DebugRegionType.Content]: \"#89B1BE\",\n [DebugRegionType.Flex]: \"#6E28D9\"\n });\n /** Global alpha value for all regions */\n __publicField(this, \"alpha\", 0.75);\n Object.values(DebugRegionType).forEach((type) => {\n this.regions.set(type, {\n outer: new Rectangle(),\n inner: new Rectangle()\n });\n });\n this.holder.__devtoolIgnore = true;\n this.holder.__devtoolIgnoreChildren = true;\n this.holder.eventMode = \"none\";\n this.holder.interactiveChildren = false;\n }\n /**\n * Clean up previous render state\n */\n reset() {\n for (let i = this.holder.children.length - 1; i >= 0; i--) {\n const child = this.holder.children[i];\n BigPool.return(child);\n }\n }\n /**\n * Render debug visuals for the given layout\n */\n render(layout) {\n calculateRegions(layout, this.regions);\n const regionData = Object.values(DebugRegionType).reduce(\n (acc, type) => {\n const region = this.regions.get(type);\n if (!region) return acc;\n const drawString = `debugDraw${type.charAt(0).toUpperCase()}${type.slice(1)}`;\n acc[type] = {\n ...region,\n color: this.colors[type],\n draw: layout._styles.custom[drawString] ?? true\n };\n return acc;\n },\n {}\n );\n const { left, top } = layout.computedLayout;\n const pos = layout.target.getGlobalPosition();\n const debugObject = BigPool.get(DebugNode, {\n ...regionData,\n target: { x: pos.x + left, y: pos.y + top },\n alpha: this.alpha,\n heat: {\n invalidationCount: layout._modificationCount,\n draw: layout._styles.custom.debugHeat !== false\n },\n heatOnly: !layout._styles.custom.debug\n });\n this.holder.addChildAt(debugObject, 0);\n }\n /**\n * Clean up the debug renderer\n */\n destroy() {\n this.reset();\n this.holder.destroy();\n this.regions.clear();\n }\n}\nexport {\n DebugRenderer\n};\n//# sourceMappingURL=DebugRenderer.mjs.map\n"],"names":["DebugRegionType","DebugRegionType2","getEdgeValues","layout","type","method","Edge","calculateRegions","regions","width","height","margin","border","padding","marginRegion","borderRegion","paddingRegion","calculateFlexRegion","_a","flexRegion","bounds","Bounds","children","i","computedBounds","Rectangle","flexDir","FlexDirection","__defProp","__defNormalProp","obj","key","value","__publicField","lerpColor","start","end","t","r","g","b","DebugNode","Container","graphics","Graphics$1","target","alpha","heat","region","x","y","invalidationCount","draw","normalizedAlpha","color","outer","inner","innerX","innerY","innerWidth","innerHeight","DebugRenderer","child","BigPool","regionData","acc","drawString","left","top","pos","debugObject"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
1
|
+
{"version":3,"file":"DebugRenderer-BosXI2Pd.js","sources":["../../../node_modules/.pnpm/@pixi+layout@3.0.2_@types+react@19.1.3_pixi.js@8.9.2_react@19.1.0_yoga-layout@3.2.1/node_modules/@pixi/layout/dist/core/debug/calculateDebugRegions.mjs","../../../node_modules/.pnpm/@pixi+layout@3.0.2_@types+react@19.1.3_pixi.js@8.9.2_react@19.1.0_yoga-layout@3.2.1/node_modules/@pixi/layout/dist/core/debug/DebugNode.mjs","../../../node_modules/.pnpm/@pixi+layout@3.0.2_@types+react@19.1.3_pixi.js@8.9.2_react@19.1.0_yoga-layout@3.2.1/node_modules/@pixi/layout/dist/core/debug/DebugRenderer.mjs"],"sourcesContent":["import { Bounds, Rectangle } from \"pixi.js\";\nimport { Edge, FlexDirection } from \"yoga-layout/load\";\nvar DebugRegionType = /* @__PURE__ */ ((DebugRegionType2) => {\n DebugRegionType2[\"Margin\"] = \"margin\";\n DebugRegionType2[\"Padding\"] = \"padding\";\n DebugRegionType2[\"Border\"] = \"border\";\n DebugRegionType2[\"Flex\"] = \"flex\";\n DebugRegionType2[\"Content\"] = \"content\";\n return DebugRegionType2;\n})(DebugRegionType || {});\nfunction getEdgeValues(layout, type) {\n const method = `getComputed${type.charAt(0).toUpperCase() + type.slice(1)}`;\n return {\n top: layout.yoga[method](Edge.Top),\n right: layout.yoga[method](Edge.Right),\n bottom: layout.yoga[method](Edge.Bottom),\n left: layout.yoga[method](Edge.Left)\n };\n}\nfunction calculateRegions(layout, regions) {\n const { width, height } = layout.computedLayout;\n const margin = getEdgeValues(layout, \"margin\");\n const border = getEdgeValues(layout, \"border\");\n const padding = getEdgeValues(layout, \"padding\");\n const marginRegion = regions.get(\n \"margin\"\n /* Margin */\n );\n marginRegion.outer.x = -margin.left;\n marginRegion.outer.y = -margin.top;\n marginRegion.outer.width = width + margin.left + margin.right;\n marginRegion.outer.height = height + margin.top + margin.bottom;\n marginRegion.inner.x = 0;\n marginRegion.inner.y = 0;\n marginRegion.inner.width = width;\n marginRegion.inner.height = height;\n const borderRegion = regions.get(\n \"border\"\n /* Border */\n );\n borderRegion.outer.x = 0;\n borderRegion.outer.y = 0;\n borderRegion.outer.width = width;\n borderRegion.outer.height = height;\n borderRegion.inner.x = border.left;\n borderRegion.inner.y = border.top;\n borderRegion.inner.width = width - border.left - border.right;\n borderRegion.inner.height = height - border.top - border.bottom;\n const paddingRegion = regions.get(\n \"padding\"\n /* Padding */\n );\n paddingRegion.outer.copyFrom(borderRegion.inner);\n paddingRegion.inner.x = padding.left + border.left;\n paddingRegion.inner.y = padding.top + border.top;\n paddingRegion.inner.width = width - padding.left - padding.right - border.left - border.right;\n paddingRegion.inner.height = height - padding.top - padding.bottom - border.top - border.bottom;\n calculateFlexRegion(layout, regions);\n}\nfunction calculateFlexRegion(layout, regions) {\n var _a;\n const flexRegion = regions.get(\n \"flex\"\n /* Flex */\n );\n const paddingRegion = regions.get(\n \"padding\"\n /* Padding */\n );\n flexRegion.outer.copyFrom(paddingRegion.inner);\n const bounds = new Bounds();\n const children = layout.yoga.getChildCount();\n for (let i = 0; i < children; i++) {\n const child = layout.yoga.getChild(i);\n const computedBounds = child.getComputedLayout();\n bounds.addRect(\n new Rectangle(computedBounds.left, computedBounds.top, computedBounds.width, computedBounds.height)\n );\n }\n const flexDir = layout.yoga.getFlexDirection();\n if (flexDir === FlexDirection.Column || flexDir === FlexDirection.ColumnReverse) {\n bounds.width = flexRegion.outer.width;\n bounds.x = flexRegion.outer.x;\n } else {\n bounds.height = flexRegion.outer.height;\n bounds.y = flexRegion.outer.y;\n }\n (_a = flexRegion.inner) == null ? void 0 : _a.copyFrom(bounds.rectangle);\n regions.get(\n \"content\"\n /* Content */\n ).outer.copyFrom(bounds.rectangle);\n}\nexport {\n DebugRegionType,\n calculateRegions\n};\n//# sourceMappingURL=calculateDebugRegions.mjs.map\n","var __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nimport { Container, Graphics as Graphics$1 } from \"pixi.js\";\nimport { DebugRegionType } from \"./calculateDebugRegions.mjs\";\nfunction lerpColor(start, end, t) {\n const r = Math.round(start[0] + (end[0] - start[0]) * t);\n const g = Math.round(start[1] + (end[1] - start[1]) * t);\n const b = Math.round(start[2] + (end[2] - start[2]) * t);\n return `rgb(${r},${g},${b})`;\n}\nclass DebugNode extends Container {\n constructor() {\n super();\n /** Graphics objects for each region type */\n __publicField(this, \"graphics\");\n __publicField(this, \"heatGraphics\");\n this.graphics = /* @__PURE__ */ new Map();\n Object.values(DebugRegionType).forEach((type) => {\n const graphics = new Graphics$1();\n this.graphics.set(type, graphics);\n this.addChild(graphics);\n });\n this.heatGraphics = new Graphics$1();\n this.addChild(this.heatGraphics);\n }\n /**\n * Initialize the debug object with region data\n */\n init(regions) {\n const { target, alpha, heat } = regions;\n if (!regions.heatOnly) {\n Object.entries(regions).forEach(([type, region]) => {\n if (type === \"target\" || type === \"alpha\" || type === \"heat\" || type === \"heatOnly\") return;\n region = region;\n const graphics = this.graphics.get(type);\n if (!graphics || !region.draw) return;\n if (region.inner) {\n this.drawCutBox(graphics, region.outer, region.inner, region.color, alpha);\n } else {\n const { x, y, width, height } = region.outer;\n graphics.rect(x, y, width, Math.max(height, 1));\n graphics.fill({ color: region.color, alpha });\n }\n });\n }\n const { invalidationCount, draw } = heat;\n if (invalidationCount > 0 && draw) {\n const MAX_INVALIDATE_COUNT = 20;\n const normalizedAlpha = Math.min(invalidationCount / MAX_INVALIDATE_COUNT, 1);\n const marginRegion = regions[DebugRegionType.Margin];\n const startColor = [255, 255, 0];\n const endColor = [255, 0, 0];\n const color = lerpColor(startColor, endColor, normalizedAlpha);\n this.heatGraphics.rect(\n marginRegion.outer.x,\n marginRegion.outer.y,\n marginRegion.outer.width,\n marginRegion.outer.height\n );\n this.heatGraphics.fill({ color, alpha: Math.min(0.3, normalizedAlpha) });\n this.heatGraphics.stroke({ color, alpha: Math.max(0.3, normalizedAlpha), pixelLine: true });\n }\n this.position.set(target.x, target.y);\n }\n /**\n * Reset the debug object's state\n */\n reset() {\n this.graphics.forEach((graphics) => graphics.clear());\n this.heatGraphics.clear();\n this.removeFromParent();\n }\n /**\n * Draw a box with a cut-out center\n */\n drawCutBox(graphics, outer, inner, color, alpha) {\n const { x, y, width, height } = outer;\n const { x: innerX, y: innerY, width: innerWidth, height: innerHeight } = inner;\n graphics.rect(x, y, width, height);\n graphics.fill({ color, alpha });\n graphics.rect(innerX, innerY, innerWidth, innerHeight);\n graphics.cut();\n }\n}\nexport {\n DebugNode\n};\n//# sourceMappingURL=DebugNode.mjs.map\n","var __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nimport { Container, Rectangle, BigPool } from \"pixi.js\";\nimport { DebugRegionType, calculateRegions } from \"./calculateDebugRegions.mjs\";\nimport { DebugNode } from \"./DebugNode.mjs\";\nclass DebugRenderer {\n constructor() {\n /** Container for all debug visuals */\n __publicField(this, \"holder\", new Container());\n /** Region data for each debug type */\n __publicField(this, \"regions\", /* @__PURE__ */ new Map());\n /** Color configuration for each region type */\n __publicField(this, \"colors\", {\n [DebugRegionType.Margin]: \"#B68655\",\n [DebugRegionType.Padding]: \"#BAC57F\",\n [DebugRegionType.Border]: \"#E7C583\",\n [DebugRegionType.Content]: \"#89B1BE\",\n [DebugRegionType.Flex]: \"#6E28D9\"\n });\n /** Global alpha value for all regions */\n __publicField(this, \"alpha\", 0.75);\n Object.values(DebugRegionType).forEach((type) => {\n this.regions.set(type, {\n outer: new Rectangle(),\n inner: new Rectangle()\n });\n });\n this.holder.__devtoolIgnore = true;\n this.holder.__devtoolIgnoreChildren = true;\n this.holder.eventMode = \"none\";\n this.holder.interactiveChildren = false;\n }\n /**\n * Clean up previous render state\n */\n reset() {\n for (let i = this.holder.children.length - 1; i >= 0; i--) {\n const child = this.holder.children[i];\n BigPool.return(child);\n }\n }\n /**\n * Render debug visuals for the given layout\n */\n render(layout) {\n calculateRegions(layout, this.regions);\n const regionData = Object.values(DebugRegionType).reduce(\n (acc, type) => {\n const region = this.regions.get(type);\n if (!region) return acc;\n const drawString = `debugDraw${type.charAt(0).toUpperCase()}${type.slice(1)}`;\n acc[type] = {\n ...region,\n color: this.colors[type],\n draw: layout._styles.custom[drawString] ?? true\n };\n return acc;\n },\n {}\n );\n const { left, top } = layout.computedLayout;\n const pos = layout.target.getGlobalPosition();\n const debugObject = BigPool.get(DebugNode, {\n ...regionData,\n target: { x: pos.x + left, y: pos.y + top },\n alpha: this.alpha,\n heat: {\n invalidationCount: layout._modificationCount,\n draw: layout._styles.custom.debugHeat !== false\n },\n heatOnly: !layout._styles.custom.debug\n });\n this.holder.addChildAt(debugObject, 0);\n }\n /**\n * Clean up the debug renderer\n */\n destroy() {\n this.reset();\n this.holder.destroy();\n this.regions.clear();\n }\n}\nexport {\n DebugRenderer\n};\n//# sourceMappingURL=DebugRenderer.mjs.map\n"],"names":["DebugRegionType","DebugRegionType2","getEdgeValues","layout","type","method","Edge","calculateRegions","regions","width","height","margin","border","padding","marginRegion","borderRegion","paddingRegion","calculateFlexRegion","_a","flexRegion","bounds","Bounds","children","i","computedBounds","Rectangle","flexDir","FlexDirection","__defProp","__defNormalProp","obj","key","value","__publicField","lerpColor","start","end","t","r","g","b","DebugNode","Container","graphics","Graphics$1","target","alpha","heat","region","x","y","invalidationCount","draw","normalizedAlpha","color","outer","inner","innerX","innerY","innerWidth","innerHeight","DebugRenderer","child","BigPool","regionData","acc","drawString","left","top","pos","debugObject"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
@@ -1,15 +1,47 @@
|
|
|
1
1
|
import { Application, ApplicationOptions } from 'pixi.js';
|
|
2
2
|
import { ComponentFunction } from './signal';
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* Extended options for bootstrapCanvas that includes component registration configuration.
|
|
6
|
+
*
|
|
7
|
+
* @property components - Optional mapping of component names to their classes (can include mocks for testing)
|
|
8
|
+
* @property autoRegister - If true (default), registers all default components before applying custom components. If false, only registers the specified components.
|
|
9
|
+
*/
|
|
10
|
+
export interface BootstrapOptions extends ApplicationOptions {
|
|
11
|
+
components?: {
|
|
12
|
+
[name: string]: any;
|
|
13
|
+
};
|
|
14
|
+
autoRegister?: boolean;
|
|
15
|
+
}
|
|
4
16
|
/**
|
|
5
17
|
* Bootstraps a canvas element and renders it to the DOM.
|
|
6
18
|
*
|
|
7
19
|
* @param rootElement - The HTML element where the canvas will be rendered. Can be null.
|
|
8
20
|
* @param canvas - A Promise that resolves to an Element representing the canvas component.
|
|
21
|
+
* @param options - Optional bootstrap options including ApplicationOptions and component registration configuration.
|
|
9
22
|
* @returns A Promise that resolves to the rendered canvas element.
|
|
10
23
|
* @throws {Error} If the provided element is not a Canvas component.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Default: all components registered automatically
|
|
28
|
+
* await bootstrapCanvas(rootElement, MyComponent, {
|
|
29
|
+
* width: 800,
|
|
30
|
+
* height: 600
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* // With mocks for testing
|
|
37
|
+
* import { mockComponents } from '@canvasengine/testing';
|
|
38
|
+
* await bootstrapCanvas(rootElement, MyComponent, {
|
|
39
|
+
* components: mockComponents,
|
|
40
|
+
* autoRegister: false
|
|
41
|
+
* });
|
|
42
|
+
* ```
|
|
11
43
|
*/
|
|
12
|
-
export declare const bootstrapCanvas: (rootElement: HTMLElement | null, canvas: ComponentFunction<any>, options?:
|
|
44
|
+
export declare const bootstrapCanvas: (rootElement: HTMLElement | null, canvas: ComponentFunction<any>, options?: BootstrapOptions) => Promise<{
|
|
13
45
|
canvasElement: import('./reactive').Element<import('..').ComponentInstance>;
|
|
14
46
|
app: Application<import('pixi.js').Renderer>;
|
|
15
47
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/engine/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAK,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/engine/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAK,MAAM,UAAU,CAAC;AAOhD,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAC9B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,wBAAwB,CAAC;AAChC,OAAO,4BAA4B,CAAC;AACpC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,0BAA0B,CAAC;AAClC,OAAO,+BAA+B,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,UAAU,CAAC,EAAE;QACX,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC;KACrB,CAAC;IACF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,eAAe,GAAU,aAAa,WAAW,GAAG,IAAI,EAAE,QAAQ,iBAAiB,CAAC,GAAG,CAAC,EAAE,UAAU,gBAAgB;;;EA0ChI,CAAC"}
|
|
@@ -38,6 +38,26 @@ type FlowObservable = Observable<FlowResult>;
|
|
|
38
38
|
export declare const isElement: (value: any) => value is Element;
|
|
39
39
|
export declare const isPrimitive: (value: any) => boolean;
|
|
40
40
|
export declare function registerComponent(name: any, component: any): void;
|
|
41
|
+
/**
|
|
42
|
+
* Registers all default CanvasEngine components.
|
|
43
|
+
*
|
|
44
|
+
* This function imports and registers all core components that are available by default.
|
|
45
|
+
* It's called automatically by bootstrapCanvas() if no custom component configuration is provided.
|
|
46
|
+
*
|
|
47
|
+
* Components register themselves when their modules are imported, so this function ensures
|
|
48
|
+
* all component modules are loaded. Since components call registerComponent() at module load time,
|
|
49
|
+
* importing them will automatically register them synchronously.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* // Register all default components manually
|
|
54
|
+
* registerAllComponents();
|
|
55
|
+
*
|
|
56
|
+
* // Now you can use any component
|
|
57
|
+
* const sprite = createComponent('Sprite', { image: 'hero.png' });
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export declare function registerAllComponents(): void;
|
|
41
61
|
/**
|
|
42
62
|
* Checks if an element is currently frozen.
|
|
43
63
|
* An element is frozen when the `freeze` prop is set to `true` (either as a boolean or Signal<boolean>),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../src/engine/reactive.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../src/engine/reactive.ts"],"names":[],"mappings":"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"}
|