refactor: 将 render-core, render-elements, render-assets, render-style 合并

This commit is contained in:
unanmed 2026-03-08 16:50:44 +08:00
parent 93fb788bef
commit 744a21e042
105 changed files with 149 additions and 192 deletions

View File

@ -2,7 +2,7 @@ import {
IRect,
ITextureRenderable,
SizedCanvasImageSource
} from '@motajs/render-assets';
} from '@motajs/render';
import {
AutotileConnection,
AutotileType,

View File

@ -5,7 +5,7 @@ import {
ITextureStreamComposer,
TextureMaxRectsStreamComposer,
SizedCanvasImageSource
} from '@motajs/render-assets';
} from '@motajs/render';
import { IAssetBuilder, IMaterialGetter, ITrackedAssetData } from './types';
import { logger, PrivateListDirtyTracker } from '@motajs/common';

View File

@ -1,4 +1,4 @@
import { ITexture } from '@motajs/render-assets';
import { ITexture } from '@motajs/render';
import { materials } from './ins';
import { IBlockIdentifier, IIndexedIdentifier } from './types';
import { isNil } from 'lodash-es';

View File

@ -9,7 +9,7 @@ import {
TextureGridSplitter,
TextureRowSplitter,
TextureStore
} from '@motajs/render-assets';
} from '@motajs/render';
import {
IBlockIdentifier,
IMaterialData,

View File

@ -5,7 +5,7 @@ import {
ITextureRenderable,
ITextureStore,
SizedCanvasImageSource
} from '@motajs/render-assets';
} from '@motajs/render';
export const enum BlockCls {
Unknown,

View File

@ -1,4 +1,4 @@
import { ITexture } from '@motajs/render-assets';
import { ITexture } from '@motajs/render';
import { BlockCls } from './types';
export function getClsByString(cls: Cls): BlockCls {

View File

@ -4,8 +4,7 @@
"@motajs/client-base": "workspace:*",
"@motajs/common": "workspace:*",
"@motajs/render": "workspace:*",
"@motajs/render-assets": "workspace:*",
"@motajs/render-core": "workspace:*",
"@motajs/render-vue": "workspace:*",
"@motajs/legacy-common": "workspace:*",
"@motajs/legacy-ui": "workspace:*",
"@motajs/types": "workspace:*",

View File

@ -9,7 +9,7 @@ import {
openReplay,
openStatistics
} from './ui';
import { ElementLocator } from '@motajs/render-core';
import { ElementLocator } from '@motajs/render';
export function createAction() {
gameKey

View File

@ -1,4 +1,4 @@
import { DefaultProps, ElementLocator, Font } from '@motajs/render';
import { ElementLocator, Font } from '@motajs/render';
import { computed, defineComponent, reactive, ref } from 'vue';
import { Background, Selection } from './misc';
import { TextContent, TextContentProps } from './textbox';
@ -7,6 +7,7 @@ import { Page, PageExpose } from './page';
import { GameUI, IUIMountable, SetupComponentOptions } from '@motajs/system-ui';
import { useKey } from '../use';
import { sleep } from 'mutate-animate';
import { DefaultProps } from '@motajs/render-vue';
export interface ConfirmBoxProps extends DefaultProps, TextContentProps {
/** 确认框的提示文本内容 */

View File

@ -3,8 +3,7 @@ import { SetupComponentOptions } from '@motajs/system-ui';
import { clamp, isNil } from 'lodash-es';
import { computed, defineComponent, onMounted, ref, watch } from 'vue';
import { Scroll, ScrollExpose } from './scroll';
import { Font } from '@motajs/render-style';
import { MotaOffscreenCanvas2D } from '@motajs/render-core';
import { MotaOffscreenCanvas2D, Font } from '@motajs/render';
import {
HALF_STATUS_WIDTH,
STATUS_BAR_HEIGHT,

View File

@ -1,4 +1,5 @@
import { DefaultProps, ElementLocator, GraphicPropsBase } from '@motajs/render';
import { ElementLocator } from '@motajs/render';
import { DefaultProps, GraphicPropsBase } from '@motajs/render-vue';
import { SetupComponentOptions } from '@motajs/system-ui';
import {
computed,

View File

@ -1,15 +1,15 @@
import { DefaultProps } from '@motajs/render-vue';
import { computed, defineComponent, onUnmounted, ref, watch } from 'vue';
import { TextContent, TextContentProps } from './textbox';
import { RectRCircleParams } from '@motajs/render-elements';
import {
Container,
ElementLocator,
MotaRenderer,
RenderItem,
Transform
} from '@motajs/render-core';
import { Font } from '@motajs/render-style';
Transform,
Font,
RectRCircleParams
} from '@motajs/render';
import { transitionedColor, useKey } from '../use';
import { linear } from 'mutate-animate';
import { Background, Selection } from './misc';

View File

@ -1,8 +1,7 @@
import { DefaultProps } from '@motajs/render-vue';
import { computed, defineComponent, ref, SlotsType, VNode } from 'vue';
import { Selection } from './misc';
import { ElementLocator } from '@motajs/render-core';
import { Font } from '@motajs/render-style';
import { ElementLocator, Font } from '@motajs/render';
import { SetupComponentOptions } from '@motajs/system-ui';
import { Scroll } from './scroll';

View File

@ -1,12 +1,6 @@
import {
DefaultProps,
ElementLocator,
onTick,
PathProps,
Sprite
} from '@motajs/render';
import { ElementLocator, Sprite, MotaOffscreenCanvas2D } from '@motajs/render';
import { DefaultProps, PathProps, onTick } from '@motajs/render-vue';
import { computed, defineComponent, ref, SetupContext, watch } from 'vue';
import { MotaOffscreenCanvas2D } from '@motajs/render';
import { TextContent, TextContentProps } from './textbox';
import { Scroll, ScrollExpose, ScrollProps } from './scroll';
import { transitioned } from '../use';

View File

@ -9,8 +9,9 @@ import {
watch
} from 'vue';
import { clamp, isNil } from 'lodash-es';
import { DefaultProps, ElementLocator, Font } from '@motajs/render';
import { ElementLocator, Font } from '@motajs/render';
import { SetupComponentOptions } from '@motajs/system-ui';
import { DefaultProps } from '@motajs/render-vue';
/** 圆角矩形页码距离容器的边框大小,与 pageSize 相乘 */
const RECT_PAD = 0.1;

View File

@ -12,7 +12,6 @@ import {
} from 'vue';
import {
Container,
DefaultProps,
ElementLocator,
RenderItem,
Sprite,
@ -31,6 +30,7 @@ import { hyper, linear, Transition } from 'mutate-animate';
import { clamp } from 'lodash-es';
import { transitioned } from '../use';
import { SetupComponentOptions } from '@motajs/system-ui';
import { DefaultProps } from '@motajs/render-vue';
export const enum ScrollDirection {
Horizontal,

View File

@ -2,7 +2,6 @@ import {
ElementLocator,
Font,
Sprite,
DefaultProps,
Text,
MotaOffscreenCanvas2D
} from '@motajs/render';
@ -32,6 +31,7 @@ import {
} from './textboxTyper';
import { SetupComponentOptions } from '@motajs/system-ui';
import { texture } from '../elements';
import { DefaultProps } from '@motajs/render-vue';
// todo: TextContent 应该改成渲染元素?

View File

@ -1,8 +1,9 @@
import { logger } from '@motajs/common';
import { Font, onTick, MotaOffscreenCanvas2D } from '@motajs/render';
import { Font, MotaOffscreenCanvas2D } from '@motajs/render';
import EventEmitter from 'eventemitter3';
import { isNil } from 'lodash-es';
import { RenderableData, AutotileRenderable, texture } from '../elements';
import { onTick } from '@motajs/render-vue';
/** 文字的安全填充,会填充在文字的上侧和下侧,防止削顶和削底 */
const SAFE_PAD = 1;

View File

@ -1,8 +1,4 @@
import {
ElementLocator,
MotaOffscreenCanvas2D,
Sprite
} from '@motajs/render-core';
import { ElementLocator, MotaOffscreenCanvas2D, Sprite } from '@motajs/render';
import { SpriteProps } from '@motajs/render-vue';
import { defineComponent, ref, watch } from 'vue';
import { SetupComponentOptions } from '@motajs/system-ui';

View File

@ -1,4 +1,4 @@
import { DefaultProps, ElementLocator, Font } from '@motajs/render';
import { ElementLocator, Font } from '@motajs/render';
import { logger } from '@motajs/common';
import { computed, defineComponent, onUnmounted, ref } from 'vue';
import { transitioned } from '../use';
@ -6,6 +6,7 @@ import { hyper } from 'mutate-animate';
import { debounce } from 'lodash-es';
import { texture } from '../elements';
import { SetupComponentOptions } from '@motajs/system-ui';
import { DefaultProps } from '@motajs/render-vue';
export interface TipProps extends DefaultProps {
/** 显示的位置 */

View File

@ -5,7 +5,7 @@ import {
RenderItem,
Transform,
MotaOffscreenCanvas2D
} from '@motajs/render-core';
} from '@motajs/render';
import { HeroRenderer } from './hero';
import { ILayerGroupRenderExtends, LayerGroup } from './layer';

View File

@ -1,6 +1,6 @@
import { EventEmitter } from 'eventemitter3';
import { logger } from '@motajs/common';
import { MotaOffscreenCanvas2D, RenderItem } from '@motajs/render-core';
import { MotaOffscreenCanvas2D, RenderItem } from '@motajs/render';
interface BlockCacherEvent {
split: [];

View File

@ -1,6 +1,5 @@
import { logger } from '@motajs/common';
import { MotaOffscreenCanvas2D } from '@motajs/render-core';
import { SizedCanvasImageSource } from '@motajs/render-assets';
import { MotaOffscreenCanvas2D, SizedCanvasImageSource } from '@motajs/render';
// 经过测试https://www.measurethat.net/Benchmarks/Show/30741/1/drawimage-img-vs-canvas-vs-bitmap-cropping-fix-loading
// 得出结论ImageBitmap和Canvas的绘制性能不如Image于是直接画Image就行所以缓存基本上就是存Image

View File

@ -1,5 +1,5 @@
import { Animation, TimingFn, Transition } from 'mutate-animate';
import { RenderItem, Transform } from '@motajs/render-core';
import { RenderItem, Transform } from '@motajs/render';
import { logger } from '@motajs/common';
import EventEmitter from 'eventemitter3';

View File

@ -4,7 +4,7 @@ import {
MotaOffscreenCanvas2D,
Transform,
transformCanvas
} from '@motajs/render-core';
} from '@motajs/render';
import { logger } from '@motajs/common';
import EventEmitter from 'eventemitter3';
import { isNil } from 'lodash-es';

View File

@ -1,5 +1,5 @@
import EventEmitter from 'eventemitter3';
import { RenderItem } from '@motajs/render-core';
import { RenderItem } from '@motajs/render';
export interface IAnimateFrame {
updateFrameAnimate(frame: number, time: number): void;

View File

@ -1,5 +1,4 @@
import { RenderAdapter } from '@motajs/render-core';
import { SizedCanvasImageSource } from '@motajs/render-assets';
import { SizedCanvasImageSource, RenderAdapter } from '@motajs/render';
import { logger } from '@motajs/common';
import { ILayerRenderExtends, Layer, LayerMovingRenderable } from './layer';
import EventEmitter from 'eventemitter3';

View File

@ -6,7 +6,7 @@ import {
RenderItem,
Transform,
RenderAdapter
} from '@motajs/render-core';
} from '@motajs/render';
import { logger } from '@motajs/common';
import { sleep, TimingFn } from 'mutate-animate';
import { RenderableData, texture } from './cache';

View File

@ -4,9 +4,9 @@ import {
RenderItem,
RenderItemPosition,
MotaOffscreenCanvas2D,
Transform
} from '@motajs/render-core';
import { SizedCanvasImageSource } from '@motajs/render-assets';
Transform,
SizedCanvasImageSource
} from '@motajs/render';
import { isNil } from 'lodash-es';
import { RenderableData, AutotileRenderable, texture } from './cache';
import { IAnimateFrame, renderEmits } from './frame';

View File

@ -1,6 +1,5 @@
import { BaseProps, TagDefine } from '@motajs/render-vue';
import { ERenderItemEvent, Transform } from '@motajs/render-core';
import { CanvasStyle } from '@motajs/render-assets';
import { ERenderItemEvent, Transform, CanvasStyle } from '@motajs/render';
import {
ILayerGroupRenderExtends,
FloorLayer,

View File

@ -1,4 +1,4 @@
import { RenderAdapter } from '@motajs/render-core';
import { RenderAdapter } from '@motajs/render';
import { FloorViewport } from './viewport';
export function disableViewport() {

View File

@ -1,4 +1,4 @@
import { RenderAdapter } from '@motajs/render-core';
import { RenderAdapter } from '@motajs/render';
import { HeroRenderer } from './hero';
import { ILayerGroupRenderExtends, LayerGroup } from './layer';
import { LayerGroupFloorBinder } from './layer';

View File

@ -1,4 +1,4 @@
import { Shader, ShaderProgram } from '@motajs/render-core';
import { Shader, ShaderProgram } from '@motajs/render';
export abstract class EffectBase<T> {
/** 当前使用的程序 */

View File

@ -2,7 +2,7 @@ import {
ITransformUpdatable,
ShaderProgram,
Transform3D
} from '@motajs/render-core';
} from '@motajs/render';
import { EffectBase } from './base';
export class Image3DEffect

View File

@ -1,4 +1,4 @@
import { createApp, Font } from '@motajs/render';
import { Font } from '@motajs/render';
import { defineComponent } from 'vue';
import { DEFAULT_FONT, MAIN_HEIGHT, MAIN_WIDTH } from './shared';
import { hook, loading } from '@user/data-base';
@ -10,6 +10,7 @@ import { sceneController } from './scene';
import { GameTitleUI } from './ui/title';
import { createWeather } from './weather';
import { createMainExtension } from './commonIns';
import { createApp } from '@motajs/render-vue';
export function createGameRenderer() {
const App = defineComponent(_props => {

View File

@ -1,10 +1,10 @@
import {
wrapInstancedComponent,
MotaOffscreenCanvas2D,
RenderItem,
RenderItemPosition,
Transform
} from '@motajs/render';
import { wrapInstancedComponent } from '@motajs/render-vue';
// 渲染端的向后兼容用,会充当两个版本间过渡的作用
class Change extends RenderItem {

View File

@ -1,4 +1,4 @@
import { MotaOffscreenCanvas2D, RenderItem } from '@motajs/render-core';
import { MotaOffscreenCanvas2D, RenderItem } from '@motajs/render';
import { ILayerState } from '@user/data-state';
import { IMapRenderer } from './types';
import { ElementNamespace, ComponentInternalInstance } from 'vue';

View File

@ -13,11 +13,7 @@ import { IMapRenderer, IMapRendererTicker, IMovingBlock } from '../types';
import { isNil } from 'lodash-es';
import { IHookController, logger } from '@motajs/common';
import { BlockCls, IMaterialFramedData } from '@user/client-base';
import {
ITexture,
ITextureSplitter,
TextureRowSplitter
} from '@motajs/render-assets';
import { ITexture, ITextureSplitter, TextureRowSplitter } from '@motajs/render';
import { IMapHeroRenderer } from './types';
import { TimingFn } from 'mutate-animate';

View File

@ -7,7 +7,7 @@ import {
IMapVertexBlock
} from '../types';
import { IMapTextArea, IMapTextRenderable, IOnMapTextRenderer } from './types';
import { ITransformUpdatable, Transform } from '@motajs/render-core';
import { ITransformUpdatable, Transform } from '@motajs/render';
export class OnMapTextRenderer
implements IOnMapTextRenderer, ITransformUpdatable<Transform>
@ -116,6 +116,7 @@ export class OnMapTextRenderer
(e * renderWidth) / 2,
(f * renderHeight) / 2
);
// 由于 WebGL 坐标系与 Canvas2D 坐标系不一样,所以还需要变换一下
ctx.scale(1, -1);
// draw text in each block

View File

@ -1,11 +1,11 @@
import { ITexture } from '@motajs/render-assets';
import { ITexture, Font } from '@motajs/render';
import {
FaceDirection,
HeroAnimateDirection,
IHeroState,
IMapLayer
} from '@user/data-state';
import { Font } from '@motajs/render-style';
import { IMapRenderResult } from '../types';
export interface IMapExtensionManager {

View File

@ -2,8 +2,9 @@ import {
ITextureAnimater,
ITextureRenderable,
SizedCanvasImageSource,
TextureColumnAnimater
} from '@motajs/render-assets';
TextureColumnAnimater,
Transform
} from '@motajs/render';
import {
AutotileProcessor,
BlockCls,
@ -45,7 +46,6 @@ import {
DYNAMIC_RESERVE,
MOVING_TOLERANCE
} from '../shared';
import { Transform } from '@motajs/render-core';
import { MapViewport } from './viewport';
import { INSTANCED_COUNT } from './constant';
import { StaticBlockStatus } from './status';

View File

@ -1,9 +1,9 @@
import { IDirtyMark, IDirtyTracker } from '@motajs/common';
import {
ITextureRenderable,
SizedCanvasImageSource
} from '@motajs/render-assets';
import { Transform } from '@motajs/render-core';
SizedCanvasImageSource,
Transform
} from '@motajs/render';
import {
IAutotileProcessor,
IMaterialFramedData,

View File

@ -21,7 +21,7 @@ import { DYNAMIC_RESERVE, MAP_BLOCK_HEIGHT, MAP_BLOCK_WIDTH } from '../shared';
import { BlockSplitter } from './block';
import { clamp, isNil } from 'lodash-es';
import { BlockCls, IMaterialFramedData } from '@user/client-base';
import { IRect } from '@motajs/render-assets';
import { IRect } from '@motajs/render';
import { INSTANCED_COUNT } from './constant';
export interface IMapDataGetter {

View File

@ -1,4 +1,4 @@
import { Transform } from '@motajs/render-core';
import { Transform } from '@motajs/render';
import {
IBlockData,
IMapRenderArea,

View File

@ -1,4 +1,4 @@
import { MotaRenderer } from '@motajs/render-core';
import { MotaRenderer } from '@motajs/render';
import { MAIN_WIDTH, MAIN_HEIGHT } from './shared';
export const mainRenderer = new MotaRenderer({

View File

@ -1,5 +1,4 @@
import { ElementLocator } from '@motajs/render-core';
import { Font } from '@motajs/render-style';
import { ElementLocator, Font } from '@motajs/render';
// 本文件为 UI 配置文件,你可以修改下面的每个常量来控制 UI 的显示参数,每个常量都有注释说明

View File

@ -3,8 +3,7 @@ import {
Font,
IActionEvent,
MotaOffscreenCanvas2D,
Sprite,
onTick
Sprite
} from '@motajs/render';
// import { WeatherController } from '../weather';
import { defineComponent, onUnmounted, reactive, ref } from 'vue';
@ -33,6 +32,7 @@ import { FloorChange } from '../legacy/fallback';
import { mainUIController } from './controller';
import { isNil } from 'lodash-es';
import { mainMapExtension, mainMapRenderer } from '../commonIns';
import { onTick } from '@motajs/render-vue';
const MainScene = defineComponent(() => {
//#region 基本定义

View File

@ -1,6 +1,5 @@
import { ElementLocator, IWheelEvent } from '@motajs/render-core';
import { ElementLocator, IWheelEvent, Font } from '@motajs/render';
import { DefaultProps } from '@motajs/render-vue';
import { Font } from '@motajs/render';
import {
GameUI,
IUIMountable,

View File

@ -1,12 +1,7 @@
import { GameUI, SetupComponentOptions } from '@motajs/system-ui';
import { computed, ComputedRef, defineComponent, shallowReactive } from 'vue';
import { TextContent } from '../components';
import {
DefaultProps,
ElementLocator,
Font,
SizedCanvasImageSource
} from '@motajs/render';
import { ElementLocator, Font, SizedCanvasImageSource } from '@motajs/render';
import { MixedToolbar, ReplayingStatus } from './toolbar';
import { openViewMap } from './viewmap';
import { mainUIController } from './controller';
@ -16,6 +11,7 @@ import {
STATUS_BAR_HEIGHT,
STATUS_BAR_WIDTH
} from '../shared';
import { DefaultProps } from '@motajs/render-vue';
export interface ILeftHeroStatus {
/** 楼层 id */

View File

@ -20,7 +20,7 @@ import {
TITLE_X,
TITLE_Y
} from '../shared';
import { ElementLocator } from '@motajs/render-core';
import { ElementLocator, Font } from '@motajs/render';
import {
ITransitionedController,
transitioned,
@ -28,7 +28,6 @@ import {
useKey
} from '../use';
import { hyper, linear, sleep } from 'mutate-animate';
import { Font } from '@motajs/render-style';
import { ExitFullscreen, Fullscreen, SoundVolume } from '../components';
import { mainSetting, triggerFullscreen } from '@motajs/legacy-ui';
import { saveLoad } from './save';

View File

@ -1,4 +1,4 @@
import { DefaultProps, ElementLocator, Font } from '@motajs/render';
import { ElementLocator, Font } from '@motajs/render';
import { computed, defineComponent, ref } from 'vue';
import {
DoubleArrow,
@ -25,6 +25,7 @@ import { mainUIController } from './controller';
import { MAIN_HEIGHT, FULL_LOC, POP_BOX_WIDTH, CENTER_LOC } from '../shared';
import { openReplay, openSettings } from './settings';
import { openViewMap } from './viewmap';
import { DefaultProps } from '@motajs/render-vue';
interface ToolbarProps extends DefaultProps {
loc?: ElementLocator;

View File

@ -3,8 +3,9 @@ import {
IActionEvent,
IActionEventBase,
IWheelEvent,
MotaOffscreenCanvas2D
} from '@motajs/render-core';
MotaOffscreenCanvas2D,
Font
} from '@motajs/render';
import { BaseProps } from '@motajs/render-vue';
import {
GameUI,
@ -22,7 +23,7 @@ import {
shallowRef,
watch
} from 'vue';
import { FloorSelector } from '../components/floorSelect';
import { FloorSelector } from '../components';
import {
ILayerGroupRenderExtends,
FloorDamageExtends,
@ -31,7 +32,6 @@ import {
LayerGroup,
LayerGroupFloorBinder
} from '../elements';
import { Font } from '@motajs/render-style';
import { clamp, mean } from 'lodash-es';
import { calculateStatisticsOne, StatisticsDataOneFloor } from './statistics';
import { Tip, TipExpose } from '../components';

View File

@ -1,4 +1,4 @@
import { ElementLocator } from '@motajs/render-core';
import { ElementLocator } from '@motajs/render';
export interface IGridLayoutData {
/** 有多少列 */

View File

@ -1,4 +1,4 @@
import { RenderItem } from '@motajs/render-core';
import { RenderItem } from '@motajs/render';
import { IWeather, IWeatherController, IWeatherInstance } from './types';
import { logger } from '@motajs/common';
import { isNil } from 'lodash-es';

View File

@ -1,5 +1,5 @@
import { CloudLike } from './cloudLike';
import { SizedCanvasImageSource } from '@motajs/render-assets';
import { SizedCanvasImageSource } from '@motajs/render';
export class CloudWeather extends CloudLike {
getImage(): SizedCanvasImageSource | null {

View File

@ -1,6 +1,9 @@
import { MotaOffscreenCanvas2D, Sprite } from '@motajs/render-core';
import {
MotaOffscreenCanvas2D,
Sprite,
SizedCanvasImageSource
} from '@motajs/render';
import { Weather } from '../weather';
import { SizedCanvasImageSource } from '@motajs/render-assets';
export abstract class CloudLike extends Weather<Sprite> {
/** 不透明度 */

View File

@ -1,6 +1,5 @@
import { MotaOffscreenCanvas2D } from '@motajs/render-core';
import { MotaOffscreenCanvas2D, SizedCanvasImageSource } from '@motajs/render';
import { CloudLike } from './cloudLike';
import { SizedCanvasImageSource } from '@motajs/render-assets';
export class FogWeather extends CloudLike {
/** 雾天气的图像比较小,因此将四个进行合并 */

View File

@ -1,4 +1,4 @@
import { MotaOffscreenCanvas2D, Sprite } from '@motajs/render-core';
import { MotaOffscreenCanvas2D, Sprite } from '@motajs/render';
import { Weather } from '../weather';
import { clamp } from 'lodash-es';

View File

@ -1,4 +1,4 @@
import { RenderItem } from '@motajs/render-core';
import { RenderItem } from '@motajs/render';
export interface IWeather<T extends RenderItem = RenderItem> {
/** 天气的等级,-1 表示未创建 */

View File

@ -1,4 +1,4 @@
import { RenderItem } from '@motajs/render-core';
import { RenderItem } from '@motajs/render';
import { IWeather } from './types';
export abstract class Weather<T extends RenderItem> implements IWeather<T> {

View File

@ -5,10 +5,6 @@ import * as LegacyClient from '@motajs/legacy-client';
import * as LegacySystem from '@motajs/legacy-system';
import * as LegacyUI from '@motajs/legacy-ui';
import * as Render from '@motajs/render';
import * as RenderAssets from '@motajs/render-assets';
import * as RenderCore from '@motajs/render-core';
import * as RenderElements from '@motajs/render-elements';
import * as RenderStyle from '@motajs/render-style';
import * as RenderVue from '@motajs/render-vue';
import * as System from '@motajs/system';
import * as SystemAction from '@motajs/system-action';
@ -30,10 +26,6 @@ export function create() {
Mota.register('@motajs/legacy-system', LegacySystem);
Mota.register('@motajs/legacy-ui', LegacyUI);
Mota.register('@motajs/render', Render);
Mota.register('@motajs/render-assets', RenderAssets);
Mota.register('@motajs/render-core', RenderCore);
Mota.register('@motajs/render-elements', RenderElements);
Mota.register('@motajs/render-style', RenderStyle);
Mota.register('@motajs/render-vue', RenderVue);
Mota.register('@motajs/system', System);
Mota.register('@motajs/system-action', SystemAction);

View File

@ -6,9 +6,6 @@ import type * as LegacyCommon from '@motajs/legacy-common';
import type * as LegacySystem from '@motajs/legacy-system';
import type * as LegacyUI from '@motajs/legacy-ui';
import type * as Render from '@motajs/render';
import type * as RenderCore from '@motajs/render-core';
import type * as RenderElements from '@motajs/render-elements';
import type * as RenderStyle from '@motajs/render-style';
import type * as RenderVue from '@motajs/render-vue';
import type * as System from '@motajs/system';
import type * as SystemAction from '@motajs/system-action';
@ -34,9 +31,6 @@ interface ModuleInterface {
'@motajs/legacy-system': typeof LegacySystem;
'@motajs/legacy-ui': typeof LegacyUI;
'@motajs/render': typeof Render;
'@motajs/render-core': typeof RenderCore;
'@motajs/render-elements': typeof RenderElements;
'@motajs/render-style': typeof RenderStyle;
'@motajs/render-vue': typeof RenderVue;
'@motajs/system': typeof System;
'@motajs/system-action': typeof SystemAction;

View File

View File

@ -8,7 +8,7 @@ export interface IExcitable<T> {
export interface IExcitableController<T> {
/** 受激励对象 */
readonly excitable: T;
readonly excitable: IExcitable<T>;
/**
*

View File

@ -0,0 +1,17 @@
import { IExcitable } from './types';
/**
*
* @param func
* @param thisArg `this`
*/
export function excited<T>(
func: (payload: T) => void,
thisArg?: unknown
): IExcitable<T> {
if (thisArg) {
return { excited: func.bind(thisArg) };
} else {
return { excited: func };
}
}

View File

@ -1,6 +0,0 @@
{
"name": "@motajs/render-assets",
"dependencies": {
"@motajs/client-base": "workspace:*"
}
}

View File

@ -1,7 +0,0 @@
{
"name": "@motajs/render-core",
"dependencies": {
"@motajs/common": "workspace:*",
"@motajs/render-assets": "workspace:*"
}
}

View File

@ -1,8 +0,0 @@
{
"name": "@motajs/render-elements",
"dependencies": {
"@motajs/common": "workspace:*",
"@motajs/render-core": "workspace:*",
"@motajs/render-style": "workspace:*"
}
}

View File

@ -1,6 +0,0 @@
{
"name": "@motajs/render-style",
"dependencies": {
"@motajs/common": "workspace:*"
}
}

View File

@ -2,9 +2,7 @@
"name": "@motajs/render-vue",
"dependencies": {
"@motajs/common": "workspace:*",
"@motajs/render-core": "workspace:*",
"@motajs/render-elements": "workspace:*",
"@motajs/render-style": "workspace:*",
"@motajs/render": "workspace:*",
"@motajs/system-action": "workspace:*"
}
}
}

View File

@ -31,13 +31,11 @@ import {
RenderItem,
ESpriteEvent,
EContainerEvent,
EShaderEvent
} from '@motajs/render-core';
import {
EShaderEvent,
EImageEvent,
ETextEvent,
EGraphicItemEvent
} from '@motajs/render-elements';
} from '@motajs/render';
export type WrapEventEmitterEvents<T extends EventEmitter.ValidEventTypes> =
T extends string | symbol

View File

@ -1,4 +1,4 @@
import { ERenderItemEvent } from '@motajs/render-core';
import { ERenderItemEvent } from '@motajs/render';
import { TagDefine } from './elements';
import { BaseProps } from './props';

View File

@ -1,3 +1,4 @@
import { ElementNamespace, VNodeProps } from 'vue';
import { logger } from '@motajs/common';
import {
ERenderItemEvent,
@ -7,9 +8,7 @@ import {
ContainerCustom,
MotaRenderer,
Sprite,
Shader
} from '@motajs/render-core';
import {
Shader,
Comment,
ETextEvent,
Image,
@ -22,8 +21,7 @@ import {
QuadraticCurve,
Rect,
RectR
} from '@motajs/render-elements';
import { ElementNamespace, VNodeProps } from 'vue';
} from '@motajs/render';
type OnItemCreate<
E extends ERenderItemEvent = ERenderItemEvent,

View File

@ -7,10 +7,8 @@ import {
ElementLocator,
ElementScale,
CustomContainerRenderFn,
CustomContainerPropagateFn
} from '@motajs/render-core';
import { CanvasStyle } from '@motajs/render-assets';
import {
CustomContainerPropagateFn,
CanvasStyle,
BezierParams,
CircleParams,
EllipseParams,
@ -18,9 +16,9 @@ import {
LineParams,
QuadParams,
RectRCircleParams,
RectREllipseParams
} from '@motajs/render-elements';
import { Font } from '@motajs/render-style';
RectREllipseParams,
Font
} from '@motajs/render';
export interface CustomProps {
_item: (props: BaseProps) => RenderItem;

View File

@ -1,6 +1,11 @@
import { logger } from '@motajs/common';
import { ERenderItemEvent, RenderItem } from '@motajs/render-core';
import { ETextEvent, Text, Comment } from '@motajs/render-elements';
import {
ERenderItemEvent,
RenderItem,
ETextEvent,
Text,
Comment
} from '@motajs/render';
import {
ComponentInternalInstance,
createRenderer,

View File

@ -1,5 +1,5 @@
import { Animation, Ticker, Transition } from 'mutate-animate';
import { ERenderItemEvent, RenderItem } from '@motajs/render-core';
import { ERenderItemEvent, RenderItem } from '@motajs/render';
import { onMounted, onUnmounted } from 'vue';
import EventEmitter from 'eventemitter3';

View File

@ -9,14 +9,14 @@ import {
IRect,
ITexture,
ITextureComposedData,
ITextureComposer,
SizedCanvasImageSource
ITextureComposer
} from './types';
import vert from './shader/pack.vert?raw';
import frag from './shader/pack.frag?raw';
import { logger } from '@motajs/common';
import { isNil } from 'lodash-es';
import { compileProgramWith } from '@motajs/client-base';
import { SizedCanvasImageSource } from '../types';
interface IndexMarkedComposedData {
/** 组合数据 */

View File

@ -4,10 +4,10 @@ import {
ITexture,
ITextureComposedData,
ITextureRenderable,
ITextureSplitter,
SizedCanvasImageSource
ITextureSplitter
} from './types';
import { clamp } from 'lodash-es';
import { SizedCanvasImageSource } from '../types';
export class Texture implements ITexture {
source: SizedCanvasImageSource;

View File

@ -1,9 +1,4 @@
export type SizedCanvasImageSource = Exclude<
CanvasImageSource,
VideoFrame | SVGElement
>;
export type CanvasStyle = string | CanvasGradient | CanvasPattern;
import { SizedCanvasImageSource } from '../types';
export interface IRect {
x: number;

View File

@ -4,7 +4,7 @@ import { MotaOffscreenCanvas2D } from './canvas2d';
import { ERenderItemEvent, RenderItem, RenderItemPosition } from './item';
import { Transform } from './transform';
import { isWebGL2Supported } from './utils';
import { SizedCanvasImageSource } from '@motajs/render-assets';
import { SizedCanvasImageSource } from '../types';
export interface IGL2ProgramPrefix {
readonly VERTEX: string;

View File

@ -3,8 +3,8 @@ import {
ERenderItemEvent,
RenderItem,
MotaOffscreenCanvas2D
} from '@motajs/render-core';
import { CanvasStyle } from '@motajs/render-assets';
} from '../core';
import { CanvasStyle } from '../types';
import { logger } from '@motajs/common';
import { clamp, isEqual, isNil } from 'lodash-es';

Some files were not shown because too many files have changed in this diff Show More