@fugood/bricks-ctor 2.25.0-beta.7 → 2.25.0-beta.70

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.
Files changed (135) hide show
  1. package/package.json +4 -24
  2. package/tools/__tests__/legacy-forwarder.test.js +91 -0
  3. package/tools/_forward.ts +26 -0
  4. package/tools/deploy.ts +3 -164
  5. package/tools/mcp-server.ts +3 -27
  6. package/tools/postinstall.ts +3 -234
  7. package/tools/pull.ts +3 -121
  8. package/tools/push-config.ts +4 -0
  9. package/tools/simulator.ts +4 -0
  10. package/compile/action-name-map.ts +0 -1015
  11. package/compile/index.ts +0 -1278
  12. package/compile/util.ts +0 -358
  13. package/index.ts +0 -6
  14. package/skills/bricks-ctor/SKILL.md +0 -32
  15. package/skills/bricks-ctor/rules/animation.md +0 -159
  16. package/skills/bricks-ctor/rules/architecture-patterns.md +0 -69
  17. package/skills/bricks-ctor/rules/automations.md +0 -221
  18. package/skills/bricks-ctor/rules/buttress.md +0 -156
  19. package/skills/bricks-ctor/rules/data-calculation.md +0 -209
  20. package/skills/bricks-ctor/rules/local-sync.md +0 -129
  21. package/skills/bricks-ctor/rules/media-flow.md +0 -158
  22. package/skills/bricks-ctor/rules/remote-data-bank.md +0 -196
  23. package/skills/bricks-ctor/rules/standby-transition.md +0 -124
  24. package/skills/bricks-design/LICENSE.txt +0 -180
  25. package/skills/bricks-design/SKILL.md +0 -66
  26. package/skills/rive-marketplace/SKILL.md +0 -99
  27. package/tools/_git-author.ts +0 -29
  28. package/tools/_shell.ts +0 -173
  29. package/tools/icons/.gitattributes +0 -1
  30. package/tools/icons/fa6pro-glyphmap.json +0 -4686
  31. package/tools/icons/fa6pro-meta.json +0 -1
  32. package/tools/mcp-tools/compile.ts +0 -92
  33. package/tools/mcp-tools/huggingface.ts +0 -762
  34. package/tools/mcp-tools/icons.ts +0 -81
  35. package/tools/mcp-tools/lottie.ts +0 -102
  36. package/tools/mcp-tools/media.ts +0 -110
  37. package/tools/preview-main.mjs +0 -293
  38. package/tools/preview.ts +0 -150
  39. package/types/animation.ts +0 -100
  40. package/types/automation.ts +0 -235
  41. package/types/brick-base.ts +0 -80
  42. package/types/bricks/Camera.ts +0 -246
  43. package/types/bricks/Chart.ts +0 -372
  44. package/types/bricks/GenerativeMedia.ts +0 -290
  45. package/types/bricks/Icon.ts +0 -98
  46. package/types/bricks/Image.ts +0 -126
  47. package/types/bricks/Items.ts +0 -476
  48. package/types/bricks/Lottie.ts +0 -168
  49. package/types/bricks/Maps.ts +0 -262
  50. package/types/bricks/QrCode.ts +0 -117
  51. package/types/bricks/Rect.ts +0 -150
  52. package/types/bricks/RichText.ts +0 -128
  53. package/types/bricks/Rive.ts +0 -220
  54. package/types/bricks/Sketch.ts +0 -254
  55. package/types/bricks/Slideshow.ts +0 -201
  56. package/types/bricks/Svg.ts +0 -99
  57. package/types/bricks/Text.ts +0 -148
  58. package/types/bricks/TextInput.ts +0 -242
  59. package/types/bricks/Video.ts +0 -175
  60. package/types/bricks/VideoStreaming.ts +0 -112
  61. package/types/bricks/WebRtcStream.ts +0 -65
  62. package/types/bricks/WebView.ts +0 -168
  63. package/types/bricks/index.ts +0 -22
  64. package/types/canvas.ts +0 -82
  65. package/types/common.ts +0 -144
  66. package/types/data-calc-command.ts +0 -7005
  67. package/types/data-calc-script.ts +0 -21
  68. package/types/data-calc.ts +0 -11
  69. package/types/data.ts +0 -95
  70. package/types/generators/AlarmClock.ts +0 -110
  71. package/types/generators/Assistant.ts +0 -621
  72. package/types/generators/BleCentral.ts +0 -247
  73. package/types/generators/BlePeripheral.ts +0 -208
  74. package/types/generators/CanvasMap.ts +0 -74
  75. package/types/generators/CastlesPay.ts +0 -87
  76. package/types/generators/DataBank.ts +0 -160
  77. package/types/generators/File.ts +0 -432
  78. package/types/generators/GraphQl.ts +0 -132
  79. package/types/generators/Http.ts +0 -222
  80. package/types/generators/HttpServer.ts +0 -176
  81. package/types/generators/Information.ts +0 -103
  82. package/types/generators/Intent.ts +0 -168
  83. package/types/generators/Iterator.ts +0 -108
  84. package/types/generators/Keyboard.ts +0 -105
  85. package/types/generators/LlmAnthropicCompat.ts +0 -212
  86. package/types/generators/LlmAppleBuiltin.ts +0 -159
  87. package/types/generators/LlmGgml.ts +0 -861
  88. package/types/generators/LlmMediaTekNeuroPilot.ts +0 -235
  89. package/types/generators/LlmMlx.ts +0 -227
  90. package/types/generators/LlmOnnx.ts +0 -213
  91. package/types/generators/LlmOpenAiCompat.ts +0 -312
  92. package/types/generators/LlmQualcommAiEngine.ts +0 -247
  93. package/types/generators/Mcp.ts +0 -637
  94. package/types/generators/McpServer.ts +0 -289
  95. package/types/generators/MediaFlow.ts +0 -170
  96. package/types/generators/MqttBroker.ts +0 -141
  97. package/types/generators/MqttClient.ts +0 -141
  98. package/types/generators/Question.ts +0 -408
  99. package/types/generators/RealtimeTranscription.ts +0 -287
  100. package/types/generators/RerankerGgml.ts +0 -191
  101. package/types/generators/SerialPort.ts +0 -151
  102. package/types/generators/SoundPlayer.ts +0 -94
  103. package/types/generators/SoundRecorder.ts +0 -130
  104. package/types/generators/SpeechToTextGgml.ts +0 -419
  105. package/types/generators/SpeechToTextOnnx.ts +0 -236
  106. package/types/generators/SpeechToTextPlatform.ts +0 -85
  107. package/types/generators/SqLite.ts +0 -159
  108. package/types/generators/Step.ts +0 -107
  109. package/types/generators/SttAppleBuiltin.ts +0 -130
  110. package/types/generators/Tcp.ts +0 -126
  111. package/types/generators/TcpServer.ts +0 -147
  112. package/types/generators/TextToSpeechAppleBuiltin.ts +0 -127
  113. package/types/generators/TextToSpeechGgml.ts +0 -221
  114. package/types/generators/TextToSpeechOnnx.ts +0 -178
  115. package/types/generators/TextToSpeechOpenAiLike.ts +0 -121
  116. package/types/generators/ThermalPrinter.ts +0 -191
  117. package/types/generators/Tick.ts +0 -83
  118. package/types/generators/Udp.ts +0 -120
  119. package/types/generators/VadGgml.ts +0 -250
  120. package/types/generators/VadOnnx.ts +0 -231
  121. package/types/generators/VadTraditional.ts +0 -138
  122. package/types/generators/VectorStore.ts +0 -257
  123. package/types/generators/Watchdog.ts +0 -107
  124. package/types/generators/WebCrawler.ts +0 -103
  125. package/types/generators/WebRtc.ts +0 -181
  126. package/types/generators/WebSocket.ts +0 -148
  127. package/types/generators/index.ts +0 -57
  128. package/types/index.ts +0 -13
  129. package/types/subspace.ts +0 -60
  130. package/types/switch.ts +0 -51
  131. package/types/system.ts +0 -707
  132. package/utils/calc.ts +0 -126
  133. package/utils/data.ts +0 -497
  134. package/utils/event-props.ts +0 -886
  135. package/utils/id.ts +0 -80
