@combos-fun/plugin-renderer-nine-patch 0.0.54 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/agent-skill.md CHANGED
@@ -31,7 +31,7 @@ panel.addComponent(new NinePatch({
31
31
  }));
32
32
  ```
33
33
 
34
- Output size follows `Transform.size`. Keep opposite borders within the source texture dimensions.
34
+ Output size follows `Transform2D.size`. Keep opposite borders within the source texture dimensions.
35
35
 
36
36
  For SPRITE resources, import `@combos-fun/plugin-renderer-sprite` and provide an
37
37
  exact `spriteName`; atlas parsing registers the prefixed key in Pixi's Texture
@@ -105,7 +105,7 @@ let NinePatch = class NinePatch extends pluginRenderer.Renderer {
105
105
  this.renderSystem.rendererManager.register(this);
106
106
  }
107
107
  rendererUpdate(gameObject) {
108
- const { width, height } = gameObject.transform.size;
108
+ const { width, height } = gameObject.getComponent(pluginRenderer.Transform2D)?.size ?? { width: 0, height: 0 };
109
109
  if (this.ninePatch[gameObject.id]) {
110
110
  this.ninePatch[gameObject.id].width = width;
111
111
  this.ninePatch[gameObject.id].height = height;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-renderer-nine-patch.cjs.js","sources":["../lib/component.ts","../lib/system.ts"],"sourcesContent":["import { Component } from '@combos-fun/engine';\nimport { Field } from '@combos-fun/inspector-decorator';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\n\nexport interface NinePatchParams {\n resource: string;\n spriteName?: string;\n leftWidth?: number;\n topHeight?: number;\n rightWidth?: number;\n bottomHeight?: number;\n}\n\nexport default class NinePatch extends Component<NinePatchParams> {\n static componentName: string = 'NinePatch';\n ninePatch: NinePatchSprite;\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'resource',\n description: 'Nine-patch image or atlas resource id.',\n editor: 'text',\n })\n resource: string = '';\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'spriteName',\n description: 'Optional atlas frame name for the nine-patch source.',\n editor: 'text',\n })\n spriteName: string = '';\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'leftWidth',\n description: 'Left border width preserved when stretching.',\n editor: 'number-stepper',\n })\n leftWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'topHeight',\n description: 'Top border height preserved when stretching.',\n editor: 'number-stepper',\n })\n topHeight: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'rightWidth',\n description: 'Right border width preserved when stretching.',\n editor: 'number-stepper',\n })\n rightWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'bottomHeight',\n description: 'Bottom border height preserved when stretching.',\n editor: 'number-stepper',\n })\n bottomHeight: number = 0;\n\n init(obj?: NinePatchParams) {\n if (!obj) return;\n this.resource = obj.resource;\n this.spriteName = obj.spriteName;\n this.leftWidth = obj.leftWidth;\n this.topHeight = obj.topHeight;\n this.rightWidth = obj.rightWidth;\n this.bottomHeight = obj.bottomHeight;\n }\n}\n","import { GameObject, decorators, resource, ComponentChanged, RESOURCE_TYPE, OBSERVER_TYPE } from '@combos-fun/engine';\nimport { RendererManager, ContainerManager, RendererSystem, Renderer, RESOURCE_KEY_SPLIT } from '@combos-fun/plugin-renderer';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\nimport NinePatchComponent from './component';\nimport { Texture } from 'pixi.js';\n\nconst resourceKeySplit = RESOURCE_KEY_SPLIT;\n\n@decorators.componentObserver({\n NinePatch: ['resource', 'spriteName', 'leftWidth', 'topHeight', 'rightWidth', 'bottomHeight'],\n})\nexport default class NinePatch extends Renderer {\n static systemName: string = 'NinePatch';\n name: string = 'NinePatch';\n ninePatch: { [propName: number]: NinePatchSprite } = {};\n renderSystem: RendererSystem;\n rendererManager: RendererManager;\n containerManager: ContainerManager;\n init() {\n this.renderSystem = this.game.getSystem(RendererSystem) as RendererSystem;\n this.renderSystem.rendererManager.register(this);\n }\n rendererUpdate(gameObject: GameObject) {\n const { width, height } = gameObject.transform.size;\n if (this.ninePatch[gameObject.id]) {\n this.ninePatch[gameObject.id].width = width;\n this.ninePatch[gameObject.id].height = height;\n }\n }\n async componentChanged(changed: ComponentChanged) {\n if (changed.componentName === 'NinePatch') {\n if (changed.type === OBSERVER_TYPE.ADD) {\n this.add(changed);\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.remove(changed);\n } else {\n this.remove(changed);\n this.add(changed);\n }\n }\n }\n async add(changed: ComponentChanged) {\n const component = changed.component as NinePatchComponent;\n const gameObjectId = changed.gameObject.id;\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { type, data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch resource load error`);\n return\n }\n let img: string | Texture;\n if (type === RESOURCE_TYPE.SPRITE) {\n img = component.resource + resourceKeySplit + component.spriteName;\n } else {\n img = Texture.from(data.image as HTMLImageElement);\n }\n const { leftWidth, topHeight, rightWidth, bottomHeight } = component;\n const np = new NinePatchSprite(img, leftWidth, topHeight, rightWidth, bottomHeight);\n\n this.ninePatch[changed.gameObject.id] = np;\n component.ninePatch = np;\n const parent = this.containerManager.getContainer(changed.gameObject.id);\n if (!parent) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch missing display container`);\n return;\n }\n parent.addChildAt(np, 0);\n }\n remove(changed: ComponentChanged) {\n const gameObjectId = changed.gameObject.id;\n this.increaseAsyncId(gameObjectId);\n const sprite = this.ninePatch[gameObjectId];\n if (sprite) {\n this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite);\n delete this.ninePatch[changed.gameObject.id];\n sprite.destroy({ children: true });\n }\n }\n}\n"],"names":["Component","__decorate","Field","NinePatch","RESOURCE_KEY_SPLIT","Renderer","RendererSystem","OBSERVER_TYPE","resource","RESOURCE_TYPE","Texture","NinePatchSprite","decorators"],"mappings":"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"}
1
+ {"version":3,"file":"plugin-renderer-nine-patch.cjs.js","sources":["../lib/component.ts","../lib/system.ts"],"sourcesContent":["import { Component } from '@combos-fun/engine';\nimport { Field } from '@combos-fun/inspector-decorator';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\n\nexport interface NinePatchParams {\n resource: string;\n spriteName?: string;\n leftWidth?: number;\n topHeight?: number;\n rightWidth?: number;\n bottomHeight?: number;\n}\n\nexport default class NinePatch extends Component<NinePatchParams> {\n static componentName: string = 'NinePatch';\n ninePatch: NinePatchSprite;\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'resource',\n description: 'Nine-patch image or atlas resource id.',\n editor: 'text',\n })\n resource: string = '';\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'spriteName',\n description: 'Optional atlas frame name for the nine-patch source.',\n editor: 'text',\n })\n spriteName: string = '';\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'leftWidth',\n description: 'Left border width preserved when stretching.',\n editor: 'number-stepper',\n })\n leftWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'topHeight',\n description: 'Top border height preserved when stretching.',\n editor: 'number-stepper',\n })\n topHeight: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'rightWidth',\n description: 'Right border width preserved when stretching.',\n editor: 'number-stepper',\n })\n rightWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'bottomHeight',\n description: 'Bottom border height preserved when stretching.',\n editor: 'number-stepper',\n })\n bottomHeight: number = 0;\n\n init(obj?: NinePatchParams) {\n if (!obj) return;\n this.resource = obj.resource;\n this.spriteName = obj.spriteName;\n this.leftWidth = obj.leftWidth;\n this.topHeight = obj.topHeight;\n this.rightWidth = obj.rightWidth;\n this.bottomHeight = obj.bottomHeight;\n }\n}\n","import { GameObject, decorators, resource, ComponentChanged, RESOURCE_TYPE, OBSERVER_TYPE } from '@combos-fun/engine';\nimport { RendererManager, ContainerManager, RendererSystem, Renderer, RESOURCE_KEY_SPLIT, Transform2D } from '@combos-fun/plugin-renderer';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\nimport NinePatchComponent from './component';\nimport { Texture } from 'pixi.js';\n\nconst resourceKeySplit = RESOURCE_KEY_SPLIT;\n\n@decorators.componentObserver({\n NinePatch: ['resource', 'spriteName', 'leftWidth', 'topHeight', 'rightWidth', 'bottomHeight'],\n})\nexport default class NinePatch extends Renderer {\n static systemName: string = 'NinePatch';\n name: string = 'NinePatch';\n ninePatch: { [propName: number]: NinePatchSprite } = {};\n renderSystem: RendererSystem;\n rendererManager: RendererManager;\n containerManager: ContainerManager;\n init() {\n this.renderSystem = this.game.getSystem(RendererSystem) as RendererSystem;\n this.renderSystem.rendererManager.register(this);\n }\n rendererUpdate(gameObject: GameObject) {\n const { width, height } = gameObject.getComponent(Transform2D)?.size ?? { width: 0, height: 0 };\n if (this.ninePatch[gameObject.id]) {\n this.ninePatch[gameObject.id].width = width;\n this.ninePatch[gameObject.id].height = height;\n }\n }\n async componentChanged(changed: ComponentChanged) {\n if (changed.componentName === 'NinePatch') {\n if (changed.type === OBSERVER_TYPE.ADD) {\n this.add(changed);\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.remove(changed);\n } else {\n this.remove(changed);\n this.add(changed);\n }\n }\n }\n async add(changed: ComponentChanged) {\n const component = changed.component as NinePatchComponent;\n const gameObjectId = changed.gameObject.id;\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { type, data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch resource load error`);\n return\n }\n let img: string | Texture;\n if (type === RESOURCE_TYPE.SPRITE) {\n img = component.resource + resourceKeySplit + component.spriteName;\n } else {\n img = Texture.from(data.image as HTMLImageElement);\n }\n const { leftWidth, topHeight, rightWidth, bottomHeight } = component;\n const np = new NinePatchSprite(img, leftWidth, topHeight, rightWidth, bottomHeight);\n\n this.ninePatch[changed.gameObject.id] = np;\n component.ninePatch = np;\n const parent = this.containerManager.getContainer(changed.gameObject.id);\n if (!parent) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch missing display container`);\n return;\n }\n parent.addChildAt(np, 0);\n }\n remove(changed: ComponentChanged) {\n const gameObjectId = changed.gameObject.id;\n this.increaseAsyncId(gameObjectId);\n const sprite = this.ninePatch[gameObjectId];\n if (sprite) {\n this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite);\n delete this.ninePatch[changed.gameObject.id];\n sprite.destroy({ children: true });\n }\n }\n}\n"],"names":["Component","__decorate","Field","NinePatch","RESOURCE_KEY_SPLIT","Renderer","RendererSystem","Transform2D","OBSERVER_TYPE","resource","RESOURCE_TYPE","Texture","NinePatchSprite","decorators"],"mappings":"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"}
@@ -1 +1 @@
1
- "use strict";var e=require("tslib"),t=require("@combos-fun/engine"),i=require("@combos-fun/inspector-decorator"),r=require("@combos-fun/plugin-renderer"),o=require("@combos-fun/renderer-adapter"),n=require("pixi.js");let s=class extends t.Component{constructor(){super(...arguments),this.resource="",this.spriteName="",this.leftWidth=0,this.topHeight=0,this.rightWidth=0,this.bottomHeight=0}static{this.componentName="NinePatch"}init(e){e&&(this.resource=e.resource,this.spriteName=e.spriteName,this.leftWidth=e.leftWidth,this.topHeight=e.topHeight,this.rightWidth=e.rightWidth,this.bottomHeight=e.bottomHeight)}};e.__decorate([i.Field({type:"string",group:"NinePatch",label:"resource",description:"Nine-patch image or atlas resource id.",editor:"text"})],s.prototype,"resource",void 0),e.__decorate([i.Field({type:"string",group:"NinePatch",label:"spriteName",description:"Optional atlas frame name for the nine-patch source.",editor:"text"})],s.prototype,"spriteName",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"leftWidth",description:"Left border width preserved when stretching.",editor:"number-stepper"})],s.prototype,"leftWidth",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"topHeight",description:"Top border height preserved when stretching.",editor:"number-stepper"})],s.prototype,"topHeight",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"rightWidth",description:"Right border width preserved when stretching.",editor:"number-stepper"})],s.prototype,"rightWidth",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"bottomHeight",description:"Bottom border height preserved when stretching.",editor:"number-stepper"})],s.prototype,"bottomHeight",void 0);const h=r.RESOURCE_KEY_SPLIT;let a=class extends r.Renderer{constructor(){super(...arguments),this.name="NinePatch",this.ninePatch={}}static{this.systemName="NinePatch"}init(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)}rendererUpdate(e){const{width:t,height:i}=e.transform.size;this.ninePatch[e.id]&&(this.ninePatch[e.id].width=t,this.ninePatch[e.id].height=i)}async componentChanged(e){"NinePatch"===e.componentName&&(e.type===t.OBSERVER_TYPE.ADD?this.add(e):e.type===t.OBSERVER_TYPE.REMOVE?this.remove(e):(this.remove(e),this.add(e)))}async add(e){const i=e.component,r=e.gameObject.id,s=this.increaseAsyncId(r),{type:a,data:c}=await t.resource.getResource(i.resource);if(!this.validateAsyncId(r,s))return;if(!c)return void console.error(`GameObject:${e.gameObject.name}'s NinePatch resource load error`);let d;d=a===t.RESOURCE_TYPE.SPRITE?i.resource+h+i.spriteName:n.Texture.from(c.image);const{leftWidth:p,topHeight:m,rightWidth:g,bottomHeight:u}=i,l=new o.NinePatch(d,p,m,g,u);this.ninePatch[e.gameObject.id]=l,i.ninePatch=l;const b=this.containerManager.getContainer(e.gameObject.id);b?b.addChildAt(l,0):console.error(`GameObject:${e.gameObject.name}'s NinePatch missing display container`)}remove(e){const t=e.gameObject.id;this.increaseAsyncId(t);const i=this.ninePatch[t];i&&(this.containerManager.getContainer(e.gameObject.id).removeChild(i),delete this.ninePatch[e.gameObject.id],i.destroy({children:!0}))}};a=e.__decorate([t.decorators.componentObserver({NinePatch:["resource","spriteName","leftWidth","topHeight","rightWidth","bottomHeight"]})],a);var c=a;exports.NinePatch=s,exports.NinePatchSystem=c;
1
+ "use strict";var e=require("tslib"),t=require("@combos-fun/engine"),i=require("@combos-fun/inspector-decorator"),r=require("@combos-fun/plugin-renderer"),o=require("@combos-fun/renderer-adapter"),n=require("pixi.js");let s=class extends t.Component{constructor(){super(...arguments),this.resource="",this.spriteName="",this.leftWidth=0,this.topHeight=0,this.rightWidth=0,this.bottomHeight=0}static{this.componentName="NinePatch"}init(e){e&&(this.resource=e.resource,this.spriteName=e.spriteName,this.leftWidth=e.leftWidth,this.topHeight=e.topHeight,this.rightWidth=e.rightWidth,this.bottomHeight=e.bottomHeight)}};e.__decorate([i.Field({type:"string",group:"NinePatch",label:"resource",description:"Nine-patch image or atlas resource id.",editor:"text"})],s.prototype,"resource",void 0),e.__decorate([i.Field({type:"string",group:"NinePatch",label:"spriteName",description:"Optional atlas frame name for the nine-patch source.",editor:"text"})],s.prototype,"spriteName",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"leftWidth",description:"Left border width preserved when stretching.",editor:"number-stepper"})],s.prototype,"leftWidth",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"topHeight",description:"Top border height preserved when stretching.",editor:"number-stepper"})],s.prototype,"topHeight",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"rightWidth",description:"Right border width preserved when stretching.",editor:"number-stepper"})],s.prototype,"rightWidth",void 0),e.__decorate([i.Field({type:"number",step:1,min:0,group:"NinePatch",label:"bottomHeight",description:"Bottom border height preserved when stretching.",editor:"number-stepper"})],s.prototype,"bottomHeight",void 0);const h=r.RESOURCE_KEY_SPLIT;let a=class extends r.Renderer{constructor(){super(...arguments),this.name="NinePatch",this.ninePatch={}}static{this.systemName="NinePatch"}init(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)}rendererUpdate(e){const{width:t,height:i}=e.getComponent(r.Transform2D)?.size??{width:0,height:0};this.ninePatch[e.id]&&(this.ninePatch[e.id].width=t,this.ninePatch[e.id].height=i)}async componentChanged(e){"NinePatch"===e.componentName&&(e.type===t.OBSERVER_TYPE.ADD?this.add(e):e.type===t.OBSERVER_TYPE.REMOVE?this.remove(e):(this.remove(e),this.add(e)))}async add(e){const i=e.component,r=e.gameObject.id,s=this.increaseAsyncId(r),{type:a,data:c}=await t.resource.getResource(i.resource);if(!this.validateAsyncId(r,s))return;if(!c)return void console.error(`GameObject:${e.gameObject.name}'s NinePatch resource load error`);let d;d=a===t.RESOURCE_TYPE.SPRITE?i.resource+h+i.spriteName:n.Texture.from(c.image);const{leftWidth:p,topHeight:m,rightWidth:g,bottomHeight:u}=i,l=new o.NinePatch(d,p,m,g,u);this.ninePatch[e.gameObject.id]=l,i.ninePatch=l;const b=this.containerManager.getContainer(e.gameObject.id);b?b.addChildAt(l,0):console.error(`GameObject:${e.gameObject.name}'s NinePatch missing display container`)}remove(e){const t=e.gameObject.id;this.increaseAsyncId(t);const i=this.ninePatch[t];i&&(this.containerManager.getContainer(e.gameObject.id).removeChild(i),delete this.ninePatch[e.gameObject.id],i.destroy({children:!0}))}};a=e.__decorate([t.decorators.componentObserver({NinePatch:["resource","spriteName","leftWidth","topHeight","rightWidth","bottomHeight"]})],a);var c=a;exports.NinePatch=s,exports.NinePatchSystem=c;
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import { Component, OBSERVER_TYPE, resource, RESOURCE_TYPE, decorators } from '@combos-fun/engine';
3
3
  import { Field } from '@combos-fun/inspector-decorator';
4
- import { Renderer, RendererSystem, RESOURCE_KEY_SPLIT } from '@combos-fun/plugin-renderer';
4
+ import { Renderer, RendererSystem, Transform2D, RESOURCE_KEY_SPLIT } from '@combos-fun/plugin-renderer';
5
5
  import { NinePatch as NinePatch$2 } from '@combos-fun/renderer-adapter';
6
6
  import { Texture } from 'pixi.js';
7
7
 
@@ -103,7 +103,7 @@ let NinePatch = class NinePatch extends Renderer {
103
103
  this.renderSystem.rendererManager.register(this);
104
104
  }
105
105
  rendererUpdate(gameObject) {
106
- const { width, height } = gameObject.transform.size;
106
+ const { width, height } = gameObject.getComponent(Transform2D)?.size ?? { width: 0, height: 0 };
107
107
  if (this.ninePatch[gameObject.id]) {
108
108
  this.ninePatch[gameObject.id].width = width;
109
109
  this.ninePatch[gameObject.id].height = height;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-renderer-nine-patch.esm.js","sources":["../lib/component.ts","../lib/system.ts"],"sourcesContent":["import { Component } from '@combos-fun/engine';\nimport { Field } from '@combos-fun/inspector-decorator';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\n\nexport interface NinePatchParams {\n resource: string;\n spriteName?: string;\n leftWidth?: number;\n topHeight?: number;\n rightWidth?: number;\n bottomHeight?: number;\n}\n\nexport default class NinePatch extends Component<NinePatchParams> {\n static componentName: string = 'NinePatch';\n ninePatch: NinePatchSprite;\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'resource',\n description: 'Nine-patch image or atlas resource id.',\n editor: 'text',\n })\n resource: string = '';\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'spriteName',\n description: 'Optional atlas frame name for the nine-patch source.',\n editor: 'text',\n })\n spriteName: string = '';\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'leftWidth',\n description: 'Left border width preserved when stretching.',\n editor: 'number-stepper',\n })\n leftWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'topHeight',\n description: 'Top border height preserved when stretching.',\n editor: 'number-stepper',\n })\n topHeight: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'rightWidth',\n description: 'Right border width preserved when stretching.',\n editor: 'number-stepper',\n })\n rightWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'bottomHeight',\n description: 'Bottom border height preserved when stretching.',\n editor: 'number-stepper',\n })\n bottomHeight: number = 0;\n\n init(obj?: NinePatchParams) {\n if (!obj) return;\n this.resource = obj.resource;\n this.spriteName = obj.spriteName;\n this.leftWidth = obj.leftWidth;\n this.topHeight = obj.topHeight;\n this.rightWidth = obj.rightWidth;\n this.bottomHeight = obj.bottomHeight;\n }\n}\n","import { GameObject, decorators, resource, ComponentChanged, RESOURCE_TYPE, OBSERVER_TYPE } from '@combos-fun/engine';\nimport { RendererManager, ContainerManager, RendererSystem, Renderer, RESOURCE_KEY_SPLIT } from '@combos-fun/plugin-renderer';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\nimport NinePatchComponent from './component';\nimport { Texture } from 'pixi.js';\n\nconst resourceKeySplit = RESOURCE_KEY_SPLIT;\n\n@decorators.componentObserver({\n NinePatch: ['resource', 'spriteName', 'leftWidth', 'topHeight', 'rightWidth', 'bottomHeight'],\n})\nexport default class NinePatch extends Renderer {\n static systemName: string = 'NinePatch';\n name: string = 'NinePatch';\n ninePatch: { [propName: number]: NinePatchSprite } = {};\n renderSystem: RendererSystem;\n rendererManager: RendererManager;\n containerManager: ContainerManager;\n init() {\n this.renderSystem = this.game.getSystem(RendererSystem) as RendererSystem;\n this.renderSystem.rendererManager.register(this);\n }\n rendererUpdate(gameObject: GameObject) {\n const { width, height } = gameObject.transform.size;\n if (this.ninePatch[gameObject.id]) {\n this.ninePatch[gameObject.id].width = width;\n this.ninePatch[gameObject.id].height = height;\n }\n }\n async componentChanged(changed: ComponentChanged) {\n if (changed.componentName === 'NinePatch') {\n if (changed.type === OBSERVER_TYPE.ADD) {\n this.add(changed);\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.remove(changed);\n } else {\n this.remove(changed);\n this.add(changed);\n }\n }\n }\n async add(changed: ComponentChanged) {\n const component = changed.component as NinePatchComponent;\n const gameObjectId = changed.gameObject.id;\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { type, data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch resource load error`);\n return\n }\n let img: string | Texture;\n if (type === RESOURCE_TYPE.SPRITE) {\n img = component.resource + resourceKeySplit + component.spriteName;\n } else {\n img = Texture.from(data.image as HTMLImageElement);\n }\n const { leftWidth, topHeight, rightWidth, bottomHeight } = component;\n const np = new NinePatchSprite(img, leftWidth, topHeight, rightWidth, bottomHeight);\n\n this.ninePatch[changed.gameObject.id] = np;\n component.ninePatch = np;\n const parent = this.containerManager.getContainer(changed.gameObject.id);\n if (!parent) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch missing display container`);\n return;\n }\n parent.addChildAt(np, 0);\n }\n remove(changed: ComponentChanged) {\n const gameObjectId = changed.gameObject.id;\n this.increaseAsyncId(gameObjectId);\n const sprite = this.ninePatch[gameObjectId];\n if (sprite) {\n this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite);\n delete this.ninePatch[changed.gameObject.id];\n sprite.destroy({ children: true });\n }\n }\n}\n"],"names":["NinePatch","NinePatchSprite"],"mappings":"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"}
1
+ {"version":3,"file":"plugin-renderer-nine-patch.esm.js","sources":["../lib/component.ts","../lib/system.ts"],"sourcesContent":["import { Component } from '@combos-fun/engine';\nimport { Field } from '@combos-fun/inspector-decorator';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\n\nexport interface NinePatchParams {\n resource: string;\n spriteName?: string;\n leftWidth?: number;\n topHeight?: number;\n rightWidth?: number;\n bottomHeight?: number;\n}\n\nexport default class NinePatch extends Component<NinePatchParams> {\n static componentName: string = 'NinePatch';\n ninePatch: NinePatchSprite;\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'resource',\n description: 'Nine-patch image or atlas resource id.',\n editor: 'text',\n })\n resource: string = '';\n\n @Field({\n type: 'string',\n group: 'NinePatch',\n label: 'spriteName',\n description: 'Optional atlas frame name for the nine-patch source.',\n editor: 'text',\n })\n spriteName: string = '';\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'leftWidth',\n description: 'Left border width preserved when stretching.',\n editor: 'number-stepper',\n })\n leftWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'topHeight',\n description: 'Top border height preserved when stretching.',\n editor: 'number-stepper',\n })\n topHeight: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'rightWidth',\n description: 'Right border width preserved when stretching.',\n editor: 'number-stepper',\n })\n rightWidth: number = 0;\n\n @Field({\n type: 'number',\n step: 1,\n min: 0,\n group: 'NinePatch',\n label: 'bottomHeight',\n description: 'Bottom border height preserved when stretching.',\n editor: 'number-stepper',\n })\n bottomHeight: number = 0;\n\n init(obj?: NinePatchParams) {\n if (!obj) return;\n this.resource = obj.resource;\n this.spriteName = obj.spriteName;\n this.leftWidth = obj.leftWidth;\n this.topHeight = obj.topHeight;\n this.rightWidth = obj.rightWidth;\n this.bottomHeight = obj.bottomHeight;\n }\n}\n","import { GameObject, decorators, resource, ComponentChanged, RESOURCE_TYPE, OBSERVER_TYPE } from '@combos-fun/engine';\nimport { RendererManager, ContainerManager, RendererSystem, Renderer, RESOURCE_KEY_SPLIT, Transform2D } from '@combos-fun/plugin-renderer';\nimport { NinePatch as NinePatchSprite } from '@combos-fun/renderer-adapter';\nimport NinePatchComponent from './component';\nimport { Texture } from 'pixi.js';\n\nconst resourceKeySplit = RESOURCE_KEY_SPLIT;\n\n@decorators.componentObserver({\n NinePatch: ['resource', 'spriteName', 'leftWidth', 'topHeight', 'rightWidth', 'bottomHeight'],\n})\nexport default class NinePatch extends Renderer {\n static systemName: string = 'NinePatch';\n name: string = 'NinePatch';\n ninePatch: { [propName: number]: NinePatchSprite } = {};\n renderSystem: RendererSystem;\n rendererManager: RendererManager;\n containerManager: ContainerManager;\n init() {\n this.renderSystem = this.game.getSystem(RendererSystem) as RendererSystem;\n this.renderSystem.rendererManager.register(this);\n }\n rendererUpdate(gameObject: GameObject) {\n const { width, height } = gameObject.getComponent(Transform2D)?.size ?? { width: 0, height: 0 };\n if (this.ninePatch[gameObject.id]) {\n this.ninePatch[gameObject.id].width = width;\n this.ninePatch[gameObject.id].height = height;\n }\n }\n async componentChanged(changed: ComponentChanged) {\n if (changed.componentName === 'NinePatch') {\n if (changed.type === OBSERVER_TYPE.ADD) {\n this.add(changed);\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.remove(changed);\n } else {\n this.remove(changed);\n this.add(changed);\n }\n }\n }\n async add(changed: ComponentChanged) {\n const component = changed.component as NinePatchComponent;\n const gameObjectId = changed.gameObject.id;\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { type, data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch resource load error`);\n return\n }\n let img: string | Texture;\n if (type === RESOURCE_TYPE.SPRITE) {\n img = component.resource + resourceKeySplit + component.spriteName;\n } else {\n img = Texture.from(data.image as HTMLImageElement);\n }\n const { leftWidth, topHeight, rightWidth, bottomHeight } = component;\n const np = new NinePatchSprite(img, leftWidth, topHeight, rightWidth, bottomHeight);\n\n this.ninePatch[changed.gameObject.id] = np;\n component.ninePatch = np;\n const parent = this.containerManager.getContainer(changed.gameObject.id);\n if (!parent) {\n console.error(`GameObject:${changed.gameObject.name}'s NinePatch missing display container`);\n return;\n }\n parent.addChildAt(np, 0);\n }\n remove(changed: ComponentChanged) {\n const gameObjectId = changed.gameObject.id;\n this.increaseAsyncId(gameObjectId);\n const sprite = this.ninePatch[gameObjectId];\n if (sprite) {\n this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite);\n delete this.ninePatch[changed.gameObject.id];\n sprite.destroy({ children: true });\n }\n }\n}\n"],"names":["NinePatch","NinePatchSprite"],"mappings":";;;;;;;kBAac,MAAO,SAAU,SAAQ,SAA0B,CAAA;AAAjE,IAAA,WAAA,GAAA;;QAWE,IAAA,CAAA,QAAQ,GAAW,EAAE;QASrB,IAAA,CAAA,UAAU,GAAW,EAAE;QAWvB,IAAA,CAAA,SAAS,GAAW,CAAC;QAWrB,IAAA,CAAA,SAAS,GAAW,CAAC;QAWrB,IAAA,CAAA,UAAU,GAAW,CAAC;QAWtB,IAAA,CAAA,YAAY,GAAW,CAAC;IAW1B;aA1ES,IAAA,CAAA,aAAa,GAAW,WAAX,CAAuB;AAiE3C,IAAA,IAAI,CAAC,GAAqB,EAAA;AACxB,QAAA,IAAI,CAAC,GAAG;YAAE;AACV,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ;AAC5B,QAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU;AAChC,QAAA,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS;AAC9B,QAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU;AAChC,QAAA,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY;IACtC;;AA/DA,UAAA,CAAA;AAPC,IAAA,KAAK,CAAC;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,UAAU;AACjB,QAAA,WAAW,EAAE,wCAAwC;AACrD,QAAA,MAAM,EAAE,MAAM;KACf;AACqB,CAAA,EAAAA,WAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAStB,UAAA,CAAA;AAPC,IAAA,KAAK,CAAC;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,YAAY;AACnB,QAAA,WAAW,EAAE,sDAAsD;AACnE,QAAA,MAAM,EAAE,MAAM;KACf;AACuB,CAAA,EAAAA,WAAA,CAAA,SAAA,EAAA,YAAA,EAAA,MAAA,CAAA;AAWxB,UAAA,CAAA;AATC,IAAA,KAAK,CAAC;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,GAAG,EAAE,CAAC;AACN,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,WAAW,EAAE,8CAA8C;AAC3D,QAAA,MAAM,EAAE,gBAAgB;KACzB;AACqB,CAAA,EAAAA,WAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAWtB,UAAA,CAAA;AATC,IAAA,KAAK,CAAC;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,GAAG,EAAE,CAAC;AACN,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,WAAW,EAAE,8CAA8C;AAC3D,QAAA,MAAM,EAAE,gBAAgB;KACzB;AACqB,CAAA,EAAAA,WAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAWtB,UAAA,CAAA;AATC,IAAA,KAAK,CAAC;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,GAAG,EAAE,CAAC;AACN,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,YAAY;AACnB,QAAA,WAAW,EAAE,+CAA+C;AAC5D,QAAA,MAAM,EAAE,gBAAgB;KACzB;AACsB,CAAA,EAAAA,WAAA,CAAA,SAAA,EAAA,YAAA,EAAA,MAAA,CAAA;AAWvB,UAAA,CAAA;AATC,IAAA,KAAK,CAAC;AACL,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,IAAI,EAAE,CAAC;AACP,QAAA,GAAG,EAAE,CAAC;AACN,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,WAAW,EAAE,iDAAiD;AAC9D,QAAA,MAAM,EAAE,gBAAgB;KACzB;AACwB,CAAA,EAAAA,WAAA,CAAA,SAAA,EAAA,cAAA,EAAA,MAAA,CAAA;;ACvE3B,MAAM,gBAAgB,GAAG,kBAAkB;AAK5B,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,QAAQ,CAAA;AAAhC,IAAA,WAAA,GAAA;;QAEb,IAAA,CAAA,IAAI,GAAW,WAAW;QAC1B,IAAA,CAAA,SAAS,GAA4C,EAAE;IAiEzD;aAnES,IAAA,CAAA,UAAU,GAAW,WAAX,CAAuB;IAMxC,IAAI,GAAA;QACF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAmB;QACzE,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClD;AACA,IAAA,cAAc,CAAC,UAAsB,EAAA;QACnC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;QAC/F,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;YACjC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK;YAC3C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,MAAM;QAC/C;IACF;IACA,MAAM,gBAAgB,CAAC,OAAyB,EAAA;AAC9C,QAAA,IAAI,OAAO,CAAC,aAAa,KAAK,WAAW,EAAE;YACzC,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,GAAG,EAAE;AACtC,gBAAA,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACnB;iBAAO,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,MAAM,EAAE;AAChD,gBAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YACtB;iBAAO;AACL,gBAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;AACpB,gBAAA,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACnB;QACF;IACF;IACA,MAAM,GAAG,CAAC,OAAyB,EAAA;AACjC,QAAA,MAAM,SAAS,GAAG,OAAO,CAAC,SAA+B;AACzD,QAAA,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,EAAE;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;AAClD,QAAA,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC;QACrE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC;YAAE;QAClD,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,CAAC,KAAK,CAAC,CAAA,WAAA,EAAc,OAAO,CAAC,UAAU,CAAC,IAAI,CAAA,gCAAA,CAAkC,CAAC;YACtF;QACF;AACA,QAAA,IAAI,GAAqB;AACzB,QAAA,IAAI,IAAI,KAAK,aAAa,CAAC,MAAM,EAAE;YACjC,GAAG,GAAG,SAAS,CAAC,QAAQ,GAAG,gBAAgB,GAAG,SAAS,CAAC,UAAU;QACpE;aAAO;YACL,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAyB,CAAC;QACpD;QACA,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,SAAS;AACpE,QAAA,MAAM,EAAE,GAAG,IAAIC,WAAe,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC;QAEnF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE;AAC1C,QAAA,SAAS,CAAC,SAAS,GAAG,EAAE;AACxB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACxE,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,CAAA,WAAA,EAAc,OAAO,CAAC,UAAU,CAAC,IAAI,CAAA,sCAAA,CAAwC,CAAC;YAC5F;QACF;AACA,QAAA,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1B;AACA,IAAA,MAAM,CAAC,OAAyB,EAAA;AAC9B,QAAA,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,EAAE;AAC1C,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;QAC3C,IAAI,MAAM,EAAE;AACV,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC;YAC7E,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACpC;IACF;;AAnEmB,SAAS,GAAA,UAAA,CAAA;IAH7B,UAAU,CAAC,iBAAiB,CAAC;AAC5B,QAAA,SAAS,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,CAAC;KAC9F;AACoB,CAAA,EAAA,SAAS,CAoE7B;wBApEoB,SAAS;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@combos-fun/plugin-renderer-nine-patch",
3
- "version": "0.0.54",
3
+ "version": "0.2.0",
4
4
  "description": "9-patch (nine-slice) panels",
5
5
  "main": "index.js",
6
6
  "module": "dist/plugin-renderer-nine-patch.esm.js",
@@ -37,10 +37,10 @@
37
37
  "author": "sun668 <q947692259@gmail.com>",
38
38
  "dependencies": {
39
39
  "pixi.js": "^8.18.1",
40
- "@combos-fun/plugin-renderer": "0.0.54",
41
- "@combos-fun/renderer-adapter": "0.0.54",
42
- "@combos-fun/inspector-decorator": "0.0.54",
43
- "@combos-fun/engine": "0.0.54"
40
+ "@combos-fun/engine": "0.2.0",
41
+ "@combos-fun/renderer-adapter": "0.2.0",
42
+ "@combos-fun/plugin-renderer": "0.2.0",
43
+ "@combos-fun/inspector-decorator": "0.2.0"
44
44
  },
45
45
  "scripts": {
46
46
  "build": "node ../../scripts/build-package.mjs"