@@ -1,262 +0,0 @@
1
- /* Auto generated by build script
2
- *
3
- * Interactive map with markers, paths, and location tracking. Supports Google Maps (iOS/Android/Desktop/Web) and Apple Maps (iOS/tvOS)
4
- */
5
- import type { SwitchCondInnerStateCurrentCanvas, SwitchCondData, SwitchDef } from '../switch'
6
- import type { Data, DataLink } from '../data'
7
- import type { Animation, AnimationBasicEvents } from '../animation'
8
- import type {
9
- Brick,
10
- EventAction,
11
- EventActionForItem,
12
- ActionWithDataParams,
13
- ActionWithParams,
14
- Action,
15
- EventProperty,
16
- } from '../common'
17
- import type { BrickBasicProperty, BrickBasicEvents, BrickBasicEventsForItem } from '../brick-base'
18
- import type { TemplateEventPropsMap } from '../../utils/event-props'
19
-
20
- /* Zoom in the map */
21
- export type BrickMapsActionZoomIn = Action & {
22
- __actionName: 'BRICK_MAPS_ZOOM_IN'
23
- }
24
-
25
- /* Zoom out the map */
26
- export type BrickMapsActionZoomOut = Action & {
27
- __actionName: 'BRICK_MAPS_ZOOM_OUT'
28
- }
29
-
30
- /* Pan the map in a direction */
31
- export type BrickMapsActionPan = ActionWithParams & {
32
- __actionName: 'BRICK_MAPS_PAN'
33
- params?: Array<{
34
- input: 'panDirection'
35
- value?: 'up' | 'down' | 'left' | 'right' | DataLink | EventProperty
36
- mapping?: string
37
- }>
38
- }
39
-
40
- /* Navigate to a specific location */
41
- export type BrickMapsActionNavigateTo = ActionWithParams & {
42
- __actionName: 'BRICK_MAPS_NAVIGATE_TO'
43
- params?: Array<
44
- | {
45
- input: 'targetLatitude'
46
- value?: number | DataLink | EventProperty
47
- mapping?: string
48
- }
49
- | {
50
- input: 'targetLongitude'
51
- value?: number | DataLink | EventProperty
52
- mapping?: string
53
- }
54
- | {
55
- input: 'targetZoom'
56
- value?: number | DataLink | EventProperty
57
- mapping?: string
58
- }
59
- >
60
- }
61
-
62
- /* Focus on a marker by ID */
63
- export type BrickMapsActionFocusMarker = ActionWithParams & {
64
- __actionName: 'BRICK_MAPS_FOCUS_MARKER'
65
- params?: Array<{
66
- input: 'markerId'
67
- value?: string | DataLink | EventProperty
68
- mapping?: string
69
- }>
70
- }
71
-
72
- /* Reset map to initial position */
73
- export type BrickMapsActionReset = Action & {
74
- __actionName: 'BRICK_MAPS_RESET'
75
- }
76
-
77
- /* Fit map to show all markers */
78
- export type BrickMapsActionFitToMarkers = ActionWithParams & {
79
- __actionName: 'BRICK_MAPS_FIT_TO_MARKERS'
80
- params?: Array<
81
- | {
82
- input: 'edgePadding'
83
- value?: number | DataLink | EventProperty
84
- mapping?: string
85
- }
86
- | {
87
- input: 'animated'
88
- value?: boolean | DataLink | EventProperty
89
- mapping?: string
90
- }
91
- >
92
- }
93
-
94
- interface BrickMapsDef {
95
- /*
96
- Default property:
97
- {
98
- "provider": "google",
99
- "apiKey": "",
100
- "initialLatitude": 25.033,
101
- "initialLongitude": 121.5654,
102
- "initialZoom": 10,
103
- "mapType": "standard",
104
- "mapTheme": "standard",
105
- "showUserLocation": false,
106
- "showCompass": true,
107
- "showZoomControls": true,
108
- "scrollEnabled": true,
109
- "zoomEnabled": true,
110
- "rotateEnabled": true,
111
- "markers": [],
112
- "customMapStyle": [],
113
- "showTraffic": false,
114
- "showBuildings": false,
115
- "showIndoors": true,
116
- "minZoomLevel": 1,
117
- "maxZoomLevel": 20,
118
- "followUserLocation": false,
119
- "showPath": false,
120
- "pathStrokeColor": "#4285F4",
121
- "pathStrokeWidth": 3
122
- }
123
- */
124
- property?: BrickBasicProperty & {
125
- /* Map provider (iOS/tvOS only - Android and Web always use Google Maps) */
126
- provider?: 'google' | 'apple' | DataLink
127
- /* Google Maps API Key (Web only) */
128
- apiKey?: string | DataLink
129
- /* Initial latitude */
130
- initialLatitude?: number | DataLink
131
- /* Initial longitude */
132
- initialLongitude?: number | DataLink
133
- /* Initial zoom level (1-20) */
134
- initialZoom?: number | DataLink
135
- /* Map type */
136
- mapType?: 'standard' | 'satellite' | 'hybrid' | 'terrain' | DataLink
137
- /* Map theme preset */
138
- mapTheme?: 'standard' | 'dark' | 'night' | 'retro' | 'silver' | 'aubergine' | DataLink
139
- /* Show user location button */
140
- showUserLocation?: boolean | DataLink
141
- /* Show compass */
142
- showCompass?: boolean | DataLink
143
- /* Show zoom controls */
144
- showZoomControls?: boolean | DataLink
145
- /* Enable scrolling */
146
- scrollEnabled?: boolean | DataLink
147
- /* Enable zooming */
148
- zoomEnabled?: boolean | DataLink
149
- /* Enable rotating */
150
- rotateEnabled?: boolean | DataLink
151
- /* Map markers data */
152
- markers?:
153
- | Array<
154
- | DataLink
155
- | {
156
- id?: string | DataLink
157
- latitude?: number | DataLink
158
- longitude?: number | DataLink
159
- title?: string | DataLink
160
- description?: string | DataLink
161
- color?: string | DataLink
162
- icon?: string | DataLink
163
- }
164
- >
165
- | DataLink
166
- /* Custom map style (array of Google Maps style objects) */
167
- customMapStyle?:
168
- | Array<
169
- | DataLink
170
- | {
171
- featureType?: string | DataLink
172
- elementType?: string | DataLink
173
- stylers?: Array<{} | DataLink> | DataLink
174
- }
175
- >
176
- | DataLink
177
- /* Show traffic layer */
178
- showTraffic?: boolean | DataLink
179
- /* Show buildings in 3D */
180
- showBuildings?: boolean | DataLink
181
- /* Show indoor maps */
182
- showIndoors?: boolean | DataLink
183
- /* Minimum zoom level */
184
- minZoomLevel?: number | DataLink
185
- /* Maximum zoom level */
186
- maxZoomLevel?: number | DataLink
187
- /* Follow user location */
188
- followUserLocation?: boolean | DataLink
189
- /* Show path between markers */
190
- showPath?: boolean | DataLink
191
- /* Path stroke color */
192
- pathStrokeColor?: string | DataLink
193
- /* Path stroke width */
194
- pathStrokeWidth?: number | DataLink
195
- }
196
- events?: BrickBasicEvents & {
197
- /* Event of the brick press */
198
- onPress?: Array<EventAction>
199
- /* Event of the brick press in */
200
- onPressIn?: Array<EventAction>
201
- /* Event of the brick press out */
202
- onPressOut?: Array<EventAction>
203
- /* Event of the brick long press */
204
- onLongPress?: Array<EventAction>
205
- /* Event of the brick focus (Use TV Device with controller) */
206
- onFocus?: Array<EventAction>
207
- /* Event of the brick blur (Use TV Device with controller) */
208
- onBlur?: Array<EventAction>
209
- /* Event when a marker is pressed */
210
- onMarkerPress?: Array<
211
- EventAction<string & keyof TemplateEventPropsMap['Maps']['onMarkerPress']>
212
- >
213
- /* Event when the map is pressed */
214
- onMapPress?: Array<EventAction<string & keyof TemplateEventPropsMap['Maps']['onMapPress']>>
215
- /* Event when the map region changes */
216
- onRegionChange?: Array<
217
- EventAction<string & keyof TemplateEventPropsMap['Maps']['onRegionChange']>
218
- >
219
- /* Event when the map is ready */
220
- onReady?: Array<EventAction>
221
- }
222
- outlets?: {
223
- /* Brick is pressing */
224
- brickPressing?: () => Data<boolean>
225
- /* Brick is focusing (Use TV Device with controller) */
226
- brickFocusing?: () => Data<boolean>
227
- }
228
- animation?: AnimationBasicEvents & {
229
- onPress?: Animation
230
- onPressIn?: Animation
231
- onPressOut?: Animation
232
- onLongPress?: Animation
233
- onFocus?: Animation
234
- onBlur?: Animation
235
- onMarkerPress?: Animation
236
- onMapPress?: Animation
237
- onRegionChange?: Animation
238
- onReady?: Animation
239
- }
240
- }
241
-
242
- /* Interactive map with markers, paths, and location tracking. Supports Google Maps (iOS/Android/Desktop/Web) and Apple Maps (iOS/tvOS) */
243
- export type BrickMaps = Brick &
244
- BrickMapsDef & {
245
- templateKey: 'BRICK_MAPS'
246
- switches?: Array<
247
- SwitchDef &
248
- BrickMapsDef & {
249
- conds?: Array<{
250
- method: '==' | '!=' | '>' | '<' | '>=' | '<='
251
- cond:
252
- | SwitchCondInnerStateCurrentCanvas
253
- | SwitchCondData
254
- | {
255
- __typename: 'SwitchCondInnerStateOutlet'
256
- outlet: 'brickPressing' | 'brickFocusing'
257
- value: any
258
- }
259
- }>
260
- }
261
- >
262
- }
@@ -1,117 +0,0 @@
1
- /* Auto generated by build script
2
- *
3
- * Generate and display QR codes from text or URL values
4
- */
5
- import type { SwitchCondInnerStateCurrentCanvas, SwitchCondData, SwitchDef } from '../switch'
6
- import type { Data, DataLink } from '../data'
7
- import type { Animation, AnimationBasicEvents } from '../animation'
8
- import type {
9
- Brick,
10
- EventAction,
11
- EventActionForItem,
12
- ActionWithDataParams,
13
- ActionWithParams,
14
- Action,
15
- EventProperty,
16
- } from '../common'
17
- import type { BrickBasicProperty, BrickBasicEvents, BrickBasicEventsForItem } from '../brick-base'
18
- import type { TemplateEventPropsMap } from '../../utils/event-props'
19
-
20
- interface BrickQrcodeDef {
21
- /*
22
- Default property:
23
- {
24
- "value": "",
25
- "positiveColor": "#1e252a",
26
- "negativeColor": "transparent",
27
- "padding": 0,
28
- "linearGradientEnabled": false,
29
- "linearGradientStart": "black",
30
- "linearGradientEnd": "black",
31
- "linearGradientDirection": [
32
- "0%",
33
- "0%",
34
- "100%",
35
- "100%"
36
- ],
37
- "logoSize": 20,
38
- "logoBackgroundColor": "transparent"
39
- }
40
- */
41
- property?: BrickBasicProperty & {
42
- /* The QRCode content */
43
- value?: string | DataLink
44
- /* The foreground color of QRCode */
45
- positiveColor?: string | DataLink
46
- /* The background color of QRCode */
47
- negativeColor?: string | DataLink
48
- /* Quiet zone around the qr */
49
- padding?: number | DataLink
50
- /* Enables or disables linear gradient */
51
- linearGradientEnabled?: boolean | DataLink
52
- /* Linear gradient start color */
53
- linearGradientStart?: string | DataLink
54
- /* Linear gradient end color */
55
- linearGradientEnd?: string | DataLink
56
- /* Linear gradient direction ('0%', '0%', '100%', '100%') */
57
- linearGradientDirection?: Array<string | DataLink> | DataLink
58
- /* Logo image source */
59
- logoPath?: string | DataLink
60
- /* The checksum of logo file */
61
- md5?: string | DataLink
62
- /* Logo image size (% of QRCode) */
63
- logoSize?: number | DataLink
64
- /* The logo gets a filled quadratic background with this color. */
65
- logoBackgroundColor?: string | DataLink
66
- }
67
- events?: BrickBasicEvents & {
68
- /* Event of the brick press */
69
- onPress?: Array<EventAction>
70
- /* Event of the brick press in */
71
- onPressIn?: Array<EventAction>
72
- /* Event of the brick press out */
73
- onPressOut?: Array<EventAction>
74
- /* Event of the brick long press */
75
- onLongPress?: Array<EventAction>
76
- /* Event of the brick focus (Use TV Device with controller) */
77
- onFocus?: Array<EventAction>
78
- /* Event of the brick blur (Use TV Device with controller) */
79
- onBlur?: Array<EventAction>
80
- }
81
- outlets?: {
82
- /* Brick is pressing */
83
- brickPressing?: () => Data<boolean>
84
- /* Brick is focusing (Use TV Device with controller) */
85
- brickFocusing?: () => Data<boolean>
86
- }
87
- animation?: AnimationBasicEvents & {
88
- onPress?: Animation
89
- onPressIn?: Animation
90
- onPressOut?: Animation
91
- onLongPress?: Animation
92
- onFocus?: Animation
93
- onBlur?: Animation
94
- }
95
- }
96
-
97
- /* Generate and display QR codes from text or URL values */
98
- export type BrickQrcode = Brick &
99
- BrickQrcodeDef & {
100
- templateKey: 'BRICK_QRCODE'
101
- switches?: Array<
102
- SwitchDef &
103
- BrickQrcodeDef & {
104
- conds?: Array<{
105
- method: '==' | '!=' | '>' | '<' | '>=' | '<='
106
- cond:
107
- | SwitchCondInnerStateCurrentCanvas
108
- | SwitchCondData
109
- | {
110
- __typename: 'SwitchCondInnerStateOutlet'
111
- outlet: 'brickPressing' | 'brickFocusing'
112
- value: any
113
- }
114
- }>
115
- }
116
- >
117
- }
@@ -1,150 +0,0 @@
1
- /* Auto generated by build script
2
- *
3
- * Rectangle shape with customizable fill, border, radius, shadow, and blur
4
- */
5
- import type { SwitchCondInnerStateCurrentCanvas, SwitchCondData, SwitchDef } from '../switch'
6
- import type { Data, DataLink } from '../data'
7
- import type { Animation, AnimationBasicEvents } from '../animation'
8
- import type {
9
- Brick,
10
- EventAction,
11
- EventActionForItem,
12
- ActionWithDataParams,
13
- ActionWithParams,
14
- Action,
15
- EventProperty,
16
- } from '../common'
17
- import type { BrickBasicProperty, BrickBasicEvents, BrickBasicEventsForItem } from '../brick-base'
18
- import type { TemplateEventPropsMap } from '../../utils/event-props'
19
-
20
- interface BrickRectDef {
21
- /*
22
- Default property:
23
- {
24
- "linearGradientEnabled": false,
25
- "linearGradientColors": [
26
- "#000000",
27
- "#FFFFFF"
28
- ],
29
- "linearGradientStart": {
30
- "x": 0,
31
- "y": 0
32
- },
33
- "linearGradientEnd": {
34
- "x": 1,
35
- "y": 1
36
- },
37
- "linearGradientLocations": [
38
- 0,
39
- 1
40
- ],
41
- "blurEnabled": false,
42
- "blurVariant": "blur",
43
- "blurType": "light",
44
- "blurAmount": 10,
45
- "blurDirection": "blurredTopClearBottom",
46
- "blurStartOffset": 0,
47
- "blurGlassType": "regular",
48
- "blurGlassOpacity": 0.5,
49
- "blurGlassInteractive": false
50
- }
51
- */
52
- property?: BrickBasicProperty & {
53
- /* Enables or disables linear gradient */
54
- linearGradientEnabled?: boolean | DataLink
55
- /* An array of at least two color values that represent gradient colors */
56
- linearGradientColors?: Array<string | DataLink> | DataLink
57
- /* An optional object of the following type: { x: number, y: number } */
58
- linearGradientStart?:
59
- | DataLink
60
- | {
61
- x?: number | DataLink
62
- y?: number | DataLink
63
- }
64
- /* Same as start, but for the end of the gradient */
65
- linearGradientEnd?:
66
- | DataLink
67
- | {
68
- x?: number | DataLink
69
- y?: number | DataLink
70
- }
71
- /* An optional array of numbers defining the location of each gradient color stop */
72
- linearGradientLocations?: Array<number | DataLink> | DataLink
73
- /* Enable blur effect.
74
- Not supported on Desktop (Electron) and Web.
75
- Avoid using opacity prop with blur — use alpha backgroundColor (e.g. rgba) instead. */
76
- blurEnabled?: boolean | DataLink
77
- /* Blur variant */
78
- blurVariant?: 'blur' | 'progressiveBlur' | 'liquidGlass' | DataLink
79
- /* Blur type (blur variant) */
80
- blurType?: 'xlight' | 'light' | 'dark' | 'regular' | 'prominent' | DataLink
81
- /* Blur amount (0 ~ 100, blur variant) */
82
- blurAmount?: number | DataLink
83
- /* Progressive blur direction (progressiveBlur variant) */
84
- blurDirection?:
85
- | 'blurredTopClearBottom'
86
- | 'blurredBottomClearTop'
87
- | 'blurredCenterClearTopAndBottom'
88
- | DataLink
89
- /* Progressive blur start offset (0 ~ 1, progressiveBlur variant) */
90
- blurStartOffset?: number | DataLink
91
- /* Glass type (liquidGlass variant, iOS 26+) */
92
- blurGlassType?: 'clear' | 'regular' | DataLink
93
- /* Glass tint color (liquidGlass variant) */
94
- blurGlassTintColor?: string | DataLink
95
- /* Glass opacity (0 ~ 1, liquidGlass variant) */
96
- blurGlassOpacity?: number | DataLink
97
- /* Enable glass interaction (liquidGlass variant) */
98
- blurGlassInteractive?: boolean | DataLink
99
- }
100
- events?: BrickBasicEvents & {
101
- /* Event of the brick press */
102
- onPress?: Array<EventAction>
103
- /* Event of the brick press in */
104
- onPressIn?: Array<EventAction>
105
- /* Event of the brick press out */
106
- onPressOut?: Array<EventAction>
107
- /* Event of the brick long press */
108
- onLongPress?: Array<EventAction>
109
- /* Event of the brick focus (Use TV Device with controller) */
110
- onFocus?: Array<EventAction>
111
- /* Event of the brick blur (Use TV Device with controller) */
112
- onBlur?: Array<EventAction>
113
- }
114
- outlets?: {
115
- /* Brick is pressing */
116
- brickPressing?: () => Data<boolean>
117
- /* Brick is focusing (Use TV Device with controller) */
118
- brickFocusing?: () => Data<boolean>
119
- }
120
- animation?: AnimationBasicEvents & {
121
- onPress?: Animation
122
- onPressIn?: Animation
123
- onPressOut?: Animation
124
- onLongPress?: Animation
125
- onFocus?: Animation
126
- onBlur?: Animation
127
- }
128
- }
129
-
130
- /* Rectangle shape with customizable fill, border, radius, shadow, and blur */
131
- export type BrickRect = Brick &
132
- BrickRectDef & {
133
- templateKey: 'BRICK_RECT'
134
- switches?: Array<
135
- SwitchDef &
136
- BrickRectDef & {
137
- conds?: Array<{
138
- method: '==' | '!=' | '>' | '<' | '>=' | '<='
139
- cond:
140
- | SwitchCondInnerStateCurrentCanvas
141
- | SwitchCondData
142
- | {
143
- __typename: 'SwitchCondInnerStateOutlet'
144
- outlet: 'brickPressing' | 'brickFocusing'
145
- value: any
146
- }
147
- }>
148
- }
149
- >
150
- }
@@ -1,128 +0,0 @@
1
- /* Auto generated by build script
2
- *
3
- * Rich text with HTML content rendering, multiple fonts, colors, heading levels (h1-h6), and inline images
4
- */
5
- import type { SwitchCondInnerStateCurrentCanvas, SwitchCondData, SwitchDef } from '../switch'
6
- import type { Data, DataLink } from '../data'
7
- import type { Animation, AnimationBasicEvents } from '../animation'
8
- import type {
9
- Brick,
10
- EventAction,
11
- EventActionForItem,
12
- ActionWithDataParams,
13
- ActionWithParams,
14
- Action,
15
- EventProperty,
16
- } from '../common'
17
- import type { BrickBasicProperty, BrickBasicEvents, BrickBasicEventsForItem } from '../brick-base'
18
- import type { TemplateEventPropsMap } from '../../utils/event-props'
19
-
20
- interface BrickRichTextDef {
21
- /*
22
- Default property:
23
- {
24
- "content": "",
25
- "renderImage": false,
26
- "color": "#000",
27
- "fontWeight": "normal",
28
- "fontStyle": "normal",
29
- "fontSizes": {
30
- "base": 3,
31
- "h1": 6.857142857142857,
32
- "h2": 5.714285714285714,
33
- "h3": 4.011428571428572,
34
- "h4": 3.428571428571429,
35
- "h5": 2.845714285714286,
36
- "h6": 2.285714285714286
37
- }
38
- }
39
- */
40
- property?: BrickBasicProperty & {
41
- /* The text content */
42
- content?: string | DataLink
43
- /* Render Image */
44
- renderImage?: boolean | DataLink
45
- /* The text color */
46
- color?: string | DataLink
47
- /* Specifies font weight. The values 'normal' and are supported for most fonts. Not all fonts have a variant for each of the numeric values, in that case the closest one is chosen. */
48
- fontWeight?:
49
- | 'normal'
50
- | 'bold'
51
- | '100'
52
- | '200'
53
- | '300'
54
- | '400'
55
- | '500'
56
- | '600'
57
- | '700'
58
- | '800'
59
- | '900'
60
- | DataLink
61
- /* The text font style */
62
- fontStyle?: 'normal' | 'italic' | DataLink
63
- /* The text font family */
64
- fontFamily?: string | DataLink
65
- /* The text font size definition (base and headers) */
66
- fontSizes?:
67
- | DataLink
68
- | {
69
- base?: number | DataLink // BRICKS Grid unit
70
- h1?: number | DataLink // BRICKS Grid unit
71
- h2?: number | DataLink // BRICKS Grid unit
72
- h3?: number | DataLink // BRICKS Grid unit
73
- h4?: number | DataLink // BRICKS Grid unit
74
- h5?: number | DataLink // BRICKS Grid unit
75
- h6?: number | DataLink // BRICKS Grid unit
76
- }
77
- }
78
- events?: BrickBasicEvents & {
79
- /* Event of the brick press */
80
- onPress?: Array<EventAction>
81
- /* Event of the brick press in */
82
- onPressIn?: Array<EventAction>
83
- /* Event of the brick press out */
84
- onPressOut?: Array<EventAction>
85
- /* Event of the brick long press */
86
- onLongPress?: Array<EventAction>
87
- /* Event of the brick focus (Use TV Device with controller) */
88
- onFocus?: Array<EventAction>
89
- /* Event of the brick blur (Use TV Device with controller) */
90
- onBlur?: Array<EventAction>
91
- }
92
- outlets?: {
93
- /* Brick is pressing */
94
- brickPressing?: () => Data<boolean>
95
- /* Brick is focusing (Use TV Device with controller) */
96
- brickFocusing?: () => Data<boolean>
97
- }
98
- animation?: AnimationBasicEvents & {
99
- onPress?: Animation
100
- onPressIn?: Animation
101
- onPressOut?: Animation
102
- onLongPress?: Animation
103
- onFocus?: Animation
104
- onBlur?: Animation
105
- }
106
- }
107
-
108
- /* Rich text with HTML content rendering, multiple fonts, colors, heading levels (h1-h6), and inline images */
109
- export type BrickRichText = Brick &
110
- BrickRichTextDef & {
111
- templateKey: 'BRICK_RICH_TEXT'
112
- switches?: Array<
113
- SwitchDef &
114
- BrickRichTextDef & {
115
- conds?: Array<{
116
- method: '==' | '!=' | '>' | '<' | '>=' | '<='
117
- cond:
118
- | SwitchCondInnerStateCurrentCanvas
119
- | SwitchCondData
120
- | {
121
- __typename: 'SwitchCondInnerStateOutlet'
122
- outlet: 'brickPressing' | 'brickFocusing'
123
- value: any
124
- }
125
- }>
126
- }
127
- >
128
- }