@jigx/core-sdk 1.0.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.
Files changed (902) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/README.md +87 -0
  3. package/dist/PACKAGE.d.ts +4 -0
  4. package/dist/PACKAGE.d.ts.map +1 -0
  5. package/dist/PACKAGE.js +5 -0
  6. package/dist/abstract/app-info.d.ts +8 -0
  7. package/dist/abstract/app-info.d.ts.map +1 -0
  8. package/dist/abstract/app-info.js +8 -0
  9. package/dist/abstract/app-name.d.ts +15 -0
  10. package/dist/abstract/app-name.d.ts.map +1 -0
  11. package/dist/abstract/app-name.js +28 -0
  12. package/dist/abstract/base-builder.d.ts +4 -0
  13. package/dist/abstract/base-builder.d.ts.map +1 -0
  14. package/dist/abstract/base-builder.js +3 -0
  15. package/dist/abstract/element-base-builder.d.ts +7 -0
  16. package/dist/abstract/element-base-builder.d.ts.map +1 -0
  17. package/dist/abstract/element-base-builder.js +11 -0
  18. package/dist/abstract/generic.d.ts +31 -0
  19. package/dist/abstract/generic.d.ts.map +1 -0
  20. package/dist/abstract/generic.js +2 -0
  21. package/dist/abstract/index.d.ts +12 -0
  22. package/dist/abstract/index.d.ts.map +1 -0
  23. package/dist/abstract/index.js +11 -0
  24. package/dist/abstract/register.d.ts +31 -0
  25. package/dist/abstract/register.d.ts.map +1 -0
  26. package/dist/abstract/register.js +48 -0
  27. package/dist/abstract/sdk.expression.d.ts +43 -0
  28. package/dist/abstract/sdk.expression.d.ts.map +1 -0
  29. package/dist/abstract/sdk.expression.js +175 -0
  30. package/dist/abstract/sdk.text.d.ts +23 -0
  31. package/dist/abstract/sdk.text.d.ts.map +1 -0
  32. package/dist/abstract/sdk.text.js +110 -0
  33. package/dist/abstract/sdk.types.d.ts +16 -0
  34. package/dist/abstract/sdk.types.d.ts.map +1 -0
  35. package/dist/abstract/sdk.types.js +88 -0
  36. package/dist/abstract/zod.strata.d.ts +17 -0
  37. package/dist/abstract/zod.strata.d.ts.map +1 -0
  38. package/dist/abstract/zod.strata.js +11 -0
  39. package/dist/abstract/zod.types.d.ts +1937 -0
  40. package/dist/abstract/zod.types.d.ts.map +1 -0
  41. package/dist/abstract/zod.types.js +848 -0
  42. package/dist/action/action-definition.builder.d.ts +16 -0
  43. package/dist/action/action-definition.builder.d.ts.map +1 -0
  44. package/dist/action/action-definition.builder.js +35 -0
  45. package/dist/action/action.descriptor.d.ts +8 -0
  46. package/dist/action/action.descriptor.d.ts.map +1 -0
  47. package/dist/action/action.descriptor.js +2 -0
  48. package/dist/action/index.d.ts +57 -0
  49. package/dist/action/index.d.ts.map +1 -0
  50. package/dist/action/index.js +48 -0
  51. package/dist/action/ja.abstract.d.ts +33 -0
  52. package/dist/action/ja.abstract.d.ts.map +1 -0
  53. package/dist/action/ja.abstract.js +58 -0
  54. package/dist/action/ja.action-definition.d.ts +11 -0
  55. package/dist/action/ja.action-definition.d.ts.map +1 -0
  56. package/dist/action/ja.action-definition.js +12 -0
  57. package/dist/action/ja.action-list.d.ts +9 -0
  58. package/dist/action/ja.action-list.d.ts.map +1 -0
  59. package/dist/action/ja.action-list.js +15 -0
  60. package/dist/action/ja.clear-queue.d.ts +9 -0
  61. package/dist/action/ja.clear-queue.d.ts.map +1 -0
  62. package/dist/action/ja.clear-queue.js +9 -0
  63. package/dist/action/ja.color.d.ts +3 -0
  64. package/dist/action/ja.color.d.ts.map +1 -0
  65. package/dist/action/ja.color.js +2 -0
  66. package/dist/action/ja.confirm.abstract.d.ts +16 -0
  67. package/dist/action/ja.confirm.abstract.d.ts.map +1 -0
  68. package/dist/action/ja.confirm.abstract.js +25 -0
  69. package/dist/action/ja.confirm.d.ts +23 -0
  70. package/dist/action/ja.confirm.d.ts.map +1 -0
  71. package/dist/action/ja.confirm.js +28 -0
  72. package/dist/action/ja.delete-queue-command.d.ts +9 -0
  73. package/dist/action/ja.delete-queue-command.d.ts.map +1 -0
  74. package/dist/action/ja.delete-queue-command.js +9 -0
  75. package/dist/action/ja.delete-sync-scope.d.ts +10 -0
  76. package/dist/action/ja.delete-sync-scope.d.ts.map +1 -0
  77. package/dist/action/ja.delete-sync-scope.js +14 -0
  78. package/dist/action/ja.delete-sync-status.d.ts +9 -0
  79. package/dist/action/ja.delete-sync-status.d.ts.map +1 -0
  80. package/dist/action/ja.delete-sync-status.js +9 -0
  81. package/dist/action/ja.evaluate.d.ts +12 -0
  82. package/dist/action/ja.evaluate.d.ts.map +1 -0
  83. package/dist/action/ja.evaluate.js +9 -0
  84. package/dist/action/ja.execute-action.d.ts +11 -0
  85. package/dist/action/ja.execute-action.d.ts.map +1 -0
  86. package/dist/action/ja.execute-action.js +15 -0
  87. package/dist/action/ja.execute-entities.d.ts +7 -0
  88. package/dist/action/ja.execute-entities.d.ts.map +1 -0
  89. package/dist/action/ja.execute-entities.js +8 -0
  90. package/dist/action/ja.execute-entity.abstract.d.ts +41 -0
  91. package/dist/action/ja.execute-entity.abstract.d.ts.map +1 -0
  92. package/dist/action/ja.execute-entity.abstract.js +104 -0
  93. package/dist/action/ja.execute-entity.d.ts +6 -0
  94. package/dist/action/ja.execute-entity.d.ts.map +1 -0
  95. package/dist/action/ja.execute-entity.dynamic-data.d.ts +6 -0
  96. package/dist/action/ja.execute-entity.dynamic-data.d.ts.map +1 -0
  97. package/dist/action/ja.execute-entity.dynamic-data.js +2 -0
  98. package/dist/action/ja.execute-entity.generic.d.ts +11 -0
  99. package/dist/action/ja.execute-entity.generic.d.ts.map +1 -0
  100. package/dist/action/ja.execute-entity.generic.js +2 -0
  101. package/dist/action/ja.execute-entity.js +8 -0
  102. package/dist/action/ja.execute-entity.sql.d.ts +12 -0
  103. package/dist/action/ja.execute-entity.sql.d.ts.map +1 -0
  104. package/dist/action/ja.execute-entity.sql.js +2 -0
  105. package/dist/action/ja.execute-sql.abstract.d.ts +6 -0
  106. package/dist/action/ja.execute-sql.abstract.d.ts.map +1 -0
  107. package/dist/action/ja.execute-sql.abstract.js +2 -0
  108. package/dist/action/ja.execute-sql.d.ts +16 -0
  109. package/dist/action/ja.execute-sql.d.ts.map +1 -0
  110. package/dist/action/ja.execute-sql.js +64 -0
  111. package/dist/action/ja.find-replace.d.ts +12 -0
  112. package/dist/action/ja.find-replace.d.ts.map +1 -0
  113. package/dist/action/ja.find-replace.js +22 -0
  114. package/dist/action/ja.generate-file.d.ts +11 -0
  115. package/dist/action/ja.generate-file.d.ts.map +1 -0
  116. package/dist/action/ja.generate-file.js +19 -0
  117. package/dist/action/ja.generate-pdf.d.ts +10 -0
  118. package/dist/action/ja.generate-pdf.d.ts.map +1 -0
  119. package/dist/action/ja.generate-pdf.js +10 -0
  120. package/dist/action/ja.go-back.d.ts +9 -0
  121. package/dist/action/ja.go-back.d.ts.map +1 -0
  122. package/dist/action/ja.go-back.js +11 -0
  123. package/dist/action/ja.go-to.d.ts +18 -0
  124. package/dist/action/ja.go-to.d.ts.map +1 -0
  125. package/dist/action/ja.go-to.js +41 -0
  126. package/dist/action/ja.in-background.d.ts +95 -0
  127. package/dist/action/ja.in-background.d.ts.map +1 -0
  128. package/dist/action/ja.in-background.factory.d.ts +88 -0
  129. package/dist/action/ja.in-background.factory.d.ts.map +1 -0
  130. package/dist/action/ja.in-background.factory.js +98 -0
  131. package/dist/action/ja.in-background.js +247 -0
  132. package/dist/action/ja.info-modal.d.ts +37 -0
  133. package/dist/action/ja.info-modal.d.ts.map +1 -0
  134. package/dist/action/ja.info-modal.js +61 -0
  135. package/dist/action/ja.jig-actions.d.ts +16 -0
  136. package/dist/action/ja.jig-actions.d.ts.map +1 -0
  137. package/dist/action/ja.jig-actions.js +35 -0
  138. package/dist/action/ja.on-button.factory.d.ts +89 -0
  139. package/dist/action/ja.on-button.factory.d.ts.map +1 -0
  140. package/dist/action/ja.on-button.factory.js +86 -0
  141. package/dist/action/ja.open-app-settings.d.ts +6 -0
  142. package/dist/action/ja.open-app-settings.d.ts.map +1 -0
  143. package/dist/action/ja.open-app-settings.js +8 -0
  144. package/dist/action/ja.open-map.abstract.d.ts +6 -0
  145. package/dist/action/ja.open-map.abstract.d.ts.map +1 -0
  146. package/dist/action/ja.open-map.abstract.js +2 -0
  147. package/dist/action/ja.open-map.d.ts +11 -0
  148. package/dist/action/ja.open-map.d.ts.map +1 -0
  149. package/dist/action/ja.open-map.js +25 -0
  150. package/dist/action/ja.open-media-picker.abstract.d.ts +8 -0
  151. package/dist/action/ja.open-media-picker.abstract.d.ts.map +1 -0
  152. package/dist/action/ja.open-media-picker.abstract.js +2 -0
  153. package/dist/action/ja.open-media-picker.d.ts +18 -0
  154. package/dist/action/ja.open-media-picker.d.ts.map +1 -0
  155. package/dist/action/ja.open-media-picker.js +46 -0
  156. package/dist/action/ja.open-scanner.d.ts +14 -0
  157. package/dist/action/ja.open-scanner.d.ts.map +1 -0
  158. package/dist/action/ja.open-scanner.js +23 -0
  159. package/dist/action/ja.open-url.d.ts +10 -0
  160. package/dist/action/ja.open-url.d.ts.map +1 -0
  161. package/dist/action/ja.open-url.js +13 -0
  162. package/dist/action/ja.print.d.ts +10 -0
  163. package/dist/action/ja.print.d.ts.map +1 -0
  164. package/dist/action/ja.print.js +17 -0
  165. package/dist/action/ja.reset-application-state.d.ts +9 -0
  166. package/dist/action/ja.reset-application-state.d.ts.map +1 -0
  167. package/dist/action/ja.reset-application-state.js +12 -0
  168. package/dist/action/ja.reset-component-state.d.ts +9 -0
  169. package/dist/action/ja.reset-component-state.d.ts.map +1 -0
  170. package/dist/action/ja.reset-component-state.js +13 -0
  171. package/dist/action/ja.reset-screen-state.d.ts +9 -0
  172. package/dist/action/ja.reset-screen-state.d.ts.map +1 -0
  173. package/dist/action/ja.reset-screen-state.js +12 -0
  174. package/dist/action/ja.reset-state.d.ts +9 -0
  175. package/dist/action/ja.reset-state.d.ts.map +1 -0
  176. package/dist/action/ja.reset-state.js +13 -0
  177. package/dist/action/ja.retry-queue-command.d.ts +9 -0
  178. package/dist/action/ja.retry-queue-command.d.ts.map +1 -0
  179. package/dist/action/ja.retry-queue-command.js +9 -0
  180. package/dist/action/ja.sdk.d.ts +4 -0
  181. package/dist/action/ja.sdk.d.ts.map +1 -0
  182. package/dist/action/ja.sdk.js +2 -0
  183. package/dist/action/ja.set-active-tab.d.ts +13 -0
  184. package/dist/action/ja.set-active-tab.d.ts.map +1 -0
  185. package/dist/action/ja.set-active-tab.js +29 -0
  186. package/dist/action/ja.set-application-state.d.ts +9 -0
  187. package/dist/action/ja.set-application-state.d.ts.map +1 -0
  188. package/dist/action/ja.set-application-state.js +17 -0
  189. package/dist/action/ja.set-screen-state.d.ts +9 -0
  190. package/dist/action/ja.set-screen-state.d.ts.map +1 -0
  191. package/dist/action/ja.set-screen-state.js +12 -0
  192. package/dist/action/ja.share.d.ts +12 -0
  193. package/dist/action/ja.share.d.ts.map +1 -0
  194. package/dist/action/ja.share.js +23 -0
  195. package/dist/action/ja.show-alert.d.ts +33 -0
  196. package/dist/action/ja.show-alert.d.ts.map +1 -0
  197. package/dist/action/ja.show-alert.js +61 -0
  198. package/dist/action/ja.start-location-sharing.abstract.d.ts +6 -0
  199. package/dist/action/ja.start-location-sharing.abstract.d.ts.map +1 -0
  200. package/dist/action/ja.start-location-sharing.abstract.js +2 -0
  201. package/dist/action/ja.start-location-sharing.d.ts +18 -0
  202. package/dist/action/ja.start-location-sharing.d.ts.map +1 -0
  203. package/dist/action/ja.start-location-sharing.js +33 -0
  204. package/dist/action/ja.start-sync-scope.d.ts +9 -0
  205. package/dist/action/ja.start-sync-scope.d.ts.map +1 -0
  206. package/dist/action/ja.start-sync-scope.js +18 -0
  207. package/dist/action/ja.stop-location-sharing.d.ts +6 -0
  208. package/dist/action/ja.stop-location-sharing.d.ts.map +1 -0
  209. package/dist/action/ja.stop-location-sharing.js +8 -0
  210. package/dist/action/ja.submit-form.abstract.d.ts +11 -0
  211. package/dist/action/ja.submit-form.abstract.d.ts.map +1 -0
  212. package/dist/action/ja.submit-form.abstract.js +2 -0
  213. package/dist/action/ja.submit-form.d.ts +31 -0
  214. package/dist/action/ja.submit-form.d.ts.map +1 -0
  215. package/dist/action/ja.submit-form.js +124 -0
  216. package/dist/action/ja.swipeable-action.d.ts +19 -0
  217. package/dist/action/ja.swipeable-action.d.ts.map +1 -0
  218. package/dist/action/ja.swipeable-action.js +25 -0
  219. package/dist/action/ja.sync-entities.abstract.d.ts +25 -0
  220. package/dist/action/ja.sync-entities.abstract.d.ts.map +1 -0
  221. package/dist/action/ja.sync-entities.abstract.js +2 -0
  222. package/dist/action/ja.sync-entities.d.ts +32 -0
  223. package/dist/action/ja.sync-entities.d.ts.map +1 -0
  224. package/dist/action/ja.sync-entities.js +142 -0
  225. package/dist/action/ja.update-profile.d.ts +12 -0
  226. package/dist/action/ja.update-profile.d.ts.map +1 -0
  227. package/dist/action/ja.update-profile.js +20 -0
  228. package/dist/application/application.sdk.d.ts +84 -0
  229. package/dist/application/application.sdk.d.ts.map +1 -0
  230. package/dist/application/application.sdk.js +217 -0
  231. package/dist/application/application.tab.d.ts +20 -0
  232. package/dist/application/application.tab.d.ts.map +1 -0
  233. package/dist/application/application.tab.js +45 -0
  234. package/dist/application/context.sdk.d.ts +48 -0
  235. package/dist/application/context.sdk.d.ts.map +1 -0
  236. package/dist/application/context.sdk.js +116 -0
  237. package/dist/application/index.d.ts +4 -0
  238. package/dist/application/index.d.ts.map +1 -0
  239. package/dist/application/index.js +4 -0
  240. package/dist/assets/example-extraction-cache.json +9 -0
  241. package/dist/assets/extracted-core-sdk-examples.yaml +44440 -0
  242. package/dist/assets/extracted-core-sdk-types.yaml +12100 -0
  243. package/dist/assets/stream-line-icons.csv +19281 -0
  244. package/dist/assets/type-extraction-cache.json +9 -0
  245. package/dist/builder/application-analyzer/application-analyzer.d.ts +42 -0
  246. package/dist/builder/application-analyzer/application-analyzer.d.ts.map +1 -0
  247. package/dist/builder/application-analyzer/application-analyzer.js +150 -0
  248. package/dist/builder/application-analyzer/create-application-analyzer.d.ts +17 -0
  249. package/dist/builder/application-analyzer/create-application-analyzer.d.ts.map +1 -0
  250. package/dist/builder/application-analyzer/create-application-analyzer.js +121 -0
  251. package/dist/builder/application-analyzer/index.d.ts +5 -0
  252. package/dist/builder/application-analyzer/index.d.ts.map +1 -0
  253. package/dist/builder/application-analyzer/index.js +5 -0
  254. package/dist/builder/application-analyzer/select-component-nodes.d.ts +7 -0
  255. package/dist/builder/application-analyzer/select-component-nodes.d.ts.map +1 -0
  256. package/dist/builder/application-analyzer/select-component-nodes.js +15 -0
  257. package/dist/builder/application-analyzer/select-datasource-node-by-id.d.ts +8 -0
  258. package/dist/builder/application-analyzer/select-datasource-node-by-id.d.ts.map +1 -0
  259. package/dist/builder/application-analyzer/select-datasource-node-by-id.js +20 -0
  260. package/dist/builder/application-analyzer/types.d.ts +60 -0
  261. package/dist/builder/application-analyzer/types.d.ts.map +1 -0
  262. package/dist/builder/application-analyzer/types.js +16 -0
  263. package/dist/builder/application-analyzer/utils.d.ts +3 -0
  264. package/dist/builder/application-analyzer/utils.d.ts.map +1 -0
  265. package/dist/builder/application-analyzer/utils.js +8 -0
  266. package/dist/builder/builder.d.ts +8 -0
  267. package/dist/builder/builder.d.ts.map +1 -0
  268. package/dist/builder/builder.js +54 -0
  269. package/dist/builder/index.d.ts +5 -0
  270. package/dist/builder/index.d.ts.map +1 -0
  271. package/dist/builder/index.js +4 -0
  272. package/dist/builder/transform-summary.d.ts +3 -0
  273. package/dist/builder/transform-summary.d.ts.map +1 -0
  274. package/dist/builder/transform-summary.js +39 -0
  275. package/dist/builder/types.d.ts +8 -0
  276. package/dist/builder/types.d.ts.map +1 -0
  277. package/dist/builder/types.js +2 -0
  278. package/dist/builder/validate-datasource-ids.d.ts +17 -0
  279. package/dist/builder/validate-datasource-ids.d.ts.map +1 -0
  280. package/dist/builder/validate-datasource-ids.js +51 -0
  281. package/dist/component/common/index.d.ts +22 -0
  282. package/dist/component/common/index.d.ts.map +1 -0
  283. package/dist/component/common/index.js +16 -0
  284. package/dist/component/common/jc.avatar-field.types.d.ts +9 -0
  285. package/dist/component/common/jc.avatar-field.types.d.ts.map +1 -0
  286. package/dist/component/common/jc.avatar-field.types.js +11 -0
  287. package/dist/component/common/jc.chart.common.abstract.d.ts +85 -0
  288. package/dist/component/common/jc.chart.common.abstract.d.ts.map +1 -0
  289. package/dist/component/common/jc.chart.common.abstract.js +2 -0
  290. package/dist/component/common/jc.chart.common.builders.d.ts +37 -0
  291. package/dist/component/common/jc.chart.common.builders.d.ts.map +1 -0
  292. package/dist/component/common/jc.chart.common.builders.js +81 -0
  293. package/dist/component/common/jc.component.types.d.ts +101 -0
  294. package/dist/component/common/jc.component.types.d.ts.map +1 -0
  295. package/dist/component/common/jc.component.types.js +144 -0
  296. package/dist/component/common/jc.context.d.ts +7 -0
  297. package/dist/component/common/jc.context.d.ts.map +1 -0
  298. package/dist/component/common/jc.context.js +2 -0
  299. package/dist/component/common/jc.element.types.d.ts +14 -0
  300. package/dist/component/common/jc.element.types.d.ts.map +1 -0
  301. package/dist/component/common/jc.element.types.js +13 -0
  302. package/dist/component/common/jc.field-base.builder.d.ts +21 -0
  303. package/dist/component/common/jc.field-base.builder.d.ts.map +1 -0
  304. package/dist/component/common/jc.field-base.builder.js +101 -0
  305. package/dist/component/common/jc.field-base.types.d.ts +28 -0
  306. package/dist/component/common/jc.field-base.types.d.ts.map +1 -0
  307. package/dist/component/common/jc.field-base.types.js +2 -0
  308. package/dist/component/common/jc.left-right.element.avatar.d.ts +11 -0
  309. package/dist/component/common/jc.left-right.element.avatar.d.ts.map +1 -0
  310. package/dist/component/common/jc.left-right.element.avatar.js +18 -0
  311. package/dist/component/common/jc.left-right.element.badge.d.ts +11 -0
  312. package/dist/component/common/jc.left-right.element.badge.d.ts.map +1 -0
  313. package/dist/component/common/jc.left-right.element.badge.js +17 -0
  314. package/dist/component/common/jc.left-right.element.button.d.ts +11 -0
  315. package/dist/component/common/jc.left-right.element.button.d.ts.map +1 -0
  316. package/dist/component/common/jc.left-right.element.button.js +14 -0
  317. package/dist/component/common/jc.left-right.element.checkbox.d.ts +13 -0
  318. package/dist/component/common/jc.left-right.element.checkbox.d.ts.map +1 -0
  319. package/dist/component/common/jc.left-right.element.checkbox.js +21 -0
  320. package/dist/component/common/jc.left-right.element.d.ts +31 -0
  321. package/dist/component/common/jc.left-right.element.d.ts.map +1 -0
  322. package/dist/component/common/jc.left-right.element.icon.d.ts +18 -0
  323. package/dist/component/common/jc.left-right.element.icon.d.ts.map +1 -0
  324. package/dist/component/common/jc.left-right.element.icon.js +32 -0
  325. package/dist/component/common/jc.left-right.element.image.d.ts +16 -0
  326. package/dist/component/common/jc.left-right.element.image.d.ts.map +1 -0
  327. package/dist/component/common/jc.left-right.element.image.js +29 -0
  328. package/dist/component/common/jc.left-right.element.js +2 -0
  329. package/dist/component/common/jc.left-right.element.progress.d.ts +11 -0
  330. package/dist/component/common/jc.left-right.element.progress.d.ts.map +1 -0
  331. package/dist/component/common/jc.left-right.element.progress.js +17 -0
  332. package/dist/component/common/jc.left-right.element.switch.d.ts +13 -0
  333. package/dist/component/common/jc.left-right.element.switch.d.ts.map +1 -0
  334. package/dist/component/common/jc.left-right.element.switch.js +21 -0
  335. package/dist/component/common/jc.left-right.element.value.d.ts +10 -0
  336. package/dist/component/common/jc.left-right.element.value.d.ts.map +1 -0
  337. package/dist/component/common/jc.left-right.element.value.js +12 -0
  338. package/dist/component/common/jc.picker-field-options.types.d.ts +13 -0
  339. package/dist/component/common/jc.picker-field-options.types.d.ts.map +1 -0
  340. package/dist/component/common/jc.picker-field-options.types.js +2 -0
  341. package/dist/component/common/jc.text.types.d.ts +6 -0
  342. package/dist/component/common/jc.text.types.d.ts.map +1 -0
  343. package/dist/component/common/jc.text.types.js +2 -0
  344. package/dist/component/common/jc.validation.d.ts +9 -0
  345. package/dist/component/common/jc.validation.d.ts.map +1 -0
  346. package/dist/component/common/jc.validation.js +48 -0
  347. package/dist/component/index.d.ts +86 -0
  348. package/dist/component/index.d.ts.map +1 -0
  349. package/dist/component/index.js +83 -0
  350. package/dist/component/jc.abstract.d.ts +32 -0
  351. package/dist/component/jc.abstract.d.ts.map +1 -0
  352. package/dist/component/jc.abstract.factory.d.ts +488 -0
  353. package/dist/component/jc.abstract.factory.d.ts.map +1 -0
  354. package/dist/component/jc.abstract.factory.js +757 -0
  355. package/dist/component/jc.abstract.js +53 -0
  356. package/dist/component/jc.abstract.utils.d.ts +3 -0
  357. package/dist/component/jc.abstract.utils.d.ts.map +1 -0
  358. package/dist/component/jc.abstract.utils.js +26 -0
  359. package/dist/component/jc.amount-control.d.ts +16 -0
  360. package/dist/component/jc.amount-control.d.ts.map +1 -0
  361. package/dist/component/jc.amount-control.js +36 -0
  362. package/dist/component/jc.avatar-field.d.ts +11 -0
  363. package/dist/component/jc.avatar-field.d.ts.map +1 -0
  364. package/dist/component/jc.avatar-field.js +27 -0
  365. package/dist/component/jc.avatar.d.ts +14 -0
  366. package/dist/component/jc.avatar.d.ts.map +1 -0
  367. package/dist/component/jc.avatar.js +26 -0
  368. package/dist/component/jc.banner.d.ts +81 -0
  369. package/dist/component/jc.banner.d.ts.map +1 -0
  370. package/dist/component/jc.banner.js +49 -0
  371. package/dist/component/jc.bar-chart.d.ts +23 -0
  372. package/dist/component/jc.bar-chart.d.ts.map +1 -0
  373. package/dist/component/jc.bar-chart.js +45 -0
  374. package/dist/component/jc.button.d.ts +20 -0
  375. package/dist/component/jc.button.d.ts.map +1 -0
  376. package/dist/component/jc.button.js +39 -0
  377. package/dist/component/jc.card.abstract.d.ts +14 -0
  378. package/dist/component/jc.card.abstract.d.ts.map +1 -0
  379. package/dist/component/jc.card.abstract.js +31 -0
  380. package/dist/component/jc.card.on-default.d.ts +91 -0
  381. package/dist/component/jc.card.on-default.d.ts.map +1 -0
  382. package/dist/component/jc.card.on-default.js +96 -0
  383. package/dist/component/jc.carousel.d.ts +31 -0
  384. package/dist/component/jc.carousel.d.ts.map +1 -0
  385. package/dist/component/jc.carousel.js +58 -0
  386. package/dist/component/jc.chat-message.d.ts +17 -0
  387. package/dist/component/jc.chat-message.d.ts.map +1 -0
  388. package/dist/component/jc.chat-message.js +32 -0
  389. package/dist/component/jc.chat.d.ts +23 -0
  390. package/dist/component/jc.chat.d.ts.map +1 -0
  391. package/dist/component/jc.chat.js +68 -0
  392. package/dist/component/jc.checkbox.d.ts +15 -0
  393. package/dist/component/jc.checkbox.d.ts.map +1 -0
  394. package/dist/component/jc.checkbox.js +38 -0
  395. package/dist/component/jc.choice-field-item.d.ts +15 -0
  396. package/dist/component/jc.choice-field-item.d.ts.map +1 -0
  397. package/dist/component/jc.choice-field-item.js +41 -0
  398. package/dist/component/jc.choice-field.d.ts +21 -0
  399. package/dist/component/jc.choice-field.d.ts.map +1 -0
  400. package/dist/component/jc.choice-field.js +34 -0
  401. package/dist/component/jc.count-down.d.ts +18 -0
  402. package/dist/component/jc.count-down.d.ts.map +1 -0
  403. package/dist/component/jc.count-down.js +55 -0
  404. package/dist/component/jc.count-up.d.ts +15 -0
  405. package/dist/component/jc.count-up.d.ts.map +1 -0
  406. package/dist/component/jc.count-up.js +42 -0
  407. package/dist/component/jc.custom-component.interop.d.ts +58 -0
  408. package/dist/component/jc.custom-component.interop.d.ts.map +1 -0
  409. package/dist/component/jc.custom-component.interop.js +115 -0
  410. package/dist/component/jc.date-picker.d.ts +15 -0
  411. package/dist/component/jc.date-picker.d.ts.map +1 -0
  412. package/dist/component/jc.date-picker.js +31 -0
  413. package/dist/component/jc.divider.d.ts +7 -0
  414. package/dist/component/jc.divider.d.ts.map +1 -0
  415. package/dist/component/jc.divider.js +8 -0
  416. package/dist/component/jc.dropdown.d.ts +20 -0
  417. package/dist/component/jc.dropdown.d.ts.map +1 -0
  418. package/dist/component/jc.dropdown.item.d.ts +22 -0
  419. package/dist/component/jc.dropdown.item.d.ts.map +1 -0
  420. package/dist/component/jc.dropdown.item.js +85 -0
  421. package/dist/component/jc.dropdown.js +33 -0
  422. package/dist/component/jc.duration-picker.d.ts +18 -0
  423. package/dist/component/jc.duration-picker.d.ts.map +1 -0
  424. package/dist/component/jc.duration-picker.js +35 -0
  425. package/dist/component/jc.email-field.d.ts +11 -0
  426. package/dist/component/jc.email-field.d.ts.map +1 -0
  427. package/dist/component/jc.email-field.js +19 -0
  428. package/dist/component/jc.entity-field.d.ts +23 -0
  429. package/dist/component/jc.entity-field.d.ts.map +1 -0
  430. package/dist/component/jc.entity-field.js +71 -0
  431. package/dist/component/jc.entity.d.ts +15 -0
  432. package/dist/component/jc.entity.d.ts.map +1 -0
  433. package/dist/component/jc.entity.js +27 -0
  434. package/dist/component/jc.event.d.ts +22 -0
  435. package/dist/component/jc.event.d.ts.map +1 -0
  436. package/dist/component/jc.event.js +68 -0
  437. package/dist/component/jc.expander.d.ts +49 -0
  438. package/dist/component/jc.expander.d.ts.map +1 -0
  439. package/dist/component/jc.expander.header.d.ts +25 -0
  440. package/dist/component/jc.expander.header.d.ts.map +1 -0
  441. package/dist/component/jc.expander.header.js +39 -0
  442. package/dist/component/jc.expander.js +53 -0
  443. package/dist/component/jc.field-row.d.ts +34 -0
  444. package/dist/component/jc.field-row.d.ts.map +1 -0
  445. package/dist/component/jc.field-row.entity.d.ts +12 -0
  446. package/dist/component/jc.field-row.entity.d.ts.map +1 -0
  447. package/dist/component/jc.field-row.entity.js +35 -0
  448. package/dist/component/jc.field-row.js +37 -0
  449. package/dist/component/jc.form.d.ts +98 -0
  450. package/dist/component/jc.form.d.ts.map +1 -0
  451. package/dist/component/jc.form.js +127 -0
  452. package/dist/component/jc.gallery-item.d.ts +12 -0
  453. package/dist/component/jc.gallery-item.d.ts.map +1 -0
  454. package/dist/component/jc.gallery-item.js +24 -0
  455. package/dist/component/jc.grid-item.d.ts +15 -0
  456. package/dist/component/jc.grid-item.d.ts.map +1 -0
  457. package/dist/component/jc.grid-item.js +31 -0
  458. package/dist/component/jc.grid.d.ts +16 -0
  459. package/dist/component/jc.grid.d.ts.map +1 -0
  460. package/dist/component/jc.grid.js +64 -0
  461. package/dist/component/jc.guards.d.ts +17 -0
  462. package/dist/component/jc.guards.d.ts.map +1 -0
  463. package/dist/component/jc.guards.js +14 -0
  464. package/dist/component/jc.icon.d.ts +19 -0
  465. package/dist/component/jc.icon.d.ts.map +1 -0
  466. package/dist/component/jc.icon.js +41 -0
  467. package/dist/component/jc.image.abstract.d.ts +28 -0
  468. package/dist/component/jc.image.abstract.d.ts.map +1 -0
  469. package/dist/component/jc.image.abstract.js +52 -0
  470. package/dist/component/jc.image.d.ts +5 -0
  471. package/dist/component/jc.image.d.ts.map +1 -0
  472. package/dist/component/jc.image.js +2 -0
  473. package/dist/component/jc.image.on-carousel.d.ts +23 -0
  474. package/dist/component/jc.image.on-carousel.d.ts.map +1 -0
  475. package/dist/component/jc.image.on-carousel.js +19 -0
  476. package/dist/component/jc.image.on-default.d.ts +25 -0
  477. package/dist/component/jc.image.on-default.d.ts.map +1 -0
  478. package/dist/component/jc.image.on-default.js +22 -0
  479. package/dist/component/jc.interactive-image.d.ts +41 -0
  480. package/dist/component/jc.interactive-image.d.ts.map +1 -0
  481. package/dist/component/jc.interactive-image.item.d.ts +24 -0
  482. package/dist/component/jc.interactive-image.item.d.ts.map +1 -0
  483. package/dist/component/jc.interactive-image.item.js +78 -0
  484. package/dist/component/jc.interactive-image.js +78 -0
  485. package/dist/component/jc.jig-header.d.ts +19 -0
  486. package/dist/component/jc.jig-header.d.ts.map +1 -0
  487. package/dist/component/jc.jig-header.js +42 -0
  488. package/dist/component/jc.jig-widget.d.ts +15 -0
  489. package/dist/component/jc.jig-widget.d.ts.map +1 -0
  490. package/dist/component/jc.jig-widget.js +41 -0
  491. package/dist/component/jc.jig.d.ts +11 -0
  492. package/dist/component/jc.jig.d.ts.map +1 -0
  493. package/dist/component/jc.jig.js +24 -0
  494. package/dist/component/jc.line-chart.d.ts +28 -0
  495. package/dist/component/jc.line-chart.d.ts.map +1 -0
  496. package/dist/component/jc.line-chart.js +45 -0
  497. package/dist/component/jc.list-item.d.ts +106 -0
  498. package/dist/component/jc.list-item.d.ts.map +1 -0
  499. package/dist/component/jc.list-item.js +274 -0
  500. package/dist/component/jc.list-item.standalone.d.ts +13 -0
  501. package/dist/component/jc.list-item.standalone.d.ts.map +1 -0
  502. package/dist/component/jc.list-item.standalone.js +10 -0
  503. package/dist/component/jc.list.abstract.d.ts +36 -0
  504. package/dist/component/jc.list.abstract.d.ts.map +1 -0
  505. package/dist/component/jc.list.abstract.js +2 -0
  506. package/dist/component/jc.list.d.ts +39 -0
  507. package/dist/component/jc.list.d.ts.map +1 -0
  508. package/dist/component/jc.list.js +95 -0
  509. package/dist/component/jc.location.d.ts +41 -0
  510. package/dist/component/jc.location.d.ts.map +1 -0
  511. package/dist/component/jc.location.js +63 -0
  512. package/dist/component/jc.marker-item.d.ts +29 -0
  513. package/dist/component/jc.marker-item.d.ts.map +1 -0
  514. package/dist/component/jc.marker-item.js +48 -0
  515. package/dist/component/jc.media-field.d.ts +13 -0
  516. package/dist/component/jc.media-field.d.ts.map +1 -0
  517. package/dist/component/jc.media-field.js +37 -0
  518. package/dist/component/jc.menu-item.d.ts +89 -0
  519. package/dist/component/jc.menu-item.d.ts.map +1 -0
  520. package/dist/component/jc.menu-item.js +65 -0
  521. package/dist/component/jc.number-field.d.ts +21 -0
  522. package/dist/component/jc.number-field.d.ts.map +1 -0
  523. package/dist/component/jc.number-field.js +33 -0
  524. package/dist/component/jc.pie-chart.d.ts +26 -0
  525. package/dist/component/jc.pie-chart.d.ts.map +1 -0
  526. package/dist/component/jc.pie-chart.js +45 -0
  527. package/dist/component/jc.product-item.amount.d.ts +17 -0
  528. package/dist/component/jc.product-item.amount.d.ts.map +1 -0
  529. package/dist/component/jc.product-item.amount.js +31 -0
  530. package/dist/component/jc.product-item.d.ts +30 -0
  531. package/dist/component/jc.product-item.d.ts.map +1 -0
  532. package/dist/component/jc.product-item.js +68 -0
  533. package/dist/component/jc.progress-bar.d.ts +45 -0
  534. package/dist/component/jc.progress-bar.d.ts.map +1 -0
  535. package/dist/component/jc.progress-bar.js +58 -0
  536. package/dist/component/jc.rating.d.ts +17 -0
  537. package/dist/component/jc.rating.d.ts.map +1 -0
  538. package/dist/component/jc.rating.js +38 -0
  539. package/dist/component/jc.section.abstract.d.ts +87 -0
  540. package/dist/component/jc.section.abstract.d.ts.map +1 -0
  541. package/dist/component/jc.section.abstract.js +33 -0
  542. package/dist/component/jc.section.on-default.d.ts +85 -0
  543. package/dist/component/jc.section.on-default.d.ts.map +1 -0
  544. package/dist/component/jc.section.on-default.js +85 -0
  545. package/dist/component/jc.section.on-entity.d.ts +11 -0
  546. package/dist/component/jc.section.on-entity.d.ts.map +1 -0
  547. package/dist/component/jc.section.on-entity.js +11 -0
  548. package/dist/component/jc.segmented-control.d.ts +23 -0
  549. package/dist/component/jc.segmented-control.d.ts.map +1 -0
  550. package/dist/component/jc.segmented-control.js +66 -0
  551. package/dist/component/jc.signature-field.d.ts +11 -0
  552. package/dist/component/jc.signature-field.d.ts.map +1 -0
  553. package/dist/component/jc.signature-field.js +18 -0
  554. package/dist/component/jc.slider.d.ts +36 -0
  555. package/dist/component/jc.slider.d.ts.map +1 -0
  556. package/dist/component/jc.slider.js +53 -0
  557. package/dist/component/jc.stage.d.ts +23 -0
  558. package/dist/component/jc.stage.d.ts.map +1 -0
  559. package/dist/component/jc.stage.js +31 -0
  560. package/dist/component/jc.step.d.ts +30 -0
  561. package/dist/component/jc.step.d.ts.map +1 -0
  562. package/dist/component/jc.step.js +35 -0
  563. package/dist/component/jc.stepper.d.ts +34 -0
  564. package/dist/component/jc.stepper.d.ts.map +1 -0
  565. package/dist/component/jc.stepper.js +59 -0
  566. package/dist/component/jc.story-group.d.ts +18 -0
  567. package/dist/component/jc.story-group.d.ts.map +1 -0
  568. package/dist/component/jc.story-group.js +27 -0
  569. package/dist/component/jc.summary.abstract.d.ts +15 -0
  570. package/dist/component/jc.summary.abstract.d.ts.map +1 -0
  571. package/dist/component/jc.summary.abstract.js +29 -0
  572. package/dist/component/jc.summary.card.d.ts +14 -0
  573. package/dist/component/jc.summary.card.d.ts.map +1 -0
  574. package/dist/component/jc.summary.card.js +36 -0
  575. package/dist/component/jc.summary.counter.d.ts +12 -0
  576. package/dist/component/jc.summary.counter.d.ts.map +1 -0
  577. package/dist/component/jc.summary.counter.js +28 -0
  578. package/dist/component/jc.summary.default.d.ts +16 -0
  579. package/dist/component/jc.summary.default.d.ts.map +1 -0
  580. package/dist/component/jc.summary.default.js +34 -0
  581. package/dist/component/jc.summary.progress.d.ts +46 -0
  582. package/dist/component/jc.summary.progress.d.ts.map +1 -0
  583. package/dist/component/jc.summary.progress.js +35 -0
  584. package/dist/component/jc.tab-button.d.ts +18 -0
  585. package/dist/component/jc.tab-button.d.ts.map +1 -0
  586. package/dist/component/jc.tab-button.js +43 -0
  587. package/dist/component/jc.text-field.d.ts +20 -0
  588. package/dist/component/jc.text-field.d.ts.map +1 -0
  589. package/dist/component/jc.text-field.js +49 -0
  590. package/dist/component/jc.text.d.ts +24 -0
  591. package/dist/component/jc.text.d.ts.map +1 -0
  592. package/dist/component/jc.text.js +44 -0
  593. package/dist/component/jc.titles.d.ts +19 -0
  594. package/dist/component/jc.titles.d.ts.map +1 -0
  595. package/dist/component/jc.titles.js +34 -0
  596. package/dist/component/jc.trend.d.ts +18 -0
  597. package/dist/component/jc.trend.d.ts.map +1 -0
  598. package/dist/component/jc.trend.js +31 -0
  599. package/dist/component/jc.types.d.ts +75 -0
  600. package/dist/component/jc.types.d.ts.map +1 -0
  601. package/dist/component/jc.types.js +74 -0
  602. package/dist/component/jc.video-player.abstract.d.ts +28 -0
  603. package/dist/component/jc.video-player.abstract.d.ts.map +1 -0
  604. package/dist/component/jc.video-player.abstract.js +38 -0
  605. package/dist/component/jc.video-player.d.ts +4 -0
  606. package/dist/component/jc.video-player.d.ts.map +1 -0
  607. package/dist/component/jc.video-player.js +2 -0
  608. package/dist/component/jc.video-player.on-jig.d.ts +25 -0
  609. package/dist/component/jc.video-player.on-jig.d.ts.map +1 -0
  610. package/dist/component/jc.video-player.on-jig.js +31 -0
  611. package/dist/component/jc.view.d.ts +158 -0
  612. package/dist/component/jc.view.d.ts.map +1 -0
  613. package/dist/component/jc.view.js +85 -0
  614. package/dist/component/jc.web-view.abstract.d.ts +15 -0
  615. package/dist/component/jc.web-view.abstract.d.ts.map +1 -0
  616. package/dist/component/jc.web-view.abstract.js +33 -0
  617. package/dist/component/jc.web-view.on-default.d.ts +5 -0
  618. package/dist/component/jc.web-view.on-default.d.ts.map +1 -0
  619. package/dist/component/jc.web-view.on-default.js +4 -0
  620. package/dist/component/jc.web-view.on-full.d.ts +10 -0
  621. package/dist/component/jc.web-view.on-full.d.ts.map +1 -0
  622. package/dist/component/jc.web-view.on-full.js +14 -0
  623. package/dist/database/database.abstract.d.ts +39 -0
  624. package/dist/database/database.abstract.d.ts.map +1 -0
  625. package/dist/database/database.abstract.js +42 -0
  626. package/dist/database/index.d.ts +2 -0
  627. package/dist/database/index.d.ts.map +1 -0
  628. package/dist/database/index.js +2 -0
  629. package/dist/datasource/datasource.abstract.d.ts +39 -0
  630. package/dist/datasource/datasource.abstract.d.ts.map +1 -0
  631. package/dist/datasource/datasource.abstract.js +47 -0
  632. package/dist/datasource/datasource.descriptor.d.ts +11 -0
  633. package/dist/datasource/datasource.descriptor.d.ts.map +1 -0
  634. package/dist/datasource/datasource.descriptor.js +2 -0
  635. package/dist/datasource/datasource.reference.d.ts +33 -0
  636. package/dist/datasource/datasource.reference.d.ts.map +1 -0
  637. package/dist/datasource/datasource.reference.js +66 -0
  638. package/dist/datasource/datasource.sdk.d.ts +7 -0
  639. package/dist/datasource/datasource.sdk.d.ts.map +1 -0
  640. package/dist/datasource/datasource.sdk.js +5 -0
  641. package/dist/datasource/datasource.sqlite.d.ts +88 -0
  642. package/dist/datasource/datasource.sqlite.d.ts.map +1 -0
  643. package/dist/datasource/datasource.sqlite.js +286 -0
  644. package/dist/datasource/datasource.static.d.ts +21 -0
  645. package/dist/datasource/datasource.static.d.ts.map +1 -0
  646. package/dist/datasource/datasource.static.js +30 -0
  647. package/dist/datasource/datasource.system.d.ts +18 -0
  648. package/dist/datasource/datasource.system.d.ts.map +1 -0
  649. package/dist/datasource/datasource.system.js +10 -0
  650. package/dist/datasource/entity.descriptor.d.ts +9 -0
  651. package/dist/datasource/entity.descriptor.d.ts.map +1 -0
  652. package/dist/datasource/entity.descriptor.js +2 -0
  653. package/dist/datasource/index.d.ts +11 -0
  654. package/dist/datasource/index.d.ts.map +1 -0
  655. package/dist/datasource/index.js +9 -0
  656. package/dist/datasource/sqlite-normalizer.d.ts +3 -0
  657. package/dist/datasource/sqlite-normalizer.d.ts.map +1 -0
  658. package/dist/datasource/sqlite-normalizer.js +194 -0
  659. package/dist/datasource/sqlite-validator.d.ts +28 -0
  660. package/dist/datasource/sqlite-validator.d.ts.map +1 -0
  661. package/dist/datasource/sqlite-validator.js +218 -0
  662. package/dist/function/function.abstract.d.ts +538 -0
  663. package/dist/function/function.abstract.d.ts.map +1 -0
  664. package/dist/function/function.abstract.js +271 -0
  665. package/dist/function/function.guard.d.ts +17 -0
  666. package/dist/function/function.guard.d.ts.map +1 -0
  667. package/dist/function/function.guard.js +62 -0
  668. package/dist/function/function.operation.d.ts +26 -0
  669. package/dist/function/function.operation.d.ts.map +1 -0
  670. package/dist/function/function.operation.js +118 -0
  671. package/dist/function/function.rest.continuation.d.ts +12 -0
  672. package/dist/function/function.rest.continuation.d.ts.map +1 -0
  673. package/dist/function/function.rest.continuation.js +24 -0
  674. package/dist/function/function.rest.d.ts +31 -0
  675. package/dist/function/function.rest.d.ts.map +1 -0
  676. package/dist/function/function.rest.error-builder.d.ts +38 -0
  677. package/dist/function/function.rest.error-builder.d.ts.map +1 -0
  678. package/dist/function/function.rest.error-builder.js +161 -0
  679. package/dist/function/function.rest.js +72 -0
  680. package/dist/function/function.rest.parameter-builder.d.ts +33 -0
  681. package/dist/function/function.rest.parameter-builder.d.ts.map +1 -0
  682. package/dist/function/function.rest.parameter-builder.js +81 -0
  683. package/dist/function/function.rest.types.d.ts +28 -0
  684. package/dist/function/function.rest.types.d.ts.map +1 -0
  685. package/dist/function/function.rest.types.js +2 -0
  686. package/dist/function/function.sdk.d.ts +10 -0
  687. package/dist/function/function.sdk.d.ts.map +1 -0
  688. package/dist/function/function.sdk.js +12 -0
  689. package/dist/function/function.soap.d.ts +19 -0
  690. package/dist/function/function.soap.d.ts.map +1 -0
  691. package/dist/function/function.soap.js +36 -0
  692. package/dist/function/function.soap.parameter-builder.d.ts +25 -0
  693. package/dist/function/function.soap.parameter-builder.d.ts.map +1 -0
  694. package/dist/function/function.soap.parameter-builder.js +41 -0
  695. package/dist/function/function.soap.types.d.ts +17 -0
  696. package/dist/function/function.soap.types.d.ts.map +1 -0
  697. package/dist/function/function.soap.types.js +2 -0
  698. package/dist/function/function.sql.d.ts +20 -0
  699. package/dist/function/function.sql.d.ts.map +1 -0
  700. package/dist/function/function.sql.js +53 -0
  701. package/dist/function/function.sql.parameter-builder.d.ts +24 -0
  702. package/dist/function/function.sql.parameter-builder.d.ts.map +1 -0
  703. package/dist/function/function.sql.parameter-builder.js +44 -0
  704. package/dist/function/function.sql.types.d.ts +20 -0
  705. package/dist/function/function.sql.types.d.ts.map +1 -0
  706. package/dist/function/function.sql.types.js +2 -0
  707. package/dist/function/function.types.d.ts +7 -0
  708. package/dist/function/function.types.d.ts.map +1 -0
  709. package/dist/function/function.types.js +2 -0
  710. package/dist/function/index.d.ts +17 -0
  711. package/dist/function/index.d.ts.map +1 -0
  712. package/dist/function/index.js +13 -0
  713. package/dist/icon/index.d.ts +3 -0
  714. package/dist/icon/index.d.ts.map +1 -0
  715. package/dist/icon/index.js +3 -0
  716. package/dist/icon/sdk.icon.d.ts +10 -0
  717. package/dist/icon/sdk.icon.d.ts.map +1 -0
  718. package/dist/icon/sdk.icon.data.d.ts +7 -0
  719. package/dist/icon/sdk.icon.data.d.ts.map +1 -0
  720. package/dist/icon/sdk.icon.data.js +19283 -0
  721. package/dist/icon/sdk.icon.js +27 -0
  722. package/dist/icon/sdk.icon.loader.d.ts +7 -0
  723. package/dist/icon/sdk.icon.loader.d.ts.map +1 -0
  724. package/dist/icon/sdk.icon.loader.js +15 -0
  725. package/dist/icon/sdk.icon.name.d.ts +7 -0
  726. package/dist/icon/sdk.icon.name.d.ts.map +1 -0
  727. package/dist/icon/sdk.icon.name.js +19305 -0
  728. package/dist/index.d.ts +14 -0
  729. package/dist/index.d.ts.map +1 -0
  730. package/dist/index.js +14 -0
  731. package/dist/jsonata/ast.d.ts +15 -0
  732. package/dist/jsonata/ast.d.ts.map +1 -0
  733. package/dist/jsonata/ast.js +118 -0
  734. package/dist/jsonata/base.d.ts +7 -0
  735. package/dist/jsonata/base.d.ts.map +1 -0
  736. package/dist/jsonata/base.js +43 -0
  737. package/dist/jsonata/builder.d.ts +28 -0
  738. package/dist/jsonata/builder.d.ts.map +1 -0
  739. package/dist/jsonata/builder.js +140 -0
  740. package/dist/jsonata/context.d.ts +10 -0
  741. package/dist/jsonata/context.d.ts.map +1 -0
  742. package/dist/jsonata/context.js +349 -0
  743. package/dist/jsonata/expression.d.ts +35 -0
  744. package/dist/jsonata/expression.d.ts.map +1 -0
  745. package/dist/jsonata/expression.js +498 -0
  746. package/dist/jsonata/index.d.ts +6 -0
  747. package/dist/jsonata/index.d.ts.map +1 -0
  748. package/dist/jsonata/index.js +6 -0
  749. package/dist/logger/index.d.ts +2 -0
  750. package/dist/logger/index.d.ts.map +1 -0
  751. package/dist/logger/index.js +2 -0
  752. package/dist/logger/logger.d.ts +14 -0
  753. package/dist/logger/logger.d.ts.map +1 -0
  754. package/dist/logger/logger.js +40 -0
  755. package/dist/runtime/auth.d.ts +19 -0
  756. package/dist/runtime/auth.d.ts.map +1 -0
  757. package/dist/runtime/auth.js +11 -0
  758. package/dist/runtime/index.d.ts +5 -0
  759. package/dist/runtime/index.d.ts.map +1 -0
  760. package/dist/runtime/index.js +3 -0
  761. package/dist/runtime/system.d.ts +27 -0
  762. package/dist/runtime/system.d.ts.map +1 -0
  763. package/dist/runtime/system.js +26 -0
  764. package/dist/screen/common/index.d.ts +9 -0
  765. package/dist/screen/common/index.d.ts.map +1 -0
  766. package/dist/screen/common/index.js +7 -0
  767. package/dist/screen/common/screen.badge.d.ts +8 -0
  768. package/dist/screen/common/screen.badge.d.ts.map +1 -0
  769. package/dist/screen/common/screen.badge.js +2 -0
  770. package/dist/screen/common/screen.bottom-sheet.d.ts +62 -0
  771. package/dist/screen/common/screen.bottom-sheet.d.ts.map +1 -0
  772. package/dist/screen/common/screen.bottom-sheet.js +31 -0
  773. package/dist/screen/common/screen.callback-actions.d.ts +7 -0
  774. package/dist/screen/common/screen.callback-actions.d.ts.map +1 -0
  775. package/dist/screen/common/screen.callback-actions.js +19 -0
  776. package/dist/screen/common/screen.input-definition.d.ts +108 -0
  777. package/dist/screen/common/screen.input-definition.d.ts.map +1 -0
  778. package/dist/screen/common/screen.input-definition.js +109 -0
  779. package/dist/screen/common/screen.placeholder.d.ts +20 -0
  780. package/dist/screen/common/screen.placeholder.d.ts.map +1 -0
  781. package/dist/screen/common/screen.placeholder.js +54 -0
  782. package/dist/screen/common/screen.preview.actions.d.ts +47 -0
  783. package/dist/screen/common/screen.preview.actions.d.ts.map +1 -0
  784. package/dist/screen/common/screen.preview.actions.js +122 -0
  785. package/dist/screen/common/screen.preview.d.ts +40 -0
  786. package/dist/screen/common/screen.preview.d.ts.map +1 -0
  787. package/dist/screen/common/screen.preview.js +87 -0
  788. package/dist/screen/common/screen.state.d.ts +7 -0
  789. package/dist/screen/common/screen.state.d.ts.map +1 -0
  790. package/dist/screen/common/screen.state.js +2 -0
  791. package/dist/screen/common/screen.summary.d.ts +14 -0
  792. package/dist/screen/common/screen.summary.d.ts.map +1 -0
  793. package/dist/screen/common/screen.summary.js +22 -0
  794. package/dist/screen/index.d.ts +16 -0
  795. package/dist/screen/index.d.ts.map +1 -0
  796. package/dist/screen/index.js +16 -0
  797. package/dist/screen/screen.abstract.d.ts +105 -0
  798. package/dist/screen/screen.abstract.d.ts.map +1 -0
  799. package/dist/screen/screen.abstract.js +175 -0
  800. package/dist/screen/screen.calendar.d.ts +22 -0
  801. package/dist/screen/screen.calendar.d.ts.map +1 -0
  802. package/dist/screen/screen.calendar.js +32 -0
  803. package/dist/screen/screen.default.d.ts +65 -0
  804. package/dist/screen/screen.default.d.ts.map +1 -0
  805. package/dist/screen/screen.default.js +68 -0
  806. package/dist/screen/screen.document.d.ts +58 -0
  807. package/dist/screen/screen.document.d.ts.map +1 -0
  808. package/dist/screen/screen.document.js +72 -0
  809. package/dist/screen/screen.full-screen.d.ts +23 -0
  810. package/dist/screen/screen.full-screen.d.ts.map +1 -0
  811. package/dist/screen/screen.full-screen.js +18 -0
  812. package/dist/screen/screen.gallery.d.ts +15 -0
  813. package/dist/screen/screen.gallery.d.ts.map +1 -0
  814. package/dist/screen/screen.gallery.js +14 -0
  815. package/dist/screen/screen.grid.base.d.ts +18 -0
  816. package/dist/screen/screen.grid.base.d.ts.map +1 -0
  817. package/dist/screen/screen.grid.base.js +17 -0
  818. package/dist/screen/screen.grid.dynamic.d.ts +18 -0
  819. package/dist/screen/screen.grid.dynamic.d.ts.map +1 -0
  820. package/dist/screen/screen.grid.dynamic.js +26 -0
  821. package/dist/screen/screen.grid.static.d.ts +14 -0
  822. package/dist/screen/screen.grid.static.d.ts.map +1 -0
  823. package/dist/screen/screen.grid.static.js +12 -0
  824. package/dist/screen/screen.guards.d.ts +41 -0
  825. package/dist/screen/screen.guards.d.ts.map +1 -0
  826. package/dist/screen/screen.guards.js +35 -0
  827. package/dist/screen/screen.list.d.ts +79 -0
  828. package/dist/screen/screen.list.d.ts.map +1 -0
  829. package/dist/screen/screen.list.js +123 -0
  830. package/dist/screen/screen.sdk.d.ts +13 -0
  831. package/dist/screen/screen.sdk.d.ts.map +1 -0
  832. package/dist/screen/screen.sdk.js +9 -0
  833. package/dist/screen/screen.tabs.d.ts +27 -0
  834. package/dist/screen/screen.tabs.d.ts.map +1 -0
  835. package/dist/screen/screen.tabs.instance.d.ts +34 -0
  836. package/dist/screen/screen.tabs.instance.d.ts.map +1 -0
  837. package/dist/screen/screen.tabs.instance.js +79 -0
  838. package/dist/screen/screen.tabs.js +35 -0
  839. package/dist/screen/screen.wizard.d.ts +12 -0
  840. package/dist/screen/screen.wizard.d.ts.map +1 -0
  841. package/dist/screen/screen.wizard.instance.d.ts +20 -0
  842. package/dist/screen/screen.wizard.instance.d.ts.map +1 -0
  843. package/dist/screen/screen.wizard.instance.js +40 -0
  844. package/dist/screen/screen.wizard.js +23 -0
  845. package/dist/utils/check.d.ts +3 -0
  846. package/dist/utils/check.d.ts.map +1 -0
  847. package/dist/utils/check.js +7 -0
  848. package/dist/utils/convert.d.ts +2 -0
  849. package/dist/utils/convert.d.ts.map +1 -0
  850. package/dist/utils/convert.js +8 -0
  851. package/dist/utils/dedent.d.ts +2 -0
  852. package/dist/utils/dedent.d.ts.map +1 -0
  853. package/dist/utils/dedent.js +28 -0
  854. package/dist/utils/index.d.ts +6 -0
  855. package/dist/utils/index.d.ts.map +1 -0
  856. package/dist/utils/index.js +5 -0
  857. package/dist/utils/types.d.ts +2 -0
  858. package/dist/utils/types.d.ts.map +1 -0
  859. package/dist/utils/types.js +2 -0
  860. package/dist/utils/utils.d.ts +9 -0
  861. package/dist/utils/utils.d.ts.map +1 -0
  862. package/dist/utils/utils.js +49 -0
  863. package/dist/widget/index.d.ts +12 -0
  864. package/dist/widget/index.d.ts.map +1 -0
  865. package/dist/widget/index.js +12 -0
  866. package/dist/widget/jw.abstract.d.ts +27 -0
  867. package/dist/widget/jw.abstract.d.ts.map +1 -0
  868. package/dist/widget/jw.abstract.js +36 -0
  869. package/dist/widget/jw.actions.d.ts +17 -0
  870. package/dist/widget/jw.actions.d.ts.map +1 -0
  871. package/dist/widget/jw.actions.js +30 -0
  872. package/dist/widget/jw.avatar.d.ts +19 -0
  873. package/dist/widget/jw.avatar.d.ts.map +1 -0
  874. package/dist/widget/jw.avatar.js +23 -0
  875. package/dist/widget/jw.chart.d.ts +18 -0
  876. package/dist/widget/jw.chart.d.ts.map +1 -0
  877. package/dist/widget/jw.chart.js +23 -0
  878. package/dist/widget/jw.group.d.ts +28 -0
  879. package/dist/widget/jw.group.d.ts.map +1 -0
  880. package/dist/widget/jw.group.js +35 -0
  881. package/dist/widget/jw.image.d.ts +27 -0
  882. package/dist/widget/jw.image.d.ts.map +1 -0
  883. package/dist/widget/jw.image.js +54 -0
  884. package/dist/widget/jw.list.d.ts +44 -0
  885. package/dist/widget/jw.list.d.ts.map +1 -0
  886. package/dist/widget/jw.list.js +44 -0
  887. package/dist/widget/jw.location.d.ts +41 -0
  888. package/dist/widget/jw.location.d.ts.map +1 -0
  889. package/dist/widget/jw.location.js +54 -0
  890. package/dist/widget/jw.sdk.d.ts +2 -0
  891. package/dist/widget/jw.sdk.d.ts.map +1 -0
  892. package/dist/widget/jw.sdk.js +2 -0
  893. package/dist/widget/jw.status.condition.d.ts +20 -0
  894. package/dist/widget/jw.status.condition.d.ts.map +1 -0
  895. package/dist/widget/jw.status.condition.js +27 -0
  896. package/dist/widget/jw.status.d.ts +8 -0
  897. package/dist/widget/jw.status.d.ts.map +1 -0
  898. package/dist/widget/jw.status.js +11 -0
  899. package/dist/widget/jw.value.d.ts +24 -0
  900. package/dist/widget/jw.value.d.ts.map +1 -0
  901. package/dist/widget/jw.value.js +51 -0
  902. package/package.json +94 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.abstract.d.ts","sourceRoot":"","sources":["../../src/widget/jw.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACd,gBAAgB,EAEhB,KAAK,UAAU,EAChB,MAAM,sBAAsB,CAAA;AAE7B,MAAM,WAAW,MAAM;IAKrB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IAMzB,UAAU,CAAC,EAAE,UAAU,CAAA;IAMvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC1C;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,CAAA;IACpC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;CAC1C;AAED,8BAAsB,iBAAiB,CAAC,MAAM,SAAS,WAAW;IAChE,SAAgB,KAAK,EAAE,MAAM,CAAA;IAC7B,SAAgB,KAAK,EAAE,UAAU,CAAA;IAC1B,WAAW,CAAC,EAAE,UAAU,GAAG,UAAU,CAAA;IAC5C,SAAgB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAK;IAErD,SAAS,aAAa,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAatD;IAUD,KAAK,iLAAgE;IAUrE,QAAQ,iLAAmE;IAS3E,MAAM,iLAAiE;IAQvE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,CAMpD;IAED,KAAK,IAAI,MAAM,CAMd;CACF","sourcesContent":["import {\n assignBuilderFactory,\n buildTree,\n type Expression,\n type InstanceId,\n type TextValue,\n TextValueBuilder,\n toInstanceIdOrExpression,\n type WidgetType,\n} from '../abstract/index.js'\n\nexport interface JwBase {\n /**\n * Widget type identifier (e.g. 'widget.value', 'widget.group').\n * Determine behavior and available properties.\n */\n readonly type: WidgetType\n\n /**\n * Instance identifier.\n * Auto-generated from widget name if not provided.\n */\n instanceId?: InstanceId\n\n /**\n * Widget-specific configuration.\n * Structure varies by type.\n */\n readonly options: Record<string, unknown>\n}\n\nexport interface JwBaseInput {\n name: string\n instanceId?: InstanceId | Expression\n title?: string | TextValue\n subtitle?: string | TextValue\n footer?: string | TextValue\n footerAlign?: 'left' | 'right' | 'center'\n}\n\nexport abstract class WidgetBaseBuilder<TInput extends JwBaseInput> {\n public readonly _name: string\n public readonly _type: WidgetType\n public _instanceId?: InstanceId | Expression\n public readonly _config: Record<string, unknown> = {}\n\n protected constructor(type: WidgetType, options: TInput) {\n this._type = type\n this._name = options.name\n\n if (options.instanceId) {\n this._instanceId = toInstanceIdOrExpression(options.instanceId)\n }\n\n // Initialize common text properties\n this.title(options.title)\n this.subtitle(options.subtitle)\n this.footer(options.footer)\n this.footerAlign(options.footerAlign ?? 'left')\n }\n\n /**\n * Set widget title (first line in header).\n * Note: Deprecated in favor of component.titles.\n * Returns TextValueBuilder instance per factory pattern.\n *\n * @param title - Static text, TextValue object, or TextValueBuilder\n * @returns TextValueBuilder instance (NOT 'this')\n */\n title = assignBuilderFactory(TextValueBuilder, this._config, 'title')\n\n /**\n * Set widget subtitle (second line in header).\n * Note: Deprecated in favor of component.titles.\n * Returns TextValueBuilder instance per factory pattern.\n *\n * @param subtitle - Static text, TextValue object, or TextValueBuilder\n * @returns TextValueBuilder instance (NOT 'this')\n */\n subtitle = assignBuilderFactory(TextValueBuilder, this._config, 'subtitle')\n\n /**\n * Set widget footer text.\n * Returns TextValueBuilder instance per factory pattern.\n *\n * @param footer - Static text, TextValue object, or TextValueBuilder\n * @returns TextValueBuilder instance (NOT 'this')\n */\n footer = assignBuilderFactory(TextValueBuilder, this._config, 'footer')\n\n /**\n * Set footer text alignment.\n *\n * @param align - Text alignment: 'left', 'right', or 'center'\n * @returns This builder for chaining\n */\n footerAlign(align: 'left' | 'right' | 'center'): this {\n if (!['left', 'right', 'center'].includes(align)) {\n throw new Error(`Invalid footerAlign: ${align}. Must be 'left', 'right', or 'center'`)\n }\n this._config.footerAlign = align\n return this\n }\n\n build(): JwBase {\n return {\n type: this._type,\n instanceId: this._instanceId,\n options: buildTree(this._config),\n }\n }\n}\n"]}
@@ -0,0 +1,36 @@
1
+ import { assignBuilderFactory, buildTree, TextValueBuilder, toInstanceIdOrExpression, } from '../abstract/index.js';
2
+ export class WidgetBaseBuilder {
3
+ _name;
4
+ _type;
5
+ _instanceId;
6
+ _config = {};
7
+ constructor(type, options) {
8
+ this._type = type;
9
+ this._name = options.name;
10
+ if (options.instanceId) {
11
+ this._instanceId = toInstanceIdOrExpression(options.instanceId);
12
+ }
13
+ this.title(options.title);
14
+ this.subtitle(options.subtitle);
15
+ this.footer(options.footer);
16
+ this.footerAlign(options.footerAlign ?? 'left');
17
+ }
18
+ title = assignBuilderFactory(TextValueBuilder, this._config, 'title');
19
+ subtitle = assignBuilderFactory(TextValueBuilder, this._config, 'subtitle');
20
+ footer = assignBuilderFactory(TextValueBuilder, this._config, 'footer');
21
+ footerAlign(align) {
22
+ if (!['left', 'right', 'center'].includes(align)) {
23
+ throw new Error(`Invalid footerAlign: ${align}. Must be 'left', 'right', or 'center'`);
24
+ }
25
+ this._config.footerAlign = align;
26
+ return this;
27
+ }
28
+ build() {
29
+ return {
30
+ type: this._type,
31
+ instanceId: this._instanceId,
32
+ options: buildTree(this._config),
33
+ };
34
+ }
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuYWJzdHJhY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2lkZ2V0L2p3LmFic3RyYWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsU0FBUyxFQUlULGdCQUFnQixFQUNoQix3QkFBd0IsR0FFekIsTUFBTSxzQkFBc0IsQ0FBQTtBQStCN0IsTUFBTSxPQUFnQixpQkFBaUI7SUFDckIsS0FBSyxDQUFRO0lBQ2IsS0FBSyxDQUFZO0lBQzFCLFdBQVcsQ0FBMEI7SUFDNUIsT0FBTyxHQUE0QixFQUFFLENBQUE7SUFFckQsWUFBc0IsSUFBZ0IsRUFBRSxPQUFlLEVBQUU7UUFDdkQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUE7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFBO1FBRXpCLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsd0JBQXdCLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2pFLENBQUM7UUFHRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDLENBQUE7SUFBQSxDQUNoRDtJQVVELEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBVXJFLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFBO0lBUzNFLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBUXZFLFdBQVcsQ0FBQyxLQUFrQyxFQUFRO1FBQ3BELElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsS0FBSyx3Q0FBd0MsQ0FBQyxDQUFBO1FBQ3hGLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUE7UUFDaEMsT0FBTyxJQUFJLENBQUE7SUFBQSxDQUNaO0lBRUQsS0FBSyxHQUFXO1FBQ2QsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSztZQUNoQixVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDNUIsT0FBTyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQ2pDLENBQUE7SUFBQSxDQUNGO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhc3NpZ25CdWlsZGVyRmFjdG9yeSxcbiAgYnVpbGRUcmVlLFxuICB0eXBlIEV4cHJlc3Npb24sXG4gIHR5cGUgSW5zdGFuY2VJZCxcbiAgdHlwZSBUZXh0VmFsdWUsXG4gIFRleHRWYWx1ZUJ1aWxkZXIsXG4gIHRvSW5zdGFuY2VJZE9yRXhwcmVzc2lvbixcbiAgdHlwZSBXaWRnZXRUeXBlLFxufSBmcm9tICcuLi9hYnN0cmFjdC9pbmRleC5qcydcblxuZXhwb3J0IGludGVyZmFjZSBKd0Jhc2Uge1xuICAvKipcbiAgICogV2lkZ2V0IHR5cGUgaWRlbnRpZmllciAoZS5nLiAnd2lkZ2V0LnZhbHVlJywgJ3dpZGdldC5ncm91cCcpLlxuICAgKiBEZXRlcm1pbmUgYmVoYXZpb3IgYW5kIGF2YWlsYWJsZSBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZTogV2lkZ2V0VHlwZVxuXG4gIC8qKlxuICAgKiBJbnN0YW5jZSBpZGVudGlmaWVyLlxuICAgKiBBdXRvLWdlbmVyYXRlZCBmcm9tIHdpZGdldCBuYW1lIGlmIG5vdCBwcm92aWRlZC5cbiAgICovXG4gIGluc3RhbmNlSWQ/OiBJbnN0YW5jZUlkXG5cbiAgLyoqXG4gICAqIFdpZGdldC1zcGVjaWZpYyBjb25maWd1cmF0aW9uLlxuICAgKiBTdHJ1Y3R1cmUgdmFyaWVzIGJ5IHR5cGUuXG4gICAqL1xuICByZWFkb25seSBvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEp3QmFzZUlucHV0IHtcbiAgbmFtZTogc3RyaW5nXG4gIGluc3RhbmNlSWQ/OiBJbnN0YW5jZUlkIHwgRXhwcmVzc2lvblxuICB0aXRsZT86IHN0cmluZyB8IFRleHRWYWx1ZVxuICBzdWJ0aXRsZT86IHN0cmluZyB8IFRleHRWYWx1ZVxuICBmb290ZXI/OiBzdHJpbmcgfCBUZXh0VmFsdWVcbiAgZm9vdGVyQWxpZ24/OiAnbGVmdCcgfCAncmlnaHQnIHwgJ2NlbnRlcidcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFdpZGdldEJhc2VCdWlsZGVyPFRJbnB1dCBleHRlbmRzIEp3QmFzZUlucHV0PiB7XG4gIHB1YmxpYyByZWFkb25seSBfbmFtZTogc3RyaW5nXG4gIHB1YmxpYyByZWFkb25seSBfdHlwZTogV2lkZ2V0VHlwZVxuICBwdWJsaWMgX2luc3RhbmNlSWQ/OiBJbnN0YW5jZUlkIHwgRXhwcmVzc2lvblxuICBwdWJsaWMgcmVhZG9ubHkgX2NvbmZpZzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fVxuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcih0eXBlOiBXaWRnZXRUeXBlLCBvcHRpb25zOiBUSW5wdXQpIHtcbiAgICB0aGlzLl90eXBlID0gdHlwZVxuICAgIHRoaXMuX25hbWUgPSBvcHRpb25zLm5hbWVcblxuICAgIGlmIChvcHRpb25zLmluc3RhbmNlSWQpIHtcbiAgICAgIHRoaXMuX2luc3RhbmNlSWQgPSB0b0luc3RhbmNlSWRPckV4cHJlc3Npb24ob3B0aW9ucy5pbnN0YW5jZUlkKVxuICAgIH1cblxuICAgIC8vIEluaXRpYWxpemUgY29tbW9uIHRleHQgcHJvcGVydGllc1xuICAgIHRoaXMudGl0bGUob3B0aW9ucy50aXRsZSlcbiAgICB0aGlzLnN1YnRpdGxlKG9wdGlvbnMuc3VidGl0bGUpXG4gICAgdGhpcy5mb290ZXIob3B0aW9ucy5mb290ZXIpXG4gICAgdGhpcy5mb290ZXJBbGlnbihvcHRpb25zLmZvb3RlckFsaWduID8/ICdsZWZ0JylcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgd2lkZ2V0IHRpdGxlIChmaXJzdCBsaW5lIGluIGhlYWRlcikuXG4gICAqIE5vdGU6IERlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgY29tcG9uZW50LnRpdGxlcy5cbiAgICogUmV0dXJucyBUZXh0VmFsdWVCdWlsZGVyIGluc3RhbmNlIHBlciBmYWN0b3J5IHBhdHRlcm4uXG4gICAqXG4gICAqIEBwYXJhbSB0aXRsZSAtIFN0YXRpYyB0ZXh0LCBUZXh0VmFsdWUgb2JqZWN0LCBvciBUZXh0VmFsdWVCdWlsZGVyXG4gICAqIEByZXR1cm5zIFRleHRWYWx1ZUJ1aWxkZXIgaW5zdGFuY2UgKE5PVCAndGhpcycpXG4gICAqL1xuICB0aXRsZSA9IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KFRleHRWYWx1ZUJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3RpdGxlJylcblxuICAvKipcbiAgICogU2V0IHdpZGdldCBzdWJ0aXRsZSAoc2Vjb25kIGxpbmUgaW4gaGVhZGVyKS5cbiAgICogTm90ZTogRGVwcmVjYXRlZCBpbiBmYXZvciBvZiBjb21wb25lbnQudGl0bGVzLlxuICAgKiBSZXR1cm5zIFRleHRWYWx1ZUJ1aWxkZXIgaW5zdGFuY2UgcGVyIGZhY3RvcnkgcGF0dGVybi5cbiAgICpcbiAgICogQHBhcmFtIHN1YnRpdGxlIC0gU3RhdGljIHRleHQsIFRleHRWYWx1ZSBvYmplY3QsIG9yIFRleHRWYWx1ZUJ1aWxkZXJcbiAgICogQHJldHVybnMgVGV4dFZhbHVlQnVpbGRlciBpbnN0YW5jZSAoTk9UICd0aGlzJylcbiAgICovXG4gIHN1YnRpdGxlID0gYXNzaWduQnVpbGRlckZhY3RvcnkoVGV4dFZhbHVlQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnc3VidGl0bGUnKVxuXG4gIC8qKlxuICAgKiBTZXQgd2lkZ2V0IGZvb3RlciB0ZXh0LlxuICAgKiBSZXR1cm5zIFRleHRWYWx1ZUJ1aWxkZXIgaW5zdGFuY2UgcGVyIGZhY3RvcnkgcGF0dGVybi5cbiAgICpcbiAgICogQHBhcmFtIGZvb3RlciAtIFN0YXRpYyB0ZXh0LCBUZXh0VmFsdWUgb2JqZWN0LCBvciBUZXh0VmFsdWVCdWlsZGVyXG4gICAqIEByZXR1cm5zIFRleHRWYWx1ZUJ1aWxkZXIgaW5zdGFuY2UgKE5PVCAndGhpcycpXG4gICAqL1xuICBmb290ZXIgPSBhc3NpZ25CdWlsZGVyRmFjdG9yeShUZXh0VmFsdWVCdWlsZGVyLCB0aGlzLl9jb25maWcsICdmb290ZXInKVxuXG4gIC8qKlxuICAgKiBTZXQgZm9vdGVyIHRleHQgYWxpZ25tZW50LlxuICAgKlxuICAgKiBAcGFyYW0gYWxpZ24gLSBUZXh0IGFsaWdubWVudDogJ2xlZnQnLCAncmlnaHQnLCBvciAnY2VudGVyJ1xuICAgKiBAcmV0dXJucyBUaGlzIGJ1aWxkZXIgZm9yIGNoYWluaW5nXG4gICAqL1xuICBmb290ZXJBbGlnbihhbGlnbjogJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdjZW50ZXInKTogdGhpcyB7XG4gICAgaWYgKCFbJ2xlZnQnLCAncmlnaHQnLCAnY2VudGVyJ10uaW5jbHVkZXMoYWxpZ24pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9vdGVyQWxpZ246ICR7YWxpZ259LiBNdXN0IGJlICdsZWZ0JywgJ3JpZ2h0Jywgb3IgJ2NlbnRlcidgKVxuICAgIH1cbiAgICB0aGlzLl9jb25maWcuZm9vdGVyQWxpZ24gPSBhbGlnblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBidWlsZCgpOiBKd0Jhc2Uge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiB0aGlzLl90eXBlLFxuICAgICAgaW5zdGFuY2VJZDogdGhpcy5faW5zdGFuY2VJZCxcbiAgICAgIG9wdGlvbnM6IGJ1aWxkVHJlZSh0aGlzLl9jb25maWcpLFxuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,17 @@
1
+ import { TextValueBuilder } from '../abstract/index.js';
2
+ import { type GoBackActionInput, type GoToActionInput, JaGoBackBuilder, JaGoToBuilder } from '../action/index.js';
3
+ import { type JwBase, type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js';
4
+ export type JwActionsInput = JwBaseInput;
5
+ export declare class ActionsWidgetBuilder extends WidgetBaseBuilder<JwActionsInput> {
6
+ constructor(options: JwActionsInput);
7
+ readonly primary: (title: string | number | boolean | import("../abstract/zod.types.ts").TextLocale | TextValueBuilder | import("../abstract/zod.types.ts").TextWithFormat | null) => {
8
+ goBack: (options?: GoBackActionInput | undefined) => JaGoBackBuilder<GoBackActionInput>;
9
+ goto: (options: GoToActionInput) => JaGoToBuilder<GoToActionInput>;
10
+ };
11
+ readonly secondary: (title: string | number | boolean | import("../abstract/zod.types.ts").TextLocale | TextValueBuilder | import("../abstract/zod.types.ts").TextWithFormat | null) => {
12
+ goBack: (options?: GoBackActionInput | undefined) => JaGoBackBuilder<GoBackActionInput>;
13
+ goto: (options: GoToActionInput) => JaGoToBuilder<GoToActionInput>;
14
+ };
15
+ build(): JwBase;
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuYWN0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3dpZGdldC9qdy5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxnQkFBZ0IsRUFFakIsTUFBTSxzQkFBc0IsQ0FBQTtBQUM3QixPQUFPLEVBQ0wsS0FBSyxpQkFBaUIsRUFDdEIsS0FBSyxlQUFlLEVBQ3BCLGVBQWUsRUFDZixhQUFhLEVBQ2QsTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQixPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQUUsS0FBSyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUtuRixNQUFNLE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQTtBQVd4QyxxQkFBYSxvQkFBcUIsU0FBUSxpQkFBaUIsQ0FBQyxjQUFjLENBQUM7SUFDekUsWUFBWSxPQUFPLEVBQUUsY0FBYyxFQUVsQztJQVFELFFBQVEsQ0FBQyxPQUFPOzs7TUFjZjtJQVFELFFBQVEsQ0FBQyxTQUFTOzs7TUFjakI7SUFFUSxLQUFLLElBQUksTUFBTSxDQUV2QjtDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXNzaWduQnVpbGRlckZhY3RvcnksXG4gIHR5cGUgVGV4dFZhbHVlLFxuICBUZXh0VmFsdWVCdWlsZGVyLFxuICBXSURHRVRfVFlQRSxcbn0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQge1xuICB0eXBlIEdvQmFja0FjdGlvbklucHV0LFxuICB0eXBlIEdvVG9BY3Rpb25JbnB1dCxcbiAgSmFHb0JhY2tCdWlsZGVyLFxuICBKYUdvVG9CdWlsZGVyLFxufSBmcm9tICcuLi9hY3Rpb24vaW5kZXguanMnXG5pbXBvcnQgeyB0eXBlIEp3QmFzZSwgdHlwZSBKd0Jhc2VJbnB1dCwgV2lkZ2V0QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2p3LmFic3RyYWN0LmpzJ1xuXG4vKipcbiAqIElucHV0IGludGVyZmFjZSBmb3IgYWN0aW9ucyB3aWRnZXQgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IHR5cGUgSndBY3Rpb25zSW5wdXQgPSBKd0Jhc2VJbnB1dFxuXG4vKipcbiAqIENyZWF0ZSBhY3Rpb24gYnV0dG9ucyBmb3IgdXNlciBpbnRlcmFjdGlvbnMuXG4gKiBTdXBwb3J0cyBwcmltYXJ5IGFuZCBvcHRpb25hbCBzZWNvbmRhcnkgYWN0aW9ucy5cbiAqIEV4ZWN1dGUgbmF2aWdhdGlvbiwgZGF0YSBvcGVyYXRpb25zLCBvciBjb25maXJtYXRpb25zLlxuICogQWN0aW9ucyBjYW4gdHJpZ2dlciBiYWNrZ3JvdW5kIHByb2Nlc3NlcyBvciBVSSBjaGFuZ2VzLlxuICpcbiAqIEBhbGlhcyB3aWRnZXQuYWN0aW9uc1xuICogQHNlZSAjL2RlZmluaXRpb25zL2p3LWFjdGlvbnNcbiAqL1xuZXhwb3J0IGNsYXNzIEFjdGlvbnNXaWRnZXRCdWlsZGVyIGV4dGVuZHMgV2lkZ2V0QmFzZUJ1aWxkZXI8SndBY3Rpb25zSW5wdXQ+IHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogSndBY3Rpb25zSW5wdXQpIHtcbiAgICBzdXBlcihXSURHRVRfVFlQRS5BQ1RJT05TLCBvcHRpb25zKVxuICB9XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBwcmltYXJ5IGFjdGlvbiBidXR0b24gKHJlcXVpcmVkKS5cbiAgICpcbiAgICogQHBhcmFtIHRpdGxlIC0gQnV0dG9uIGxhYmVsIHRleHQgb3IgZXhwcmVzc2lvblxuICAgKiBAcmV0dXJucyBBY3Rpb24gZXZlbnQgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHJlYWRvbmx5IHByaW1hcnkgPSAoXG4gICAgdGl0bGU6IHN0cmluZyB8IFRleHRWYWx1ZSB8IFRleHRWYWx1ZUJ1aWxkZXIsXG4gICk6IHtcbiAgICBnb0JhY2s6IChvcHRpb25zPzogR29CYWNrQWN0aW9uSW5wdXQpID0+IEphR29CYWNrQnVpbGRlclxuICAgIGdvdG86IChvcHRpb25zOiBHb1RvQWN0aW9uSW5wdXQpID0+IEphR29Ub0J1aWxkZXJcbiAgfSA9PiB7XG4gICAgdGhpcy5fY29uZmlnLnByaW1hcnkgPSB7XG4gICAgICB0aXRsZTogVGV4dFZhbHVlQnVpbGRlci5mcm9tKHRpdGxlKSxcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZ29CYWNrOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKYUdvQmFja0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3ByaW1hcnkub25QcmVzcycpLFxuICAgICAgZ290bzogYXNzaWduQnVpbGRlckZhY3RvcnkoSmFHb1RvQnVpbGRlciwgdGhpcy5fY29uZmlnLCAncHJpbWFyeS5vblByZXNzJyksXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBzZWNvbmRhcnkgYWN0aW9uIGJ1dHRvbiAob3B0aW9uYWwpLlxuICAgKlxuICAgKiBAcGFyYW0gdGl0bGUgLSBCdXR0b24gbGFiZWwgdGV4dCBvciBleHByZXNzaW9uXG4gICAqIEByZXR1cm5zIEFjdGlvbiBldmVudCBidWlsZGVyIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcmVhZG9ubHkgc2Vjb25kYXJ5ID0gKFxuICAgIHRpdGxlOiBzdHJpbmcgfCBUZXh0VmFsdWUgfCBUZXh0VmFsdWVCdWlsZGVyLFxuICApOiB7XG4gICAgZ29CYWNrOiAob3B0aW9ucz86IEdvQmFja0FjdGlvbklucHV0KSA9PiBKYUdvQmFja0J1aWxkZXJcbiAgICBnb3RvOiAob3B0aW9uczogR29Ub0FjdGlvbklucHV0KSA9PiBKYUdvVG9CdWlsZGVyXG4gIH0gPT4ge1xuICAgIHRoaXMuX2NvbmZpZy5zZWNvbmRhcnkgPSB7XG4gICAgICB0aXRsZTogVGV4dFZhbHVlQnVpbGRlci5mcm9tKHRpdGxlKSxcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZ29CYWNrOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKYUdvQmFja0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3NlY29uZGFyeS5vblByZXNzJyksXG4gICAgICBnb3RvOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKYUdvVG9CdWlsZGVyLCB0aGlzLl9jb25maWcsICdzZWNvbmRhcnkub25QcmVzcycpLFxuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIGJ1aWxkKCk6IEp3QmFzZSB7XG4gICAgcmV0dXJuIHN1cGVyLmJ1aWxkKClcbiAgfVxufVxuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.actions.d.ts","sourceRoot":"","sources":["../../src/widget/jw.actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,gBAAgB,EAEjB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,eAAe,EACf,aAAa,EACd,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAKnF,MAAM,MAAM,cAAc,GAAG,WAAW,CAAA;AAWxC,qBAAa,oBAAqB,SAAQ,iBAAiB,CAAC,cAAc,CAAC;IACzE,YAAY,OAAO,EAAE,cAAc,EAElC;IAQD,QAAQ,CAAC,OAAO;;;MAcf;IAQD,QAAQ,CAAC,SAAS;;;MAcjB;IAEQ,KAAK,IAAI,MAAM,CAEvB;CACF","sourcesContent":["import {\n assignBuilderFactory,\n type TextValue,\n TextValueBuilder,\n WIDGET_TYPE,\n} from '../abstract/index.js'\nimport {\n type GoBackActionInput,\n type GoToActionInput,\n JaGoBackBuilder,\n JaGoToBuilder,\n} from '../action/index.js'\nimport { type JwBase, type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js'\n\n/**\n * Input interface for actions widget configuration.\n */\nexport type JwActionsInput = JwBaseInput\n\n/**\n * Create action buttons for user interactions.\n * Supports primary and optional secondary actions.\n * Execute navigation, data operations, or confirmations.\n * Actions can trigger background processes or UI changes.\n *\n * @alias widget.actions\n * @see #/definitions/jw-actions\n */\nexport class ActionsWidgetBuilder extends WidgetBaseBuilder<JwActionsInput> {\n constructor(options: JwActionsInput) {\n super(WIDGET_TYPE.ACTIONS, options)\n }\n\n /**\n * Configure primary action button (required).\n *\n * @param title - Button label text or expression\n * @returns Action event builder for chaining\n */\n readonly primary = (\n title: string | TextValue | TextValueBuilder,\n ): {\n goBack: (options?: GoBackActionInput) => JaGoBackBuilder\n goto: (options: GoToActionInput) => JaGoToBuilder\n } => {\n this._config.primary = {\n title: TextValueBuilder.from(title),\n }\n\n return {\n goBack: assignBuilderFactory(JaGoBackBuilder, this._config, 'primary.onPress'),\n goto: assignBuilderFactory(JaGoToBuilder, this._config, 'primary.onPress'),\n }\n }\n\n /**\n * Configure secondary action button (optional).\n *\n * @param title - Button label text or expression\n * @returns Action event builder for chaining\n */\n readonly secondary = (\n title: string | TextValue | TextValueBuilder,\n ): {\n goBack: (options?: GoBackActionInput) => JaGoBackBuilder\n goto: (options: GoToActionInput) => JaGoToBuilder\n } => {\n this._config.secondary = {\n title: TextValueBuilder.from(title),\n }\n\n return {\n goBack: assignBuilderFactory(JaGoBackBuilder, this._config, 'secondary.onPress'),\n goto: assignBuilderFactory(JaGoToBuilder, this._config, 'secondary.onPress'),\n }\n }\n\n override build(): JwBase {\n return super.build()\n }\n}\n"]}
@@ -0,0 +1,30 @@
1
+ import { assignBuilderFactory, TextValueBuilder, WIDGET_TYPE, } from '../abstract/index.js';
2
+ import { JaGoBackBuilder, JaGoToBuilder, } from '../action/index.js';
3
+ import { WidgetBaseBuilder } from './jw.abstract.js';
4
+ export class ActionsWidgetBuilder extends WidgetBaseBuilder {
5
+ constructor(options) {
6
+ super(WIDGET_TYPE.ACTIONS, options);
7
+ }
8
+ primary = (title) => {
9
+ this._config.primary = {
10
+ title: TextValueBuilder.from(title),
11
+ };
12
+ return {
13
+ goBack: assignBuilderFactory(JaGoBackBuilder, this._config, 'primary.onPress'),
14
+ goto: assignBuilderFactory(JaGoToBuilder, this._config, 'primary.onPress'),
15
+ };
16
+ };
17
+ secondary = (title) => {
18
+ this._config.secondary = {
19
+ title: TextValueBuilder.from(title),
20
+ };
21
+ return {
22
+ goBack: assignBuilderFactory(JaGoBackBuilder, this._config, 'secondary.onPress'),
23
+ goto: assignBuilderFactory(JaGoToBuilder, this._config, 'secondary.onPress'),
24
+ };
25
+ };
26
+ build() {
27
+ return super.build();
28
+ }
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aWRnZXQvancuYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsb0JBQW9CLEVBRXBCLGdCQUFnQixFQUNoQixXQUFXLEdBQ1osTUFBTSxzQkFBc0IsQ0FBQTtBQUM3QixPQUFPLEVBR0wsZUFBZSxFQUNmLGFBQWEsR0FDZCxNQUFNLG9CQUFvQixDQUFBO0FBQzNCLE9BQU8sRUFBaUMsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQWdCbkYsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGlCQUFpQztJQUN6RSxZQUFZLE9BQXVCLEVBQUU7UUFDbkMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFBQSxDQUNwQztJQVFRLE9BQU8sR0FBRyxDQUNqQixLQUE0QyxFQUk1QyxFQUFFLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRztZQUNyQixLQUFLLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUNwQyxDQUFBO1FBRUQsT0FBTztZQUNMLE1BQU0sRUFBRSxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQztZQUM5RSxJQUFJLEVBQUUsb0JBQW9CLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUM7U0FDM0UsQ0FBQTtJQUFBLENBQ0YsQ0FBQTtJQVFRLFNBQVMsR0FBRyxDQUNuQixLQUE0QyxFQUk1QyxFQUFFLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRztZQUN2QixLQUFLLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUNwQyxDQUFBO1FBRUQsT0FBTztZQUNMLE1BQU0sRUFBRSxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsQ0FBQztZQUNoRixJQUFJLEVBQUUsb0JBQW9CLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLENBQUM7U0FDN0UsQ0FBQTtJQUFBLENBQ0YsQ0FBQTtJQUVRLEtBQUssR0FBVztRQUN2QixPQUFPLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUFBLENBQ3JCO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhc3NpZ25CdWlsZGVyRmFjdG9yeSxcbiAgdHlwZSBUZXh0VmFsdWUsXG4gIFRleHRWYWx1ZUJ1aWxkZXIsXG4gIFdJREdFVF9UWVBFLFxufSBmcm9tICcuLi9hYnN0cmFjdC9pbmRleC5qcydcbmltcG9ydCB7XG4gIHR5cGUgR29CYWNrQWN0aW9uSW5wdXQsXG4gIHR5cGUgR29Ub0FjdGlvbklucHV0LFxuICBKYUdvQmFja0J1aWxkZXIsXG4gIEphR29Ub0J1aWxkZXIsXG59IGZyb20gJy4uL2FjdGlvbi9pbmRleC5qcydcbmltcG9ydCB7IHR5cGUgSndCYXNlLCB0eXBlIEp3QmFzZUlucHV0LCBXaWRnZXRCYXNlQnVpbGRlciB9IGZyb20gJy4vancuYWJzdHJhY3QuanMnXG5cbi8qKlxuICogSW5wdXQgaW50ZXJmYWNlIGZvciBhY3Rpb25zIHdpZGdldCBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgdHlwZSBKd0FjdGlvbnNJbnB1dCA9IEp3QmFzZUlucHV0XG5cbi8qKlxuICogQ3JlYXRlIGFjdGlvbiBidXR0b25zIGZvciB1c2VyIGludGVyYWN0aW9ucy5cbiAqIFN1cHBvcnRzIHByaW1hcnkgYW5kIG9wdGlvbmFsIHNlY29uZGFyeSBhY3Rpb25zLlxuICogRXhlY3V0ZSBuYXZpZ2F0aW9uLCBkYXRhIG9wZXJhdGlvbnMsIG9yIGNvbmZpcm1hdGlvbnMuXG4gKiBBY3Rpb25zIGNhbiB0cmlnZ2VyIGJhY2tncm91bmQgcHJvY2Vzc2VzIG9yIFVJIGNoYW5nZXMuXG4gKlxuICogQGFsaWFzIHdpZGdldC5hY3Rpb25zXG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvanctYWN0aW9uc1xuICovXG5leHBvcnQgY2xhc3MgQWN0aW9uc1dpZGdldEJ1aWxkZXIgZXh0ZW5kcyBXaWRnZXRCYXNlQnVpbGRlcjxKd0FjdGlvbnNJbnB1dD4ge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBKd0FjdGlvbnNJbnB1dCkge1xuICAgIHN1cGVyKFdJREdFVF9UWVBFLkFDVElPTlMsIG9wdGlvbnMpXG4gIH1cblxuICAvKipcbiAgICogQ29uZmlndXJlIHByaW1hcnkgYWN0aW9uIGJ1dHRvbiAocmVxdWlyZWQpLlxuICAgKlxuICAgKiBAcGFyYW0gdGl0bGUgLSBCdXR0b24gbGFiZWwgdGV4dCBvciBleHByZXNzaW9uXG4gICAqIEByZXR1cm5zIEFjdGlvbiBldmVudCBidWlsZGVyIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcmVhZG9ubHkgcHJpbWFyeSA9IChcbiAgICB0aXRsZTogc3RyaW5nIHwgVGV4dFZhbHVlIHwgVGV4dFZhbHVlQnVpbGRlcixcbiAgKToge1xuICAgIGdvQmFjazogKG9wdGlvbnM/OiBHb0JhY2tBY3Rpb25JbnB1dCkgPT4gSmFHb0JhY2tCdWlsZGVyXG4gICAgZ290bzogKG9wdGlvbnM6IEdvVG9BY3Rpb25JbnB1dCkgPT4gSmFHb1RvQnVpbGRlclxuICB9ID0+IHtcbiAgICB0aGlzLl9jb25maWcucHJpbWFyeSA9IHtcbiAgICAgIHRpdGxlOiBUZXh0VmFsdWVCdWlsZGVyLmZyb20odGl0bGUpLFxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBnb0JhY2s6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEphR29CYWNrQnVpbGRlciwgdGhpcy5fY29uZmlnLCAncHJpbWFyeS5vblByZXNzJyksXG4gICAgICBnb3RvOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKYUdvVG9CdWlsZGVyLCB0aGlzLl9jb25maWcsICdwcmltYXJ5Lm9uUHJlc3MnKSxcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ29uZmlndXJlIHNlY29uZGFyeSBhY3Rpb24gYnV0dG9uIChvcHRpb25hbCkuXG4gICAqXG4gICAqIEBwYXJhbSB0aXRsZSAtIEJ1dHRvbiBsYWJlbCB0ZXh0IG9yIGV4cHJlc3Npb25cbiAgICogQHJldHVybnMgQWN0aW9uIGV2ZW50IGJ1aWxkZXIgZm9yIGNoYWluaW5nXG4gICAqL1xuICByZWFkb25seSBzZWNvbmRhcnkgPSAoXG4gICAgdGl0bGU6IHN0cmluZyB8IFRleHRWYWx1ZSB8IFRleHRWYWx1ZUJ1aWxkZXIsXG4gICk6IHtcbiAgICBnb0JhY2s6IChvcHRpb25zPzogR29CYWNrQWN0aW9uSW5wdXQpID0+IEphR29CYWNrQnVpbGRlclxuICAgIGdvdG86IChvcHRpb25zOiBHb1RvQWN0aW9uSW5wdXQpID0+IEphR29Ub0J1aWxkZXJcbiAgfSA9PiB7XG4gICAgdGhpcy5fY29uZmlnLnNlY29uZGFyeSA9IHtcbiAgICAgIHRpdGxlOiBUZXh0VmFsdWVCdWlsZGVyLmZyb20odGl0bGUpLFxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBnb0JhY2s6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEphR29CYWNrQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnc2Vjb25kYXJ5Lm9uUHJlc3MnKSxcbiAgICAgIGdvdG86IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEphR29Ub0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3NlY29uZGFyeS5vblByZXNzJyksXG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgYnVpbGQoKTogSndCYXNlIHtcbiAgICByZXR1cm4gc3VwZXIuYnVpbGQoKVxuICB9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { type Expression, type TextValue, TextValueBuilder } from '../abstract/index.js';
2
+ import { JcTitlesBuilder } from '../component/index.js';
3
+ import { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js';
4
+ export interface JwAvatarInput extends JwBaseInput {
5
+ text?: string | TextValue;
6
+ uri?: string | Expression;
7
+ }
8
+ export declare class AvatarWidgetBuilder extends WidgetBaseBuilder<JwAvatarInput> {
9
+ constructor(options: JwAvatarInput);
10
+ top: {
11
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
12
+ };
13
+ bottom: {
14
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
15
+ };
16
+ text: (value?: string | number | boolean | import("../abstract/zod.types.ts").TextLocale | import("../abstract/zod.types.ts").TextWithFormat | null | undefined) => TextValueBuilder;
17
+ uri(uri: string | Expression): this;
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuYXZhdGFyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2lkZ2V0L2p3LmF2YXRhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsS0FBSyxVQUFVLEVBQ2YsS0FBSyxTQUFTLEVBQ2QsZ0JBQWdCLEVBRWpCLE1BQU0sc0JBQXNCLENBQUE7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBU3RFLE1BQU0sV0FBVyxhQUFjLFNBQVEsV0FBVztJQUVoRCxJQUFJLENBQUMsRUFBRSxNQUFNLEdBQUcsU0FBUyxDQUFBO0lBRXpCLEdBQUcsQ0FBQyxFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUE7Q0FDMUI7QUFXRCxxQkFBYSxtQkFBb0IsU0FBUSxpQkFBaUIsQ0FBQyxhQUFhLENBQUM7SUFNdkUsWUFBWSxPQUFPLEVBQUUsYUFBYSxFQUtqQztJQUtELEdBQUc7O01BRUY7SUFFRCxNQUFNOztNQUVMO0lBRUQsSUFBSSxpTEFBK0Q7SUFTbkUsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FHbEM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFzc2lnbkJ1aWxkZXJGYWN0b3J5LFxuICB0eXBlIEV4cHJlc3Npb24sXG4gIHR5cGUgVGV4dFZhbHVlLFxuICBUZXh0VmFsdWVCdWlsZGVyLFxuICBXSURHRVRfVFlQRSxcbn0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQgeyBKY1RpdGxlc0J1aWxkZXIgfSBmcm9tICcuLi9jb21wb25lbnQvaW5kZXguanMnXG5pbXBvcnQgeyB0eXBlIEp3QmFzZUlucHV0LCBXaWRnZXRCYXNlQnVpbGRlciB9IGZyb20gJy4vancuYWJzdHJhY3QuanMnXG5cbi8qKlxuICogSW5wdXQgY29uZmlndXJhdGlvbiBmb3IgYXZhdGFyIHdpZGdldC5cbiAqIERpc3BsYXkgdXNlciBwcm9maWxlcyBvciBlbnRpdHkgcmVwcmVzZW50YXRpb25zLlxuICpcbiAqIEBhbGlhcyB3aWRnZXQuYXZhdGFyXG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvanctYXZhdGFyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSndBdmF0YXJJbnB1dCBleHRlbmRzIEp3QmFzZUlucHV0IHtcbiAgLyoqIFRleHQgZGlzcGxheWVkIHdoZW4gdXJpIGlzIGVtcHR5IChyZXF1aXJlZCkgKi9cbiAgdGV4dD86IHN0cmluZyB8IFRleHRWYWx1ZVxuICAvKiogU291cmNlIG9mIGltYWdlIGRpc3BsYXllZCBhcyBhdmF0YXIgKi9cbiAgdXJpPzogc3RyaW5nIHwgRXhwcmVzc2lvblxufVxuXG4vKipcbiAqIERpc3BsYXkgdXNlciBwcm9maWxlcyBvciBlbnRpdHkgcmVwcmVzZW50YXRpb25zIHdpdGggYXZhdGFycy5cbiAqIFNob3dzIGltYWdlIHdpdGggYXV0b21hdGljIGZhbGxiYWNrIHRvIGluaXRpYWxzLlxuICogQWRkIHRpdGxlcyBmb3IgbmFtZXMsIHJvbGVzLCBvciBkZXNjcmlwdGlvbnMuXG4gKiBTdXBwb3J0cyBkeW5hbWljIGRhdGEgYmluZGluZyBmb3IgdGVhbSBkaXJlY3Rvcmllcy5cbiAqXG4gKiBAYWxpYXMgd2lkZ2V0LmF2YXRhclxuICogQHNlZSAjL2RlZmluaXRpb25zL2p3LWF2YXRhclxuICovXG5leHBvcnQgY2xhc3MgQXZhdGFyV2lkZ2V0QnVpbGRlciBleHRlbmRzIFdpZGdldEJhc2VCdWlsZGVyPEp3QXZhdGFySW5wdXQ+IHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhbiBhdmF0YXIgd2lkZ2V0IGJ1aWxkZXIuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgYXZhdGFyIHdpZGdldFxuICAgKi9cbiAgY29uc3RydWN0b3Iob3B0aW9uczogSndBdmF0YXJJbnB1dCkge1xuICAgIHN1cGVyKFdJREdFVF9UWVBFLkFWQVRBUiwgb3B0aW9ucylcblxuICAgIHRoaXMudGV4dChvcHRpb25zLnRleHQgPz8gJ05BJylcbiAgICBpZiAob3B0aW9ucy51cmkpIHRoaXMudXJpKG9wdGlvbnMudXJpKVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aXRsZSBjb21wb25lbnRzIGZvciBuYW1lcywgcm9sZXMsIG9yIGRlc2NyaXB0aW9ucy5cbiAgICovXG4gIHRvcCA9IHtcbiAgICB0aXRsZXM6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVGl0bGVzQnVpbGRlciwgdGhpcy5fY29uZmlnLCAndG9wJyksXG4gIH1cblxuICBib3R0b20gPSB7XG4gICAgdGl0bGVzOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RpdGxlc0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ2JvdHRvbScpLFxuICB9XG5cbiAgdGV4dCA9IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KFRleHRWYWx1ZUJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3RleHQnKVxuXG4gIC8qKlxuICAgKiBTZXQgYXZhdGFyIGltYWdlIHNvdXJjZSBVUkkuXG4gICAqIEZhbGwgYmFjayB0byB0ZXh0IGRpc3BsYXkgaWYgaW1hZ2UgZmFpbHMgdG8gbG9hZC5cbiAgICpcbiAgICogQHBhcmFtIHVyaSAtIEltYWdlIFVSSSBvciBleHByZXNzaW9uXG4gICAqIEByZXR1cm5zIFRoaXMgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHVyaSh1cmk6IHN0cmluZyB8IEV4cHJlc3Npb24pOiB0aGlzIHtcbiAgICB0aGlzLl9jb25maWcudXJpID0gdXJpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.avatar.d.ts","sourceRoot":"","sources":["../../src/widget/jw.avatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,gBAAgB,EAEjB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAStE,MAAM,WAAW,aAAc,SAAQ,WAAW;IAEhD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAEzB,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;CAC1B;AAWD,qBAAa,mBAAoB,SAAQ,iBAAiB,CAAC,aAAa,CAAC;IAMvE,YAAY,OAAO,EAAE,aAAa,EAKjC;IAKD,GAAG;;MAEF;IAED,MAAM;;MAEL;IAED,IAAI,iLAA+D;IASnE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAGlC;CACF","sourcesContent":["import {\n assignBuilderFactory,\n type Expression,\n type TextValue,\n TextValueBuilder,\n WIDGET_TYPE,\n} from '../abstract/index.js'\nimport { JcTitlesBuilder } from '../component/index.js'\nimport { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js'\n\n/**\n * Input configuration for avatar widget.\n * Display user profiles or entity representations.\n *\n * @alias widget.avatar\n * @see #/definitions/jw-avatar\n */\nexport interface JwAvatarInput extends JwBaseInput {\n /** Text displayed when uri is empty (required) */\n text?: string | TextValue\n /** Source of image displayed as avatar */\n uri?: string | Expression\n}\n\n/**\n * Display user profiles or entity representations with avatars.\n * Shows image with automatic fallback to initials.\n * Add titles for names, roles, or descriptions.\n * Supports dynamic data binding for team directories.\n *\n * @alias widget.avatar\n * @see #/definitions/jw-avatar\n */\nexport class AvatarWidgetBuilder extends WidgetBaseBuilder<JwAvatarInput> {\n /**\n * Create an avatar widget builder.\n *\n * @param options - Configuration options for the avatar widget\n */\n constructor(options: JwAvatarInput) {\n super(WIDGET_TYPE.AVATAR, options)\n\n this.text(options.text ?? 'NA')\n if (options.uri) this.uri(options.uri)\n }\n\n /**\n * Add title components for names, roles, or descriptions.\n */\n top = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),\n }\n\n bottom = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),\n }\n\n text = assignBuilderFactory(TextValueBuilder, this._config, 'text')\n\n /**\n * Set avatar image source URI.\n * Fall back to text display if image fails to load.\n *\n * @param uri - Image URI or expression\n * @returns This builder for chaining\n */\n uri(uri: string | Expression): this {\n this._config.uri = uri\n return this\n }\n}\n"]}
@@ -0,0 +1,23 @@
1
+ import { assignBuilderFactory, TextValueBuilder, WIDGET_TYPE, } from '../abstract/index.js';
2
+ import { JcTitlesBuilder } from '../component/index.js';
3
+ import { WidgetBaseBuilder } from './jw.abstract.js';
4
+ export class AvatarWidgetBuilder extends WidgetBaseBuilder {
5
+ constructor(options) {
6
+ super(WIDGET_TYPE.AVATAR, options);
7
+ this.text(options.text ?? 'NA');
8
+ if (options.uri)
9
+ this.uri(options.uri);
10
+ }
11
+ top = {
12
+ titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),
13
+ };
14
+ bottom = {
15
+ titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),
16
+ };
17
+ text = assignBuilderFactory(TextValueBuilder, this._config, 'text');
18
+ uri(uri) {
19
+ this._config.uri = uri;
20
+ return this;
21
+ }
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuYXZhdGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3dpZGdldC9qdy5hdmF0YXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLG9CQUFvQixFQUdwQixnQkFBZ0IsRUFDaEIsV0FBVyxHQUNaLE1BQU0sc0JBQXNCLENBQUE7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZELE9BQU8sRUFBb0IsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQXlCdEUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGlCQUFnQztJQU12RSxZQUFZLE9BQXNCLEVBQUU7UUFDbEMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFFbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFBO1FBQy9CLElBQUksT0FBTyxDQUFDLEdBQUc7WUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUFBLENBQ3ZDO0lBS0QsR0FBRyxHQUFHO1FBQ0osTUFBTSxFQUFFLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztLQUNuRSxDQUFBO0lBRUQsTUFBTSxHQUFHO1FBQ1AsTUFBTSxFQUFFLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQztLQUN0RSxDQUFBO0lBRUQsSUFBSSxHQUFHLG9CQUFvQixDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFTbkUsR0FBRyxDQUFDLEdBQXdCLEVBQVE7UUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFBO1FBQ3RCLE9BQU8sSUFBSSxDQUFBO0lBQUEsQ0FDWjtDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYXNzaWduQnVpbGRlckZhY3RvcnksXG4gIHR5cGUgRXhwcmVzc2lvbixcbiAgdHlwZSBUZXh0VmFsdWUsXG4gIFRleHRWYWx1ZUJ1aWxkZXIsXG4gIFdJREdFVF9UWVBFLFxufSBmcm9tICcuLi9hYnN0cmFjdC9pbmRleC5qcydcbmltcG9ydCB7IEpjVGl0bGVzQnVpbGRlciB9IGZyb20gJy4uL2NvbXBvbmVudC9pbmRleC5qcydcbmltcG9ydCB7IHR5cGUgSndCYXNlSW5wdXQsIFdpZGdldEJhc2VCdWlsZGVyIH0gZnJvbSAnLi9qdy5hYnN0cmFjdC5qcydcblxuLyoqXG4gKiBJbnB1dCBjb25maWd1cmF0aW9uIGZvciBhdmF0YXIgd2lkZ2V0LlxuICogRGlzcGxheSB1c2VyIHByb2ZpbGVzIG9yIGVudGl0eSByZXByZXNlbnRhdGlvbnMuXG4gKlxuICogQGFsaWFzIHdpZGdldC5hdmF0YXJcbiAqIEBzZWUgIy9kZWZpbml0aW9ucy9qdy1hdmF0YXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBKd0F2YXRhcklucHV0IGV4dGVuZHMgSndCYXNlSW5wdXQge1xuICAvKiogVGV4dCBkaXNwbGF5ZWQgd2hlbiB1cmkgaXMgZW1wdHkgKHJlcXVpcmVkKSAqL1xuICB0ZXh0Pzogc3RyaW5nIHwgVGV4dFZhbHVlXG4gIC8qKiBTb3VyY2Ugb2YgaW1hZ2UgZGlzcGxheWVkIGFzIGF2YXRhciAqL1xuICB1cmk/OiBzdHJpbmcgfCBFeHByZXNzaW9uXG59XG5cbi8qKlxuICogRGlzcGxheSB1c2VyIHByb2ZpbGVzIG9yIGVudGl0eSByZXByZXNlbnRhdGlvbnMgd2l0aCBhdmF0YXJzLlxuICogU2hvd3MgaW1hZ2Ugd2l0aCBhdXRvbWF0aWMgZmFsbGJhY2sgdG8gaW5pdGlhbHMuXG4gKiBBZGQgdGl0bGVzIGZvciBuYW1lcywgcm9sZXMsIG9yIGRlc2NyaXB0aW9ucy5cbiAqIFN1cHBvcnRzIGR5bmFtaWMgZGF0YSBiaW5kaW5nIGZvciB0ZWFtIGRpcmVjdG9yaWVzLlxuICpcbiAqIEBhbGlhcyB3aWRnZXQuYXZhdGFyXG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvanctYXZhdGFyXG4gKi9cbmV4cG9ydCBjbGFzcyBBdmF0YXJXaWRnZXRCdWlsZGVyIGV4dGVuZHMgV2lkZ2V0QmFzZUJ1aWxkZXI8SndBdmF0YXJJbnB1dD4ge1xuICAvKipcbiAgICogQ3JlYXRlIGFuIGF2YXRhciB3aWRnZXQgYnVpbGRlci5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBhdmF0YXIgd2lkZ2V0XG4gICAqL1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBKd0F2YXRhcklucHV0KSB7XG4gICAgc3VwZXIoV0lER0VUX1RZUEUuQVZBVEFSLCBvcHRpb25zKVxuXG4gICAgdGhpcy50ZXh0KG9wdGlvbnMudGV4dCA/PyAnTkEnKVxuICAgIGlmIChvcHRpb25zLnVyaSkgdGhpcy51cmkob3B0aW9ucy51cmkpXG4gIH1cblxuICAvKipcbiAgICogQWRkIHRpdGxlIGNvbXBvbmVudHMgZm9yIG5hbWVzLCByb2xlcywgb3IgZGVzY3JpcHRpb25zLlxuICAgKi9cbiAgdG9wID0ge1xuICAgIHRpdGxlczogYXNzaWduQnVpbGRlckZhY3RvcnkoSmNUaXRsZXNCdWlsZGVyLCB0aGlzLl9jb25maWcsICd0b3AnKSxcbiAgfVxuXG4gIGJvdHRvbSA9IHtcbiAgICB0aXRsZXM6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVGl0bGVzQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnYm90dG9tJyksXG4gIH1cblxuICB0ZXh0ID0gYXNzaWduQnVpbGRlckZhY3RvcnkoVGV4dFZhbHVlQnVpbGRlciwgdGhpcy5fY29uZmlnLCAndGV4dCcpXG5cbiAgLyoqXG4gICAqIFNldCBhdmF0YXIgaW1hZ2Ugc291cmNlIFVSSS5cbiAgICogRmFsbCBiYWNrIHRvIHRleHQgZGlzcGxheSBpZiBpbWFnZSBmYWlscyB0byBsb2FkLlxuICAgKlxuICAgKiBAcGFyYW0gdXJpIC0gSW1hZ2UgVVJJIG9yIGV4cHJlc3Npb25cbiAgICogQHJldHVybnMgVGhpcyBidWlsZGVyIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgdXJpKHVyaTogc3RyaW5nIHwgRXhwcmVzc2lvbik6IHRoaXMge1xuICAgIHRoaXMuX2NvbmZpZy51cmkgPSB1cmlcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { JcBarChartBuilder, JcLineChartBuilder, JcPieChartBuilder, JcTitlesBuilder, JcTrendBuilder } from '../component/index.js';
2
+ import { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js';
3
+ export type JwChartInput = JwBaseInput;
4
+ export declare class ChartWidgetBuilder extends WidgetBaseBuilder<JwChartInput> {
5
+ constructor(options: JwChartInput);
6
+ readonly top: {
7
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
8
+ trend: (options: import("../component/jc.trend.ts").JcTrendInput) => JcTrendBuilder;
9
+ };
10
+ readonly bottom: {
11
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
12
+ trend: (options: import("../component/jc.trend.ts").JcTrendInput) => JcTrendBuilder;
13
+ };
14
+ readonly lineChart: (options?: import("../component/jc.line-chart.ts").JcLineChartInput | undefined) => JcLineChartBuilder;
15
+ readonly barChart: (options?: import("../component/jc.bar-chart.ts").JcBarChartInput | undefined) => JcBarChartBuilder;
16
+ readonly pieChart: (options?: import("../component/jc.pie-chart.ts").JcPieChartInput | undefined) => JcPieChartBuilder;
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuY2hhcnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aWRnZXQvancuY2hhcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixjQUFjLEVBQ2YsTUFBTSx1QkFBdUIsQ0FBQTtBQUM5QixPQUFPLEVBQUUsS0FBSyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUt0RSxNQUFNLE1BQU0sWUFBWSxHQUFHLFdBQVcsQ0FBQTtBQVd0QyxxQkFBYSxrQkFBbUIsU0FBUSxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7SUFDckUsWUFBWSxPQUFPLEVBQUUsWUFBWSxFQU9oQztJQUtELFFBQVEsQ0FBQyxHQUFHOzs7TUFHWDtJQUtELFFBQVEsQ0FBQyxNQUFNOzs7TUFHZDtJQUtELFFBQVEsQ0FBQyxTQUFTLHlHQUFrRTtJQUtwRixRQUFRLENBQUMsUUFBUSxzR0FBaUU7SUFLbEYsUUFBUSxDQUFDLFFBQVEsc0dBQWlFO0NBQ25GIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXNzaWduQnVpbGRlckZhY3RvcnksIFdJREdFVF9UWVBFIH0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQge1xuICBKY0JhckNoYXJ0QnVpbGRlcixcbiAgSmNMaW5lQ2hhcnRCdWlsZGVyLFxuICBKY1BpZUNoYXJ0QnVpbGRlcixcbiAgSmNUaXRsZXNCdWlsZGVyLFxuICBKY1RyZW5kQnVpbGRlcixcbn0gZnJvbSAnLi4vY29tcG9uZW50L2luZGV4LmpzJ1xuaW1wb3J0IHsgdHlwZSBKd0Jhc2VJbnB1dCwgV2lkZ2V0QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2p3LmFic3RyYWN0LmpzJ1xuXG4vKipcbiAqIElucHV0IGludGVyZmFjZSBmb3IgY2hhcnQgd2lkZ2V0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCB0eXBlIEp3Q2hhcnRJbnB1dCA9IEp3QmFzZUlucHV0XG5cbi8qKlxuICogRGlzcGxheSBkYXRhIHZpc3VhbGl6YXRpb25zIHdpdGggaW50ZXJhY3RpdmUgY2hhcnRzLlxuICogU3VwcG9ydHMgbGluZSwgYmFyLCBhbmQgcGllIGNoYXJ0cyB3aXRoIGN1c3RvbWl6YWJsZSBzZXJpZXMuXG4gKiBBZGQgdHJlbmQgaW5kaWNhdG9ycyBvciB0aXRsZXMgZm9yIGNvbnRleHQuXG4gKiBDaGFydHMgYXV0b21hdGljYWxseSBzY2FsZSB0byB3aWRnZXQgc2l6ZS5cbiAqXG4gKiBAYWxpYXMgd2lkZ2V0LmNoYXJ0XG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvanctY2hhcnRcbiAqL1xuZXhwb3J0IGNsYXNzIENoYXJ0V2lkZ2V0QnVpbGRlciBleHRlbmRzIFdpZGdldEJhc2VCdWlsZGVyPEp3Q2hhcnRJbnB1dD4ge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBKd0NoYXJ0SW5wdXQpIHtcbiAgICBzdXBlcihXSURHRVRfVFlQRS5DSEFSVCwgb3B0aW9ucylcblxuICAgIC8vIEluaXRpYWxpemUgZGVmYXVsdCBjaGFydCAobGluZSBjaGFydClcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5jaGFydCkge1xuICAgICAgdGhpcy5fY29uZmlnLmNoYXJ0ID0geyB0eXBlOiAnY29tcG9uZW50LmxpbmUtY2hhcnQnLCBvcHRpb25zOiB7IHNlcmllczogW10gfSB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEZhY3RvcnkgbWV0aG9kcyBmb3IgdG9wIGNvbXBvbmVudHMuXG4gICAqL1xuICByZWFkb25seSB0b3AgPSB7XG4gICAgdGl0bGVzOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RpdGxlc0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3RvcCcpLFxuICAgIHRyZW5kOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RyZW5kQnVpbGRlciwgdGhpcy5fY29uZmlnLCAndG9wJyksXG4gIH1cblxuICAvKipcbiAgICogRmFjdG9yeSBtZXRob2RzIGZvciBib3R0b20gY29tcG9uZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IGJvdHRvbSA9IHtcbiAgICB0aXRsZXM6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVGl0bGVzQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnYm90dG9tJyksXG4gICAgdHJlbmQ6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVHJlbmRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdib3R0b20nKSxcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGxpbmUgY2hhcnQgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgbGluZUNoYXJ0ID0gYXNzaWduQnVpbGRlckZhY3RvcnkoSmNMaW5lQ2hhcnRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGFydCcpXG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYmFyIGNoYXJ0IGNvbXBvbmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGJhckNoYXJ0ID0gYXNzaWduQnVpbGRlckZhY3RvcnkoSmNCYXJDaGFydEJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ2NoYXJ0JylcblxuICAvKipcbiAgICogQ3JlYXRlcyBwaWUgY2hhcnQgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgcGllQ2hhcnQgPSBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1BpZUNoYXJ0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hhcnQnKVxufVxuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.chart.d.ts","sourceRoot":"","sources":["../../src/widget/jw.chart.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACf,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAKtE,MAAM,MAAM,YAAY,GAAG,WAAW,CAAA;AAWtC,qBAAa,kBAAmB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IACrE,YAAY,OAAO,EAAE,YAAY,EAOhC;IAKD,QAAQ,CAAC,GAAG;;;MAGX;IAKD,QAAQ,CAAC,MAAM;;;MAGd;IAKD,QAAQ,CAAC,SAAS,yGAAkE;IAKpF,QAAQ,CAAC,QAAQ,sGAAiE;IAKlF,QAAQ,CAAC,QAAQ,sGAAiE;CACnF","sourcesContent":["import { assignBuilderFactory, WIDGET_TYPE } from '../abstract/index.js'\nimport {\n JcBarChartBuilder,\n JcLineChartBuilder,\n JcPieChartBuilder,\n JcTitlesBuilder,\n JcTrendBuilder,\n} from '../component/index.js'\nimport { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js'\n\n/**\n * Input interface for chart widget configuration.\n */\nexport type JwChartInput = JwBaseInput\n\n/**\n * Display data visualizations with interactive charts.\n * Supports line, bar, and pie charts with customizable series.\n * Add trend indicators or titles for context.\n * Charts automatically scale to widget size.\n *\n * @alias widget.chart\n * @see #/definitions/jw-chart\n */\nexport class ChartWidgetBuilder extends WidgetBaseBuilder<JwChartInput> {\n constructor(options: JwChartInput) {\n super(WIDGET_TYPE.CHART, options)\n\n // Initialize default chart (line chart)\n if (!this._config.chart) {\n this._config.chart = { type: 'component.line-chart', options: { series: [] } }\n }\n }\n\n /**\n * Factory methods for top components.\n */\n readonly top = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),\n trend: assignBuilderFactory(JcTrendBuilder, this._config, 'top'),\n }\n\n /**\n * Factory methods for bottom components.\n */\n readonly bottom = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),\n trend: assignBuilderFactory(JcTrendBuilder, this._config, 'bottom'),\n }\n\n /**\n * Creates line chart component.\n */\n readonly lineChart = assignBuilderFactory(JcLineChartBuilder, this._config, 'chart')\n\n /**\n * Creates bar chart component.\n */\n readonly barChart = assignBuilderFactory(JcBarChartBuilder, this._config, 'chart')\n\n /**\n * Creates pie chart component.\n */\n readonly pieChart = assignBuilderFactory(JcPieChartBuilder, this._config, 'chart')\n}\n"]}
@@ -0,0 +1,23 @@
1
+ import { assignBuilderFactory, WIDGET_TYPE } from '../abstract/index.js';
2
+ import { JcBarChartBuilder, JcLineChartBuilder, JcPieChartBuilder, JcTitlesBuilder, JcTrendBuilder, } from '../component/index.js';
3
+ import { WidgetBaseBuilder } from './jw.abstract.js';
4
+ export class ChartWidgetBuilder extends WidgetBaseBuilder {
5
+ constructor(options) {
6
+ super(WIDGET_TYPE.CHART, options);
7
+ if (!this._config.chart) {
8
+ this._config.chart = { type: 'component.line-chart', options: { series: [] } };
9
+ }
10
+ }
11
+ top = {
12
+ titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),
13
+ trend: assignBuilderFactory(JcTrendBuilder, this._config, 'top'),
14
+ };
15
+ bottom = {
16
+ titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),
17
+ trend: assignBuilderFactory(JcTrendBuilder, this._config, 'bottom'),
18
+ };
19
+ lineChart = assignBuilderFactory(JcLineChartBuilder, this._config, 'chart');
20
+ barChart = assignBuilderFactory(JcBarChartBuilder, this._config, 'chart');
21
+ pieChart = assignBuilderFactory(JcPieChartBuilder, this._config, 'chart');
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuY2hhcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2lkZ2V0L2p3LmNoYXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUN4RSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLGNBQWMsR0FDZixNQUFNLHVCQUF1QixDQUFBO0FBQzlCLE9BQU8sRUFBb0IsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQWdCdEUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGlCQUErQjtJQUNyRSxZQUFZLE9BQXFCLEVBQUU7UUFDakMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFHakMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUE7UUFDaEYsQ0FBQztJQUFBLENBQ0Y7SUFLUSxHQUFHLEdBQUc7UUFDYixNQUFNLEVBQUUsb0JBQW9CLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDO1FBQ2xFLEtBQUssRUFBRSxvQkFBb0IsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7S0FDakUsQ0FBQTtJQUtRLE1BQU0sR0FBRztRQUNoQixNQUFNLEVBQUUsb0JBQW9CLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDO1FBQ3JFLEtBQUssRUFBRSxvQkFBb0IsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7S0FDcEUsQ0FBQTtJQUtRLFNBQVMsR0FBRyxvQkFBb0IsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBSzNFLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBS3pFLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0NBQ25GIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXNzaWduQnVpbGRlckZhY3RvcnksIFdJREdFVF9UWVBFIH0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQge1xuICBKY0JhckNoYXJ0QnVpbGRlcixcbiAgSmNMaW5lQ2hhcnRCdWlsZGVyLFxuICBKY1BpZUNoYXJ0QnVpbGRlcixcbiAgSmNUaXRsZXNCdWlsZGVyLFxuICBKY1RyZW5kQnVpbGRlcixcbn0gZnJvbSAnLi4vY29tcG9uZW50L2luZGV4LmpzJ1xuaW1wb3J0IHsgdHlwZSBKd0Jhc2VJbnB1dCwgV2lkZ2V0QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2p3LmFic3RyYWN0LmpzJ1xuXG4vKipcbiAqIElucHV0IGludGVyZmFjZSBmb3IgY2hhcnQgd2lkZ2V0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCB0eXBlIEp3Q2hhcnRJbnB1dCA9IEp3QmFzZUlucHV0XG5cbi8qKlxuICogRGlzcGxheSBkYXRhIHZpc3VhbGl6YXRpb25zIHdpdGggaW50ZXJhY3RpdmUgY2hhcnRzLlxuICogU3VwcG9ydHMgbGluZSwgYmFyLCBhbmQgcGllIGNoYXJ0cyB3aXRoIGN1c3RvbWl6YWJsZSBzZXJpZXMuXG4gKiBBZGQgdHJlbmQgaW5kaWNhdG9ycyBvciB0aXRsZXMgZm9yIGNvbnRleHQuXG4gKiBDaGFydHMgYXV0b21hdGljYWxseSBzY2FsZSB0byB3aWRnZXQgc2l6ZS5cbiAqXG4gKiBAYWxpYXMgd2lkZ2V0LmNoYXJ0XG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvanctY2hhcnRcbiAqL1xuZXhwb3J0IGNsYXNzIENoYXJ0V2lkZ2V0QnVpbGRlciBleHRlbmRzIFdpZGdldEJhc2VCdWlsZGVyPEp3Q2hhcnRJbnB1dD4ge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBKd0NoYXJ0SW5wdXQpIHtcbiAgICBzdXBlcihXSURHRVRfVFlQRS5DSEFSVCwgb3B0aW9ucylcblxuICAgIC8vIEluaXRpYWxpemUgZGVmYXVsdCBjaGFydCAobGluZSBjaGFydClcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5jaGFydCkge1xuICAgICAgdGhpcy5fY29uZmlnLmNoYXJ0ID0geyB0eXBlOiAnY29tcG9uZW50LmxpbmUtY2hhcnQnLCBvcHRpb25zOiB7IHNlcmllczogW10gfSB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEZhY3RvcnkgbWV0aG9kcyBmb3IgdG9wIGNvbXBvbmVudHMuXG4gICAqL1xuICByZWFkb25seSB0b3AgPSB7XG4gICAgdGl0bGVzOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RpdGxlc0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3RvcCcpLFxuICAgIHRyZW5kOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RyZW5kQnVpbGRlciwgdGhpcy5fY29uZmlnLCAndG9wJyksXG4gIH1cblxuICAvKipcbiAgICogRmFjdG9yeSBtZXRob2RzIGZvciBib3R0b20gY29tcG9uZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IGJvdHRvbSA9IHtcbiAgICB0aXRsZXM6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVGl0bGVzQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnYm90dG9tJyksXG4gICAgdHJlbmQ6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVHJlbmRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdib3R0b20nKSxcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGxpbmUgY2hhcnQgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgbGluZUNoYXJ0ID0gYXNzaWduQnVpbGRlckZhY3RvcnkoSmNMaW5lQ2hhcnRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGFydCcpXG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYmFyIGNoYXJ0IGNvbXBvbmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGJhckNoYXJ0ID0gYXNzaWduQnVpbGRlckZhY3RvcnkoSmNCYXJDaGFydEJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ2NoYXJ0JylcblxuICAvKipcbiAgICogQ3JlYXRlcyBwaWUgY2hhcnQgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgcGllQ2hhcnQgPSBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1BpZUNoYXJ0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hhcnQnKVxufVxuIl19
@@ -0,0 +1,28 @@
1
+ import { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js';
2
+ import { ActionsWidgetBuilder } from './jw.actions.js';
3
+ import { AvatarWidgetBuilder } from './jw.avatar.js';
4
+ import { ChartWidgetBuilder } from './jw.chart.js';
5
+ import { ImageWidgetBuilder } from './jw.image.js';
6
+ import { ListWidgetBuilder } from './jw.list.js';
7
+ import { LocationWidgetBuilder } from './jw.location.js';
8
+ import { StatusWidgetBuilder } from './jw.status.js';
9
+ import { ValueWidgetBuilder } from './jw.value.js';
10
+ export interface GroupWidgetBuilderInput extends JwBaseInput {
11
+ split?: 'horizontal' | 'vertical';
12
+ }
13
+ export declare class GroupWidgetBuilder extends WidgetBaseBuilder<GroupWidgetBuilderInput> {
14
+ constructor(options: GroupWidgetBuilderInput);
15
+ addWidget: {
16
+ value: (options: import("./jw.value.js").JwValueInput) => ValueWidgetBuilder;
17
+ actions: (options: JwBaseInput) => ActionsWidgetBuilder;
18
+ avatar: (options: import("./jw.avatar.js").JwAvatarInput) => AvatarWidgetBuilder;
19
+ chart: (options: JwBaseInput) => ChartWidgetBuilder;
20
+ group: (options: GroupWidgetBuilderInput) => GroupWidgetBuilder;
21
+ image: (options: import("./jw.image.js").JwImageInput) => ImageWidgetBuilder;
22
+ list: (options: import("./jw.list.js").JwListInput) => ListWidgetBuilder;
23
+ location: (options: import("./jw.location.js").JwLocationInput) => LocationWidgetBuilder;
24
+ status: (options: JwBaseInput) => StatusWidgetBuilder;
25
+ };
26
+ split(split: 'horizontal' | 'vertical'): this;
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuZ3JvdXAuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aWRnZXQvancuZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBS2xELE1BQU0sV0FBVyx1QkFBd0IsU0FBUSxXQUFXO0lBRTFELEtBQUssQ0FBQyxFQUFFLFlBQVksR0FBRyxVQUFVLENBQUE7Q0FDbEM7QUFXRCxxQkFBYSxrQkFBbUIsU0FBUSxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQztJQUNoRixZQUFZLE9BQU8sRUFBRSx1QkFBdUIsRUFJM0M7SUFFRCxTQUFTOzs7Ozs7Ozs7O01BVVI7SUFFRCxLQUFLLENBQUMsS0FBSyxFQUFFLFlBQVksR0FBRyxVQUFVLEdBQUcsSUFBSSxDQU01QztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHVzaEJ1aWxkZXJGYWN0b3J5LCBXSURHRVRfVFlQRSB9IGZyb20gJy4uL2Fic3RyYWN0L2luZGV4LmpzJ1xuaW1wb3J0IHsgdHlwZSBKd0Jhc2VJbnB1dCwgV2lkZ2V0QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2p3LmFic3RyYWN0LmpzJ1xuaW1wb3J0IHsgQWN0aW9uc1dpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3LmFjdGlvbnMuanMnXG5pbXBvcnQgeyBBdmF0YXJXaWRnZXRCdWlsZGVyIH0gZnJvbSAnLi9qdy5hdmF0YXIuanMnXG5pbXBvcnQgeyBDaGFydFdpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3LmNoYXJ0LmpzJ1xuaW1wb3J0IHsgSW1hZ2VXaWRnZXRCdWlsZGVyIH0gZnJvbSAnLi9qdy5pbWFnZS5qcydcbmltcG9ydCB7IExpc3RXaWRnZXRCdWlsZGVyIH0gZnJvbSAnLi9qdy5saXN0LmpzJ1xuaW1wb3J0IHsgTG9jYXRpb25XaWRnZXRCdWlsZGVyIH0gZnJvbSAnLi9qdy5sb2NhdGlvbi5qcydcbmltcG9ydCB7IFN0YXR1c1dpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3LnN0YXR1cy5qcydcbmltcG9ydCB7IFZhbHVlV2lkZ2V0QnVpbGRlciB9IGZyb20gJy4vancudmFsdWUuanMnXG5cbi8qKlxuICogSW5wdXQgaW50ZXJmYWNlIGZvciBncm91cCB3aWRnZXQgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcm91cFdpZGdldEJ1aWxkZXJJbnB1dCBleHRlbmRzIEp3QmFzZUlucHV0IHtcbiAgLyoqIExheW91dCBkaXJlY3Rpb246ICdob3Jpem9udGFsJyBvciAndmVydGljYWwnIChkZWZhdWx0KSAqL1xuICBzcGxpdD86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCdcbn1cblxuLyoqXG4gKiBDb21wb3NlIG11bHRpcGxlIHdpZGdldHMgaW50byBvcmdhbml6ZWQgbGF5b3V0cy5cbiAqIFN1cHBvcnRzIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIGFycmFuZ2VtZW50cy5cbiAqIE5lc3QgZ3JvdXBzIGZvciBjb21wbGV4IGRhc2hib2FyZCBzdHJ1Y3R1cmVzLlxuICogV2lkZ2V0cyBhdXRvbWF0aWNhbGx5IHJlc2l6ZSB3aXRoaW4gZ3JvdXAgYm91bmRhcmllcy5cbiAqXG4gKiBAYWxpYXMgd2lkZ2V0Lmdyb3VwXG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvanctZ3JvdXBcbiAqL1xuZXhwb3J0IGNsYXNzIEdyb3VwV2lkZ2V0QnVpbGRlciBleHRlbmRzIFdpZGdldEJhc2VCdWlsZGVyPEdyb3VwV2lkZ2V0QnVpbGRlcklucHV0PiB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEdyb3VwV2lkZ2V0QnVpbGRlcklucHV0KSB7XG4gICAgc3VwZXIoV0lER0VUX1RZUEUuR1JPVVAsIG9wdGlvbnMpXG5cbiAgICB0aGlzLnNwbGl0KG9wdGlvbnMuc3BsaXQgPz8gJ3ZlcnRpY2FsJylcbiAgfVxuXG4gIGFkZFdpZGdldCA9IHtcbiAgICB2YWx1ZTogcHVzaEJ1aWxkZXJGYWN0b3J5KFZhbHVlV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBhY3Rpb25zOiBwdXNoQnVpbGRlckZhY3RvcnkoQWN0aW9uc1dpZGdldEJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ2NoaWxkcmVuJyksXG4gICAgYXZhdGFyOiBwdXNoQnVpbGRlckZhY3RvcnkoQXZhdGFyV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBjaGFydDogcHVzaEJ1aWxkZXJGYWN0b3J5KENoYXJ0V2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBncm91cDogcHVzaEJ1aWxkZXJGYWN0b3J5KEdyb3VwV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBpbWFnZTogcHVzaEJ1aWxkZXJGYWN0b3J5KEltYWdlV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBsaXN0OiBwdXNoQnVpbGRlckZhY3RvcnkoTGlzdFdpZGdldEJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ2NoaWxkcmVuJyksXG4gICAgbG9jYXRpb246IHB1c2hCdWlsZGVyRmFjdG9yeShMb2NhdGlvbldpZGdldEJ1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ2NoaWxkcmVuJyksXG4gICAgc3RhdHVzOiBwdXNoQnVpbGRlckZhY3RvcnkoU3RhdHVzV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgfVxuXG4gIHNwbGl0KHNwbGl0OiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnKTogdGhpcyB7XG4gICAgaWYgKCFbJ2hvcml6b250YWwnLCAndmVydGljYWwnXS5pbmNsdWRlcyhzcGxpdCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzcGxpdDogJHtzcGxpdH0uIE11c3QgYmUgJ2hvcml6b250YWwnIG9yICd2ZXJ0aWNhbCdgKVxuICAgIH1cbiAgICB0aGlzLl9jb25maWcuc3BsaXQgPSBzcGxpdFxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.group.d.ts","sourceRoot":"","sources":["../../src/widget/jw.group.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAKlD,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAE1D,KAAK,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CAClC;AAWD,qBAAa,kBAAmB,SAAQ,iBAAiB,CAAC,uBAAuB,CAAC;IAChF,YAAY,OAAO,EAAE,uBAAuB,EAI3C;IAED,SAAS;;;;;;;;;;MAUR;IAED,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAM5C;CACF","sourcesContent":["import { pushBuilderFactory, WIDGET_TYPE } from '../abstract/index.js'\nimport { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js'\nimport { ActionsWidgetBuilder } from './jw.actions.js'\nimport { AvatarWidgetBuilder } from './jw.avatar.js'\nimport { ChartWidgetBuilder } from './jw.chart.js'\nimport { ImageWidgetBuilder } from './jw.image.js'\nimport { ListWidgetBuilder } from './jw.list.js'\nimport { LocationWidgetBuilder } from './jw.location.js'\nimport { StatusWidgetBuilder } from './jw.status.js'\nimport { ValueWidgetBuilder } from './jw.value.js'\n\n/**\n * Input interface for group widget configuration.\n */\nexport interface GroupWidgetBuilderInput extends JwBaseInput {\n /** Layout direction: 'horizontal' or 'vertical' (default) */\n split?: 'horizontal' | 'vertical'\n}\n\n/**\n * Compose multiple widgets into organized layouts.\n * Supports horizontal and vertical arrangements.\n * Nest groups for complex dashboard structures.\n * Widgets automatically resize within group boundaries.\n *\n * @alias widget.group\n * @see #/definitions/jw-group\n */\nexport class GroupWidgetBuilder extends WidgetBaseBuilder<GroupWidgetBuilderInput> {\n constructor(options: GroupWidgetBuilderInput) {\n super(WIDGET_TYPE.GROUP, options)\n\n this.split(options.split ?? 'vertical')\n }\n\n addWidget = {\n value: pushBuilderFactory(ValueWidgetBuilder, this._config, 'children'),\n actions: pushBuilderFactory(ActionsWidgetBuilder, this._config, 'children'),\n avatar: pushBuilderFactory(AvatarWidgetBuilder, this._config, 'children'),\n chart: pushBuilderFactory(ChartWidgetBuilder, this._config, 'children'),\n group: pushBuilderFactory(GroupWidgetBuilder, this._config, 'children'),\n image: pushBuilderFactory(ImageWidgetBuilder, this._config, 'children'),\n list: pushBuilderFactory(ListWidgetBuilder, this._config, 'children'),\n location: pushBuilderFactory(LocationWidgetBuilder, this._config, 'children'),\n status: pushBuilderFactory(StatusWidgetBuilder, this._config, 'children'),\n }\n\n split(split: 'horizontal' | 'vertical'): this {\n if (!['horizontal', 'vertical'].includes(split)) {\n throw new Error(`Invalid split: ${split}. Must be 'horizontal' or 'vertical'`)\n }\n this._config.split = split\n return this\n }\n}\n"]}
@@ -0,0 +1,35 @@
1
+ import { pushBuilderFactory, WIDGET_TYPE } from '../abstract/index.js';
2
+ import { WidgetBaseBuilder } from './jw.abstract.js';
3
+ import { ActionsWidgetBuilder } from './jw.actions.js';
4
+ import { AvatarWidgetBuilder } from './jw.avatar.js';
5
+ import { ChartWidgetBuilder } from './jw.chart.js';
6
+ import { ImageWidgetBuilder } from './jw.image.js';
7
+ import { ListWidgetBuilder } from './jw.list.js';
8
+ import { LocationWidgetBuilder } from './jw.location.js';
9
+ import { StatusWidgetBuilder } from './jw.status.js';
10
+ import { ValueWidgetBuilder } from './jw.value.js';
11
+ export class GroupWidgetBuilder extends WidgetBaseBuilder {
12
+ constructor(options) {
13
+ super(WIDGET_TYPE.GROUP, options);
14
+ this.split(options.split ?? 'vertical');
15
+ }
16
+ addWidget = {
17
+ value: pushBuilderFactory(ValueWidgetBuilder, this._config, 'children'),
18
+ actions: pushBuilderFactory(ActionsWidgetBuilder, this._config, 'children'),
19
+ avatar: pushBuilderFactory(AvatarWidgetBuilder, this._config, 'children'),
20
+ chart: pushBuilderFactory(ChartWidgetBuilder, this._config, 'children'),
21
+ group: pushBuilderFactory(GroupWidgetBuilder, this._config, 'children'),
22
+ image: pushBuilderFactory(ImageWidgetBuilder, this._config, 'children'),
23
+ list: pushBuilderFactory(ListWidgetBuilder, this._config, 'children'),
24
+ location: pushBuilderFactory(LocationWidgetBuilder, this._config, 'children'),
25
+ status: pushBuilderFactory(StatusWidgetBuilder, this._config, 'children'),
26
+ };
27
+ split(split) {
28
+ if (!['horizontal', 'vertical'].includes(split)) {
29
+ throw new Error(`Invalid split: ${split}. Must be 'horizontal' or 'vertical'`);
30
+ }
31
+ this._config.split = split;
32
+ return this;
33
+ }
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2lkZ2V0L2p3Lmdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUN0RSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBbUJsRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsaUJBQTBDO0lBQ2hGLFlBQVksT0FBZ0MsRUFBRTtRQUM1QyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQTtRQUVqQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLENBQUE7SUFBQSxDQUN4QztJQUVELFNBQVMsR0FBRztRQUNWLEtBQUssRUFBRSxrQkFBa0IsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQztRQUN2RSxPQUFPLEVBQUUsa0JBQWtCLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUM7UUFDM0UsTUFBTSxFQUFFLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO1FBQ3pFLEtBQUssRUFBRSxrQkFBa0IsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQztRQUN2RSxLQUFLLEVBQUUsa0JBQWtCLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUM7UUFDdkUsS0FBSyxFQUFFLGtCQUFrQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO1FBQ3ZFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQztRQUNyRSxRQUFRLEVBQUUsa0JBQWtCLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUM7UUFDN0UsTUFBTSxFQUFFLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDO0tBQzFFLENBQUE7SUFFRCxLQUFLLENBQUMsS0FBZ0MsRUFBUTtRQUM1QyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsS0FBSyxzQ0FBc0MsQ0FBQyxDQUFBO1FBQ2hGLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7UUFDMUIsT0FBTyxJQUFJLENBQUE7SUFBQSxDQUNaO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwdXNoQnVpbGRlckZhY3RvcnksIFdJREdFVF9UWVBFIH0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQgeyB0eXBlIEp3QmFzZUlucHV0LCBXaWRnZXRCYXNlQnVpbGRlciB9IGZyb20gJy4vancuYWJzdHJhY3QuanMnXG5pbXBvcnQgeyBBY3Rpb25zV2lkZ2V0QnVpbGRlciB9IGZyb20gJy4vancuYWN0aW9ucy5qcydcbmltcG9ydCB7IEF2YXRhcldpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3LmF2YXRhci5qcydcbmltcG9ydCB7IENoYXJ0V2lkZ2V0QnVpbGRlciB9IGZyb20gJy4vancuY2hhcnQuanMnXG5pbXBvcnQgeyBJbWFnZVdpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3LmltYWdlLmpzJ1xuaW1wb3J0IHsgTGlzdFdpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3Lmxpc3QuanMnXG5pbXBvcnQgeyBMb2NhdGlvbldpZGdldEJ1aWxkZXIgfSBmcm9tICcuL2p3LmxvY2F0aW9uLmpzJ1xuaW1wb3J0IHsgU3RhdHVzV2lkZ2V0QnVpbGRlciB9IGZyb20gJy4vancuc3RhdHVzLmpzJ1xuaW1wb3J0IHsgVmFsdWVXaWRnZXRCdWlsZGVyIH0gZnJvbSAnLi9qdy52YWx1ZS5qcydcblxuLyoqXG4gKiBJbnB1dCBpbnRlcmZhY2UgZm9yIGdyb3VwIHdpZGdldCBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyb3VwV2lkZ2V0QnVpbGRlcklucHV0IGV4dGVuZHMgSndCYXNlSW5wdXQge1xuICAvKiogTGF5b3V0IGRpcmVjdGlvbjogJ2hvcml6b250YWwnIG9yICd2ZXJ0aWNhbCcgKGRlZmF1bHQpICovXG4gIHNwbGl0PzogJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJ1xufVxuXG4vKipcbiAqIENvbXBvc2UgbXVsdGlwbGUgd2lkZ2V0cyBpbnRvIG9yZ2FuaXplZCBsYXlvdXRzLlxuICogU3VwcG9ydHMgaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgYXJyYW5nZW1lbnRzLlxuICogTmVzdCBncm91cHMgZm9yIGNvbXBsZXggZGFzaGJvYXJkIHN0cnVjdHVyZXMuXG4gKiBXaWRnZXRzIGF1dG9tYXRpY2FsbHkgcmVzaXplIHdpdGhpbiBncm91cCBib3VuZGFyaWVzLlxuICpcbiAqIEBhbGlhcyB3aWRnZXQuZ3JvdXBcbiAqIEBzZWUgIy9kZWZpbml0aW9ucy9qdy1ncm91cFxuICovXG5leHBvcnQgY2xhc3MgR3JvdXBXaWRnZXRCdWlsZGVyIGV4dGVuZHMgV2lkZ2V0QmFzZUJ1aWxkZXI8R3JvdXBXaWRnZXRCdWlsZGVySW5wdXQ+IHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogR3JvdXBXaWRnZXRCdWlsZGVySW5wdXQpIHtcbiAgICBzdXBlcihXSURHRVRfVFlQRS5HUk9VUCwgb3B0aW9ucylcblxuICAgIHRoaXMuc3BsaXQob3B0aW9ucy5zcGxpdCA/PyAndmVydGljYWwnKVxuICB9XG5cbiAgYWRkV2lkZ2V0ID0ge1xuICAgIHZhbHVlOiBwdXNoQnVpbGRlckZhY3RvcnkoVmFsdWVXaWRnZXRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGlsZHJlbicpLFxuICAgIGFjdGlvbnM6IHB1c2hCdWlsZGVyRmFjdG9yeShBY3Rpb25zV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBhdmF0YXI6IHB1c2hCdWlsZGVyRmFjdG9yeShBdmF0YXJXaWRnZXRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGlsZHJlbicpLFxuICAgIGNoYXJ0OiBwdXNoQnVpbGRlckZhY3RvcnkoQ2hhcnRXaWRnZXRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGlsZHJlbicpLFxuICAgIGdyb3VwOiBwdXNoQnVpbGRlckZhY3RvcnkoR3JvdXBXaWRnZXRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGlsZHJlbicpLFxuICAgIGltYWdlOiBwdXNoQnVpbGRlckZhY3RvcnkoSW1hZ2VXaWRnZXRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGlsZHJlbicpLFxuICAgIGxpc3Q6IHB1c2hCdWlsZGVyRmFjdG9yeShMaXN0V2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBsb2NhdGlvbjogcHVzaEJ1aWxkZXJGYWN0b3J5KExvY2F0aW9uV2lkZ2V0QnVpbGRlciwgdGhpcy5fY29uZmlnLCAnY2hpbGRyZW4nKSxcbiAgICBzdGF0dXM6IHB1c2hCdWlsZGVyRmFjdG9yeShTdGF0dXNXaWRnZXRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdjaGlsZHJlbicpLFxuICB9XG5cbiAgc3BsaXQoc3BsaXQ6ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCcpOiB0aGlzIHtcbiAgICBpZiAoIVsnaG9yaXpvbnRhbCcsICd2ZXJ0aWNhbCddLmluY2x1ZGVzKHNwbGl0KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNwbGl0OiAke3NwbGl0fS4gTXVzdCBiZSAnaG9yaXpvbnRhbCcgb3IgJ3ZlcnRpY2FsJ2ApXG4gICAgfVxuICAgIHRoaXMuX2NvbmZpZy5zcGxpdCA9IHNwbGl0XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuIl19
@@ -0,0 +1,27 @@
1
+ import { type Expression } from '../abstract/index.js';
2
+ import { JcTitlesBuilder } from '../component/index.js';
3
+ import { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js';
4
+ export interface JwImageInput extends JwBaseInput {
5
+ height?: number;
6
+ resizeMode?: 'cover' | 'contain' | 'stretch' | 'repeat' | 'center';
7
+ source?: string | Expression | {
8
+ uri: string | Expression;
9
+ };
10
+ isContentOverlaid?: boolean;
11
+ }
12
+ export declare class ImageWidgetBuilder extends WidgetBaseBuilder<JwImageInput> {
13
+ constructor(options: JwImageInput);
14
+ top: {
15
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
16
+ };
17
+ bottom: {
18
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
19
+ };
20
+ height(height: number): this;
21
+ resizeMode(mode: 'cover' | 'contain' | 'stretch' | 'repeat' | 'center'): this;
22
+ source(source: string | Expression | {
23
+ uri: string | Expression;
24
+ }): this;
25
+ isContentOverlaid(val: boolean): this;
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuaW1hZ2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aWRnZXQvancuaW1hZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLEtBQUssVUFBVSxFQUloQixNQUFNLHNCQUFzQixDQUFBO0FBQzdCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsS0FBSyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUV0RSxNQUFNLFdBQVcsWUFBYSxTQUFRLFdBQVc7SUFDL0MsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFBO0lBQ2YsVUFBVSxDQUFDLEVBQUUsT0FBTyxHQUFHLFNBQVMsR0FBRyxTQUFTLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQTtJQUNsRSxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQUcsVUFBVSxHQUFHO1FBQUUsR0FBRyxFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUE7S0FBRSxDQUFBO0lBQzNELGlCQUFpQixDQUFDLEVBQUUsT0FBTyxDQUFBO0NBQzVCO0FBS0QscUJBQWEsa0JBQW1CLFNBQVEsaUJBQWlCLENBQUMsWUFBWSxDQUFDO0lBTXJFLFlBQVksT0FBTyxFQUFFLFlBQVksRUFnQmhDO0lBR0QsR0FBRzs7TUFFRjtJQUVELE1BQU07O01BRUw7SUFZRCxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxJQUFJLENBRzNCO0lBUUQsVUFBVSxDQUFDLElBQUksRUFBRSxPQUFPLEdBQUcsU0FBUyxHQUFHLFNBQVMsR0FBRyxRQUFRLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FHNUU7SUFRRCxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxVQUFVLEdBQUc7UUFBRSxHQUFHLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQTtLQUFFLEdBQUcsSUFBSSxDQWlCdkU7SUFRRCxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsT0FBTyxHQUFHLElBQUksQ0FHcEM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFzc2lnbkJ1aWxkZXJGYWN0b3J5LFxuICB0eXBlIEV4cHJlc3Npb24sXG4gIEltYWdlUmVzaXplTW9kZVNjaGVtYSxcbiAgdG9FeHByZXNzaW9uLFxuICBXSURHRVRfVFlQRSxcbn0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQgeyBKY1RpdGxlc0J1aWxkZXIgfSBmcm9tICcuLi9jb21wb25lbnQvaW5kZXguanMnXG5pbXBvcnQgeyB0eXBlIEp3QmFzZUlucHV0LCBXaWRnZXRCYXNlQnVpbGRlciB9IGZyb20gJy4vancuYWJzdHJhY3QuanMnXG5cbmV4cG9ydCBpbnRlcmZhY2UgSndJbWFnZUlucHV0IGV4dGVuZHMgSndCYXNlSW5wdXQge1xuICBoZWlnaHQ/OiBudW1iZXJcbiAgcmVzaXplTW9kZT86ICdjb3ZlcicgfCAnY29udGFpbicgfCAnc3RyZXRjaCcgfCAncmVwZWF0JyB8ICdjZW50ZXInXG4gIHNvdXJjZT86IHN0cmluZyB8IEV4cHJlc3Npb24gfCB7IHVyaTogc3RyaW5nIHwgRXhwcmVzc2lvbiB9XG4gIGlzQ29udGVudE92ZXJsYWlkPzogYm9vbGVhblxufVxuXG4vKipcbiAqIEJ1aWxkIGltYWdlIHdpZGdldHMgd2l0aCBvdmVybGF5cy5cbiAqL1xuZXhwb3J0IGNsYXNzIEltYWdlV2lkZ2V0QnVpbGRlciBleHRlbmRzIFdpZGdldEJhc2VCdWlsZGVyPEp3SW1hZ2VJbnB1dD4ge1xuICAvKipcbiAgICogQ3JlYXRlIGltYWdlIHdpZGdldC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBXaWRnZXQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgY29uc3RydWN0b3Iob3B0aW9uczogSndJbWFnZUlucHV0KSB7XG4gICAgc3VwZXIoV0lER0VUX1RZUEUuSU1BR0UsIG9wdGlvbnMpXG4gICAgLy8gU2V0IGRlZmF1bHRzXG4gICAgdGhpcy5fY29uZmlnLnJlc2l6ZU1vZGUgPSBvcHRpb25zLnJlc2l6ZU1vZGUgfHwgJ2NlbnRlcidcblxuICAgIC8vIEluaXRpYWxpemUgc291cmNlIGlmIHByb3ZpZGVkXG4gICAgaWYgKG9wdGlvbnMuc291cmNlKSB7XG4gICAgICB0aGlzLnNvdXJjZShvcHRpb25zLnNvdXJjZSlcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRGVmYXVsdCBlbXB0eSBzb3VyY2VcbiAgICAgIHRoaXMuX2NvbmZpZy5zb3VyY2UgPSB7IHVyaTogJycgfVxuICAgIH1cblxuICAgIC8vIFNldCBvdGhlciBvcHRpb25hbCBwcm9wZXJ0aWVzXG4gICAgaWYgKG9wdGlvbnMuaGVpZ2h0ICE9PSB1bmRlZmluZWQpIHRoaXMuaGVpZ2h0KG9wdGlvbnMuaGVpZ2h0KVxuICAgIGlmIChvcHRpb25zLmlzQ29udGVudE92ZXJsYWlkICE9PSB1bmRlZmluZWQpIHRoaXMuaXNDb250ZW50T3ZlcmxhaWQob3B0aW9ucy5pc0NvbnRlbnRPdmVybGFpZClcbiAgfVxuXG4gIC8vIEZhY3RvcnkgbWV0aG9kcyBmb3IgY29tcG9uZW50c1xuICB0b3AgPSB7XG4gICAgdGl0bGVzOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RpdGxlc0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3RvcCcpLFxuICB9XG5cbiAgYm90dG9tID0ge1xuICAgIHRpdGxlczogYXNzaWduQnVpbGRlckZhY3RvcnkoSmNUaXRsZXNCdWlsZGVyLCB0aGlzLl9jb25maWcsICdib3R0b20nKSxcbiAgfVxuXG4gIC8vIFRleHQgcHJvcGVydGllcyBhcmUgaW5oZXJpdGVkIGZyb20gV2lkZ2V0QmFzZUJ1aWxkZXJcbiAgLy8gdGl0bGUsIHN1YnRpdGxlLCBmb290ZXIgdXNlIGFzc2lnbkJ1aWxkZXJGYWN0b3J5XG4gIC8vIGZvb3RlckFsaWduIGlzIGluaGVyaXRlZCBhcyBhIHNpbXBsZSBzZXR0ZXJcblxuICAvKipcbiAgICogU2V0IGltYWdlIGhlaWdodCBpbiBwaXhlbHMuXG4gICAqXG4gICAqIEBwYXJhbSBoZWlnaHQgLSBIZWlnaHQgaW4gcGl4ZWxzXG4gICAqIEByZXR1cm5zIFRoaXMgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICovXG4gIGhlaWdodChoZWlnaHQ6IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMuX2NvbmZpZy5oZWlnaHQgPSBoZWlnaHRcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBpbWFnZSByZXNpemUgbW9kZS5cbiAgICpcbiAgICogQHBhcmFtIG1vZGUgLSBJbWFnZSByZXNpemUgbW9kZTogJ2NvdmVyJywgJ2NvbnRhaW4nLCAnc3RyZXRjaCcsICdyZXBlYXQnLCAnY2VudGVyJ1xuICAgKiBAcmV0dXJucyBUaGlzIGJ1aWxkZXIgZm9yIGNoYWluaW5nXG4gICAqL1xuICByZXNpemVNb2RlKG1vZGU6ICdjb3ZlcicgfCAnY29udGFpbicgfCAnc3RyZXRjaCcgfCAncmVwZWF0JyB8ICdjZW50ZXInKTogdGhpcyB7XG4gICAgdGhpcy5fY29uZmlnLnJlc2l6ZU1vZGUgPSBJbWFnZVJlc2l6ZU1vZGVTY2hlbWEucGFyc2UobW9kZSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBpbWFnZSBzb3VyY2UgVVJJIChyZXF1aXJlZCkuXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBJbWFnZSBVUkksIGV4cHJlc3Npb24sIG9yIHNvdXJjZSBvYmplY3RcbiAgICogQHJldHVybnMgVGhpcyBidWlsZGVyIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgc291cmNlKHNvdXJjZTogc3RyaW5nIHwgRXhwcmVzc2lvbiB8IHsgdXJpOiBzdHJpbmcgfCBFeHByZXNzaW9uIH0pOiB0aGlzIHtcbiAgICBpZiAodHlwZW9mIHNvdXJjZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIC8vIENvbnZlcnQgZXhwcmVzc2lvbiBzdHJpbmdzXG4gICAgICBjb25zdCB1cmkgPSBzb3VyY2Uuc3RhcnRzV2l0aCgnPScpID8gdG9FeHByZXNzaW9uKHNvdXJjZSkgOiBzb3VyY2VcbiAgICAgIHRoaXMuX2NvbmZpZy5zb3VyY2UgPSB7IHVyaSB9XG4gICAgfSBlbHNlIGlmICgndXJpJyBpbiBzb3VyY2UpIHtcbiAgICAgIC8vIEhhbmRsZSBzb3VyY2Ugb2JqZWN0XG4gICAgICBjb25zdCB1cmkgPVxuICAgICAgICB0eXBlb2Ygc291cmNlLnVyaSA9PT0gJ3N0cmluZycgJiYgc291cmNlLnVyaS5zdGFydHNXaXRoKCc9JylcbiAgICAgICAgICA/IHRvRXhwcmVzc2lvbihzb3VyY2UudXJpKVxuICAgICAgICAgIDogc291cmNlLnVyaVxuICAgICAgdGhpcy5fY29uZmlnLnNvdXJjZSA9IHsgdXJpIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRGlyZWN0IEV4cHJlc3Npb24gb2JqZWN0XG4gICAgICB0aGlzLl9jb25maWcuc291cmNlID0geyB1cmk6IHNvdXJjZSB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IHdoZXRoZXIgY29udGVudCBvdmVybGF5cyBpbWFnZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbCAtIFRydWUgdG8gb3ZlcmxheSBjb250ZW50IG9uIGltYWdlXG4gICAqIEByZXR1cm5zIFRoaXMgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICovXG4gIGlzQ29udGVudE92ZXJsYWlkKHZhbDogYm9vbGVhbik6IHRoaXMge1xuICAgIHRoaXMuX2NvbmZpZy5pc0NvbnRlbnRPdmVybGFpZCA9IHZhbFxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.image.d.ts","sourceRoot":"","sources":["../../src/widget/jw.image.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,UAAU,EAIhB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEtE,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;IAClE,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG;QAAE,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,CAAA;IAC3D,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAKD,qBAAa,kBAAmB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAMrE,YAAY,OAAO,EAAE,YAAY,EAgBhC;IAGD,GAAG;;MAEF;IAED,MAAM;;MAEL;IAYD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAG3B;IAQD,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAG5E;IAQD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG;QAAE,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,GAAG,IAAI,CAiBvE;IAQD,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAGpC;CACF","sourcesContent":["import {\n assignBuilderFactory,\n type Expression,\n ImageResizeModeSchema,\n toExpression,\n WIDGET_TYPE,\n} from '../abstract/index.js'\nimport { JcTitlesBuilder } from '../component/index.js'\nimport { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js'\n\nexport interface JwImageInput extends JwBaseInput {\n height?: number\n resizeMode?: 'cover' | 'contain' | 'stretch' | 'repeat' | 'center'\n source?: string | Expression | { uri: string | Expression }\n isContentOverlaid?: boolean\n}\n\n/**\n * Build image widgets with overlays.\n */\nexport class ImageWidgetBuilder extends WidgetBaseBuilder<JwImageInput> {\n /**\n * Create image widget.\n *\n * @param options - Widget configuration\n */\n constructor(options: JwImageInput) {\n super(WIDGET_TYPE.IMAGE, options)\n // Set defaults\n this._config.resizeMode = options.resizeMode || 'center'\n\n // Initialize source if provided\n if (options.source) {\n this.source(options.source)\n } else {\n // Default empty source\n this._config.source = { uri: '' }\n }\n\n // Set other optional properties\n if (options.height !== undefined) this.height(options.height)\n if (options.isContentOverlaid !== undefined) this.isContentOverlaid(options.isContentOverlaid)\n }\n\n // Factory methods for components\n top = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),\n }\n\n bottom = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),\n }\n\n // Text properties are inherited from WidgetBaseBuilder\n // title, subtitle, footer use assignBuilderFactory\n // footerAlign is inherited as a simple setter\n\n /**\n * Set image height in pixels.\n *\n * @param height - Height in pixels\n * @returns This builder for chaining\n */\n height(height: number): this {\n this._config.height = height\n return this\n }\n\n /**\n * Set image resize mode.\n *\n * @param mode - Image resize mode: 'cover', 'contain', 'stretch', 'repeat', 'center'\n * @returns This builder for chaining\n */\n resizeMode(mode: 'cover' | 'contain' | 'stretch' | 'repeat' | 'center'): this {\n this._config.resizeMode = ImageResizeModeSchema.parse(mode)\n return this\n }\n\n /**\n * Set image source URI (required).\n *\n * @param source - Image URI, expression, or source object\n * @returns This builder for chaining\n */\n source(source: string | Expression | { uri: string | Expression }): this {\n if (typeof source === 'string') {\n // Convert expression strings\n const uri = source.startsWith('=') ? toExpression(source) : source\n this._config.source = { uri }\n } else if ('uri' in source) {\n // Handle source object\n const uri =\n typeof source.uri === 'string' && source.uri.startsWith('=')\n ? toExpression(source.uri)\n : source.uri\n this._config.source = { uri }\n } else {\n // Direct Expression object\n this._config.source = { uri: source }\n }\n return this\n }\n\n /**\n * Set whether content overlays image.\n *\n * @param val - True to overlay content on image\n * @returns This builder for chaining\n */\n isContentOverlaid(val: boolean): this {\n this._config.isContentOverlaid = val\n return this\n }\n}\n"]}
@@ -0,0 +1,54 @@
1
+ import { assignBuilderFactory, ImageResizeModeSchema, toExpression, WIDGET_TYPE, } from '../abstract/index.js';
2
+ import { JcTitlesBuilder } from '../component/index.js';
3
+ import { WidgetBaseBuilder } from './jw.abstract.js';
4
+ export class ImageWidgetBuilder extends WidgetBaseBuilder {
5
+ constructor(options) {
6
+ super(WIDGET_TYPE.IMAGE, options);
7
+ this._config.resizeMode = options.resizeMode || 'center';
8
+ if (options.source) {
9
+ this.source(options.source);
10
+ }
11
+ else {
12
+ this._config.source = { uri: '' };
13
+ }
14
+ if (options.height !== undefined)
15
+ this.height(options.height);
16
+ if (options.isContentOverlaid !== undefined)
17
+ this.isContentOverlaid(options.isContentOverlaid);
18
+ }
19
+ top = {
20
+ titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),
21
+ };
22
+ bottom = {
23
+ titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),
24
+ };
25
+ height(height) {
26
+ this._config.height = height;
27
+ return this;
28
+ }
29
+ resizeMode(mode) {
30
+ this._config.resizeMode = ImageResizeModeSchema.parse(mode);
31
+ return this;
32
+ }
33
+ source(source) {
34
+ if (typeof source === 'string') {
35
+ const uri = source.startsWith('=') ? toExpression(source) : source;
36
+ this._config.source = { uri };
37
+ }
38
+ else if ('uri' in source) {
39
+ const uri = typeof source.uri === 'string' && source.uri.startsWith('=')
40
+ ? toExpression(source.uri)
41
+ : source.uri;
42
+ this._config.source = { uri };
43
+ }
44
+ else {
45
+ this._config.source = { uri: source };
46
+ }
47
+ return this;
48
+ }
49
+ isContentOverlaid(val) {
50
+ this._config.isContentOverlaid = val;
51
+ return this;
52
+ }
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancuaW1hZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2lkZ2V0L2p3LmltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxvQkFBb0IsRUFFcEIscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixXQUFXLEdBQ1osTUFBTSxzQkFBc0IsQ0FBQTtBQUM3QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDdkQsT0FBTyxFQUFvQixpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBWXRFLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBK0I7SUFNckUsWUFBWSxPQUFxQixFQUFFO1FBQ2pDLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1FBRWpDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksUUFBUSxDQUFBO1FBR3hELElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzdCLENBQUM7YUFBTSxDQUFDO1lBRU4sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUE7UUFDbkMsQ0FBQztRQUdELElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDN0QsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEtBQUssU0FBUztZQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUFBLENBQy9GO0lBR0QsR0FBRyxHQUFHO1FBQ0osTUFBTSxFQUFFLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztLQUNuRSxDQUFBO0lBRUQsTUFBTSxHQUFHO1FBQ1AsTUFBTSxFQUFFLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQztLQUN0RSxDQUFBO0lBWUQsTUFBTSxDQUFDLE1BQWMsRUFBUTtRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDNUIsT0FBTyxJQUFJLENBQUE7SUFBQSxDQUNaO0lBUUQsVUFBVSxDQUFDLElBQTJELEVBQVE7UUFDNUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzNELE9BQU8sSUFBSSxDQUFBO0lBQUEsQ0FDWjtJQVFELE1BQU0sQ0FBQyxNQUEwRCxFQUFRO1FBQ3ZFLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7WUFFL0IsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7WUFDbEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQTtRQUMvQixDQUFDO2FBQU0sSUFBSSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7WUFFM0IsTUFBTSxHQUFHLEdBQ1AsT0FBTyxNQUFNLENBQUMsR0FBRyxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUM7Z0JBQzFELENBQUMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQztnQkFDMUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUE7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQTtRQUMvQixDQUFDO2FBQU0sQ0FBQztZQUVOLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFBO1FBQ3ZDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQTtJQUFBLENBQ1o7SUFRRCxpQkFBaUIsQ0FBQyxHQUFZLEVBQVE7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUE7UUFDcEMsT0FBTyxJQUFJLENBQUE7SUFBQSxDQUNaO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhc3NpZ25CdWlsZGVyRmFjdG9yeSxcbiAgdHlwZSBFeHByZXNzaW9uLFxuICBJbWFnZVJlc2l6ZU1vZGVTY2hlbWEsXG4gIHRvRXhwcmVzc2lvbixcbiAgV0lER0VUX1RZUEUsXG59IGZyb20gJy4uL2Fic3RyYWN0L2luZGV4LmpzJ1xuaW1wb3J0IHsgSmNUaXRsZXNCdWlsZGVyIH0gZnJvbSAnLi4vY29tcG9uZW50L2luZGV4LmpzJ1xuaW1wb3J0IHsgdHlwZSBKd0Jhc2VJbnB1dCwgV2lkZ2V0QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2p3LmFic3RyYWN0LmpzJ1xuXG5leHBvcnQgaW50ZXJmYWNlIEp3SW1hZ2VJbnB1dCBleHRlbmRzIEp3QmFzZUlucHV0IHtcbiAgaGVpZ2h0PzogbnVtYmVyXG4gIHJlc2l6ZU1vZGU/OiAnY292ZXInIHwgJ2NvbnRhaW4nIHwgJ3N0cmV0Y2gnIHwgJ3JlcGVhdCcgfCAnY2VudGVyJ1xuICBzb3VyY2U/OiBzdHJpbmcgfCBFeHByZXNzaW9uIHwgeyB1cmk6IHN0cmluZyB8IEV4cHJlc3Npb24gfVxuICBpc0NvbnRlbnRPdmVybGFpZD86IGJvb2xlYW5cbn1cblxuLyoqXG4gKiBCdWlsZCBpbWFnZSB3aWRnZXRzIHdpdGggb3ZlcmxheXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbWFnZVdpZGdldEJ1aWxkZXIgZXh0ZW5kcyBXaWRnZXRCYXNlQnVpbGRlcjxKd0ltYWdlSW5wdXQ+IHtcbiAgLyoqXG4gICAqIENyZWF0ZSBpbWFnZSB3aWRnZXQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gV2lkZ2V0IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEp3SW1hZ2VJbnB1dCkge1xuICAgIHN1cGVyKFdJREdFVF9UWVBFLklNQUdFLCBvcHRpb25zKVxuICAgIC8vIFNldCBkZWZhdWx0c1xuICAgIHRoaXMuX2NvbmZpZy5yZXNpemVNb2RlID0gb3B0aW9ucy5yZXNpemVNb2RlIHx8ICdjZW50ZXInXG5cbiAgICAvLyBJbml0aWFsaXplIHNvdXJjZSBpZiBwcm92aWRlZFxuICAgIGlmIChvcHRpb25zLnNvdXJjZSkge1xuICAgICAgdGhpcy5zb3VyY2Uob3B0aW9ucy5zb3VyY2UpXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIERlZmF1bHQgZW1wdHkgc291cmNlXG4gICAgICB0aGlzLl9jb25maWcuc291cmNlID0geyB1cmk6ICcnIH1cbiAgICB9XG5cbiAgICAvLyBTZXQgb3RoZXIgb3B0aW9uYWwgcHJvcGVydGllc1xuICAgIGlmIChvcHRpb25zLmhlaWdodCAhPT0gdW5kZWZpbmVkKSB0aGlzLmhlaWdodChvcHRpb25zLmhlaWdodClcbiAgICBpZiAob3B0aW9ucy5pc0NvbnRlbnRPdmVybGFpZCAhPT0gdW5kZWZpbmVkKSB0aGlzLmlzQ29udGVudE92ZXJsYWlkKG9wdGlvbnMuaXNDb250ZW50T3ZlcmxhaWQpXG4gIH1cblxuICAvLyBGYWN0b3J5IG1ldGhvZHMgZm9yIGNvbXBvbmVudHNcbiAgdG9wID0ge1xuICAgIHRpdGxlczogYXNzaWduQnVpbGRlckZhY3RvcnkoSmNUaXRsZXNCdWlsZGVyLCB0aGlzLl9jb25maWcsICd0b3AnKSxcbiAgfVxuXG4gIGJvdHRvbSA9IHtcbiAgICB0aXRsZXM6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVGl0bGVzQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnYm90dG9tJyksXG4gIH1cblxuICAvLyBUZXh0IHByb3BlcnRpZXMgYXJlIGluaGVyaXRlZCBmcm9tIFdpZGdldEJhc2VCdWlsZGVyXG4gIC8vIHRpdGxlLCBzdWJ0aXRsZSwgZm9vdGVyIHVzZSBhc3NpZ25CdWlsZGVyRmFjdG9yeVxuICAvLyBmb290ZXJBbGlnbiBpcyBpbmhlcml0ZWQgYXMgYSBzaW1wbGUgc2V0dGVyXG5cbiAgLyoqXG4gICAqIFNldCBpbWFnZSBoZWlnaHQgaW4gcGl4ZWxzLlxuICAgKlxuICAgKiBAcGFyYW0gaGVpZ2h0IC0gSGVpZ2h0IGluIHBpeGVsc1xuICAgKiBAcmV0dXJucyBUaGlzIGJ1aWxkZXIgZm9yIGNoYWluaW5nXG4gICAqL1xuICBoZWlnaHQoaGVpZ2h0OiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLl9jb25maWcuaGVpZ2h0ID0gaGVpZ2h0XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgaW1hZ2UgcmVzaXplIG1vZGUuXG4gICAqXG4gICAqIEBwYXJhbSBtb2RlIC0gSW1hZ2UgcmVzaXplIG1vZGU6ICdjb3ZlcicsICdjb250YWluJywgJ3N0cmV0Y2gnLCAncmVwZWF0JywgJ2NlbnRlcidcbiAgICogQHJldHVybnMgVGhpcyBidWlsZGVyIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcmVzaXplTW9kZShtb2RlOiAnY292ZXInIHwgJ2NvbnRhaW4nIHwgJ3N0cmV0Y2gnIHwgJ3JlcGVhdCcgfCAnY2VudGVyJyk6IHRoaXMge1xuICAgIHRoaXMuX2NvbmZpZy5yZXNpemVNb2RlID0gSW1hZ2VSZXNpemVNb2RlU2NoZW1hLnBhcnNlKG1vZGUpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgaW1hZ2Ugc291cmNlIFVSSSAocmVxdWlyZWQpLlxuICAgKlxuICAgKiBAcGFyYW0gc291cmNlIC0gSW1hZ2UgVVJJLCBleHByZXNzaW9uLCBvciBzb3VyY2Ugb2JqZWN0XG4gICAqIEByZXR1cm5zIFRoaXMgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHNvdXJjZShzb3VyY2U6IHN0cmluZyB8IEV4cHJlc3Npb24gfCB7IHVyaTogc3RyaW5nIHwgRXhwcmVzc2lvbiB9KTogdGhpcyB7XG4gICAgaWYgKHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBDb252ZXJ0IGV4cHJlc3Npb24gc3RyaW5nc1xuICAgICAgY29uc3QgdXJpID0gc291cmNlLnN0YXJ0c1dpdGgoJz0nKSA/IHRvRXhwcmVzc2lvbihzb3VyY2UpIDogc291cmNlXG4gICAgICB0aGlzLl9jb25maWcuc291cmNlID0geyB1cmkgfVxuICAgIH0gZWxzZSBpZiAoJ3VyaScgaW4gc291cmNlKSB7XG4gICAgICAvLyBIYW5kbGUgc291cmNlIG9iamVjdFxuICAgICAgY29uc3QgdXJpID1cbiAgICAgICAgdHlwZW9mIHNvdXJjZS51cmkgPT09ICdzdHJpbmcnICYmIHNvdXJjZS51cmkuc3RhcnRzV2l0aCgnPScpXG4gICAgICAgICAgPyB0b0V4cHJlc3Npb24oc291cmNlLnVyaSlcbiAgICAgICAgICA6IHNvdXJjZS51cmlcbiAgICAgIHRoaXMuX2NvbmZpZy5zb3VyY2UgPSB7IHVyaSB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIERpcmVjdCBFeHByZXNzaW9uIG9iamVjdFxuICAgICAgdGhpcy5fY29uZmlnLnNvdXJjZSA9IHsgdXJpOiBzb3VyY2UgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB3aGV0aGVyIGNvbnRlbnQgb3ZlcmxheXMgaW1hZ2UuXG4gICAqXG4gICAqIEBwYXJhbSB2YWwgLSBUcnVlIHRvIG92ZXJsYXkgY29udGVudCBvbiBpbWFnZVxuICAgKiBAcmV0dXJucyBUaGlzIGJ1aWxkZXIgZm9yIGNoYWluaW5nXG4gICAqL1xuICBpc0NvbnRlbnRPdmVybGFpZCh2YWw6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICB0aGlzLl9jb25maWcuaXNDb250ZW50T3ZlcmxhaWQgPSB2YWxcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG4iXX0=
@@ -0,0 +1,44 @@
1
+ import { type ColorValue, type DatasourceId, type Expression, type TextValue } from '../abstract/index.js';
2
+ import { JcListItemBuilder, JcProductItemBuilder, JcStageBuilder, JcTitlesBuilder, JcTrendBuilder } from '../component/index.js';
3
+ import { type DatasourceBase } from '../datasource/index.js';
4
+ import { type IconName } from '../icon/index.js';
5
+ import { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js';
6
+ export interface Tag {
7
+ readonly text: TextValue;
8
+ readonly color?: ColorValue;
9
+ }
10
+ export interface Rating {
11
+ readonly ratingIcon: {
12
+ readonly icon: IconName | Expression;
13
+ readonly color?: ColorValue;
14
+ readonly maximum?: number | Expression;
15
+ readonly current?: number | Expression;
16
+ };
17
+ readonly text?: TextValue;
18
+ readonly value?: number | {
19
+ readonly current: number | Expression;
20
+ readonly maximum: number | Expression;
21
+ } | Expression;
22
+ readonly percentage?: number | Expression;
23
+ }
24
+ export interface JwListInput extends JwBaseInput {
25
+ data?: string | DatasourceId | Expression;
26
+ }
27
+ export declare class ListWidgetBuilder extends WidgetBaseBuilder<JwListInput> {
28
+ constructor(options: JwListInput);
29
+ readonly top: {
30
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
31
+ trend: (options: import("../component/jc.trend.ts").JcTrendInput) => JcTrendBuilder;
32
+ };
33
+ readonly bottom: {
34
+ titles: (options?: import("../component/jc.titles.ts").JcTitlesInput | undefined) => JcTitlesBuilder;
35
+ trend: (options: import("../component/jc.trend.ts").JcTrendInput) => JcTrendBuilder;
36
+ };
37
+ readonly item: {
38
+ listItem: (options?: import("../component/jc.list-item.ts").JcListItemInput | undefined) => JcListItemBuilder;
39
+ productItem: (options?: import("../component/jc.product-item.ts").JcProductItemInput | undefined) => JcProductItemBuilder;
40
+ stage: (options?: import("../component/jc.stage.ts").JcStageInput | undefined) => JcStageBuilder;
41
+ };
42
+ data(data: string | DatasourceBase | Expression): this;
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiancubGlzdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3dpZGdldC9qdy5saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxLQUFLLFVBQVUsRUFDZixLQUFLLFlBQVksRUFDakIsS0FBSyxVQUFVLEVBQ2YsS0FBSyxTQUFTLEVBR2YsTUFBTSxzQkFBc0IsQ0FBQTtBQUU3QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUNwQixjQUFjLEVBQ2QsZUFBZSxFQUNmLGNBQWMsRUFDZixNQUFNLHVCQUF1QixDQUFBO0FBQzlCLE9BQU8sRUFBRSxLQUFLLGNBQWMsRUFBb0IsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5RSxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsS0FBSyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQU10RSxNQUFNLFdBQVcsR0FBRztJQUVsQixRQUFRLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQTtJQUV4QixRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxDQUFBO0NBQzVCO0FBTUQsTUFBTSxXQUFXLE1BQU07SUFDckIsUUFBUSxDQUFDLFVBQVUsRUFBRTtRQUNuQixRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsR0FBRyxVQUFVLENBQUE7UUFDcEMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVUsQ0FBQTtRQUMzQixRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQTtRQUN0QyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQTtLQUN2QyxDQUFBO0lBQ0QsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQTtJQUN6QixRQUFRLENBQUMsS0FBSyxDQUFDLEVBQ1gsTUFBTSxHQUNOO1FBQ0UsUUFBUSxDQUFDLE9BQU8sRUFBRSxNQUFNLEdBQUcsVUFBVSxDQUFBO1FBQ3JDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQTtLQUN0QyxHQUNELFVBQVUsQ0FBQTtJQUNkLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLEdBQUcsVUFBVSxDQUFBO0NBQzFDO0FBS0QsTUFBTSxXQUFXLFdBQVksU0FBUSxXQUFXO0lBRTlDLElBQUksQ0FBQyxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsVUFBVSxDQUFBO0NBQzFDO0FBV0QscUJBQWEsaUJBQWtCLFNBQVEsaUJBQWlCLENBQUMsV0FBVyxDQUFDO0lBQ25FLFlBQVksT0FBTyxFQUFFLFdBQVcsRUFTL0I7SUFLRCxRQUFRLENBQUMsR0FBRzs7O01BR1g7SUFLRCxRQUFRLENBQUMsTUFBTTs7O01BR2Q7SUFLRCxRQUFRLENBQUMsSUFBSTs7OztNQUlaO0lBUUQsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEdBQUcsY0FBYyxHQUFHLFVBQVUsR0FBRyxJQUFJLENBV3JEO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhc3NpZ25CdWlsZGVyRmFjdG9yeSxcbiAgdHlwZSBDb2xvclZhbHVlLFxuICB0eXBlIERhdGFzb3VyY2VJZCxcbiAgdHlwZSBFeHByZXNzaW9uLFxuICB0eXBlIFRleHRWYWx1ZSxcbiAgdG9FeHByZXNzaW9uLFxuICBXSURHRVRfVFlQRSxcbn0gZnJvbSAnLi4vYWJzdHJhY3QvaW5kZXguanMnXG5pbXBvcnQgeyBDVFggfSBmcm9tICcuLi9hcHBsaWNhdGlvbi9pbmRleC5qcydcbmltcG9ydCB7XG4gIEpjTGlzdEl0ZW1CdWlsZGVyLFxuICBKY1Byb2R1Y3RJdGVtQnVpbGRlcixcbiAgSmNTdGFnZUJ1aWxkZXIsXG4gIEpjVGl0bGVzQnVpbGRlcixcbiAgSmNUcmVuZEJ1aWxkZXIsXG59IGZyb20gJy4uL2NvbXBvbmVudC9pbmRleC5qcydcbmltcG9ydCB7IHR5cGUgRGF0YXNvdXJjZUJhc2UsIGlzRGF0YXNvdXJjZUJhc2UgfSBmcm9tICcuLi9kYXRhc291cmNlL2luZGV4LmpzJ1xuaW1wb3J0IHsgdHlwZSBJY29uTmFtZSB9IGZyb20gJy4uL2ljb24vaW5kZXguanMnXG5pbXBvcnQgeyB0eXBlIEp3QmFzZUlucHV0LCBXaWRnZXRCYXNlQnVpbGRlciB9IGZyb20gJy4vancuYWJzdHJhY3QuanMnXG5cbi8qKlxuICogQHNlZSAjL2RlZmluaXRpb25zL1RhZ1xuICogUmVwcmVzZW50cyBhIHRhZyB3aXRoIGN1c3RvbWl6YWJsZSB0ZXh0IGFuZCBjb2xvclxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhZyB7XG4gIC8qKiBUaGUgdGV4dCBjb250ZW50IGRpc3BsYXllZCB3aXRoaW4gdGhlIHRhZy4gKi9cbiAgcmVhZG9ubHkgdGV4dDogVGV4dFZhbHVlXG4gIC8qKiBUaGUgY29sb3Igb2YgdGhlIHRhZy4gRGVmYXVsdHMgdG8gJ3ByaW1hcnknLiAqL1xuICByZWFkb25seSBjb2xvcj86IENvbG9yVmFsdWVcbn1cblxuLyoqXG4gKiBAc2VlICMvZGVmaW5pdGlvbnMvUmF0aW5nXG4gKiBSYXRpbmcgY29tcG9uZW50IGZvciBsaXN0IGl0ZW1zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmF0aW5nIHtcbiAgcmVhZG9ubHkgcmF0aW5nSWNvbjoge1xuICAgIHJlYWRvbmx5IGljb246IEljb25OYW1lIHwgRXhwcmVzc2lvblxuICAgIHJlYWRvbmx5IGNvbG9yPzogQ29sb3JWYWx1ZVxuICAgIHJlYWRvbmx5IG1heGltdW0/OiBudW1iZXIgfCBFeHByZXNzaW9uXG4gICAgcmVhZG9ubHkgY3VycmVudD86IG51bWJlciB8IEV4cHJlc3Npb25cbiAgfVxuICByZWFkb25seSB0ZXh0PzogVGV4dFZhbHVlXG4gIHJlYWRvbmx5IHZhbHVlPzpcbiAgICB8IG51bWJlclxuICAgIHwge1xuICAgICAgICByZWFkb25seSBjdXJyZW50OiBudW1iZXIgfCBFeHByZXNzaW9uXG4gICAgICAgIHJlYWRvbmx5IG1heGltdW06IG51bWJlciB8IEV4cHJlc3Npb25cbiAgICAgIH1cbiAgICB8IEV4cHJlc3Npb25cbiAgcmVhZG9ubHkgcGVyY2VudGFnZT86IG51bWJlciB8IEV4cHJlc3Npb25cbn1cblxuLyoqXG4gKiBJbnB1dCBpbnRlcmZhY2UgZm9yIGxpc3Qgd2lkZ2V0IGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSndMaXN0SW5wdXQgZXh0ZW5kcyBKd0Jhc2VJbnB1dCB7XG4gIC8qKiBEYXRhOiBhcnJheSBvZiBpdGVtcyB0byBkaXNwbGF5ICovXG4gIGRhdGE/OiBzdHJpbmcgfCBEYXRhc291cmNlSWQgfCBFeHByZXNzaW9uXG59XG5cbi8qKlxuICogRGlzcGxheSBzY3JvbGxhYmxlIGxpc3RzIG9mIGRhdGEgaXRlbXMuXG4gKiBCaW5kIHRvIGRhdGFzb3VyY2VzIG9yIGV4cHJlc3Npb25zIGZvciBkeW5hbWljIGNvbnRlbnQuXG4gKiBDdXN0b21pemUgaXRlbSB0ZW1wbGF0ZXMgd2l0aCB2YXJpb3VzIGxheW91dHMuXG4gKiBBZGQgaGVhZGVycyBhbmQgZm9vdGVycyBmb3IgY29udGV4dC5cbiAqXG4gKiBAYWxpYXMgd2lkZ2V0Lmxpc3RcbiAqIEBzZWUgIy9kZWZpbml0aW9ucy9qdy1saXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0V2lkZ2V0QnVpbGRlciBleHRlbmRzIFdpZGdldEJhc2VCdWlsZGVyPEp3TGlzdElucHV0PiB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEp3TGlzdElucHV0KSB7XG4gICAgc3VwZXIoV0lER0VUX1RZUEUuTElTVCwgb3B0aW9ucylcblxuICAgIC8vIFNldCBkZWZhdWx0IGl0ZW0gY29uZmlndXJhdGlvblxuICAgIGlmICghdGhpcy5fY29uZmlnLml0ZW0pIHtcbiAgICAgIHRoaXMuX2NvbmZpZy5pdGVtID0geyB0eXBlOiAnY29tcG9uZW50Lmxpc3QtaXRlbScsIG9wdGlvbnM6IHsgdGl0bGU6ICdsaXN0JyB9IH1cbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5kYXRhKSB0aGlzLmRhdGEob3B0aW9ucy5kYXRhKVxuICB9XG5cbiAgLyoqXG4gICAqIEZhY3RvcnkgbWV0aG9kcyBmb3IgdG9wIGNvbXBvbmVudHMuXG4gICAqL1xuICByZWFkb25seSB0b3AgPSB7XG4gICAgdGl0bGVzOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RpdGxlc0J1aWxkZXIsIHRoaXMuX2NvbmZpZywgJ3RvcCcpLFxuICAgIHRyZW5kOiBhc3NpZ25CdWlsZGVyRmFjdG9yeShKY1RyZW5kQnVpbGRlciwgdGhpcy5fY29uZmlnLCAndG9wJyksXG4gIH1cblxuICAvKipcbiAgICogRmFjdG9yeSBtZXRob2RzIGZvciBib3R0b20gY29tcG9uZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IGJvdHRvbSA9IHtcbiAgICB0aXRsZXM6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVGl0bGVzQnVpbGRlciwgdGhpcy5fY29uZmlnLCAnYm90dG9tJyksXG4gICAgdHJlbmQ6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjVHJlbmRCdWlsZGVyLCB0aGlzLl9jb25maWcsICdib3R0b20nKSxcbiAgfVxuXG4gIC8qKlxuICAgKiBGYWN0b3J5IG1ldGhvZHMgZm9yIGl0ZW0gY29tcG9uZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IGl0ZW0gPSB7XG4gICAgbGlzdEl0ZW06IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjTGlzdEl0ZW1CdWlsZGVyLCB0aGlzLl9jb25maWcsICdpdGVtJyksXG4gICAgcHJvZHVjdEl0ZW06IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjUHJvZHVjdEl0ZW1CdWlsZGVyLCB0aGlzLl9jb25maWcsICdpdGVtJyksXG4gICAgc3RhZ2U6IGFzc2lnbkJ1aWxkZXJGYWN0b3J5KEpjU3RhZ2VCdWlsZGVyLCB0aGlzLl9jb25maWcsICdpdGVtJyksXG4gIH1cblxuICAvKipcbiAgICogU2V0IGRhdGEgc291cmNlIGZvciBsaXN0LlxuICAgKlxuICAgKiBAcGFyYW0gZGF0YSAtIEV4cHJlc3Npb24gcG9pbnRpbmcgdG8gZGF0YSBhcnJheSBvciBkYXRhc291cmNlIElEXG4gICAqIEByZXR1cm5zIFRoaXMgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICovXG4gIGRhdGEoZGF0YTogc3RyaW5nIHwgRGF0YXNvdXJjZUJhc2UgfCBFeHByZXNzaW9uKTogdGhpcyB7XG4gICAgaWYgKGlzRGF0YXNvdXJjZUJhc2UoZGF0YSkpIHtcbiAgICAgIHRoaXMuX2NvbmZpZy5kYXRhID0gQ1RYLmRhdGFzb3VyY2VzLmV4cHIoZGF0YS5kYXRhc291cmNlSWQpXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycgJiYgZGF0YS5zdGFydHNXaXRoKCc9JykpIHtcbiAgICAgIHRoaXMuX2NvbmZpZy5kYXRhID0gdG9FeHByZXNzaW9uKGRhdGEpXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMuX2NvbmZpZy5kYXRhID0gQ1RYLmRhdGFzb3VyY2VzLmV4cHIoZGF0YSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fY29uZmlnLmRhdGEgPSBkYXRhXG4gICAgfVxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jw.list.d.ts","sourceRoot":"","sources":["../../src/widget/jw.list.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EAGf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,cAAc,EACf,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,KAAK,cAAc,EAAoB,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAMtE,MAAM,WAAW,GAAG;IAElB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IAExB,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAC5B;AAMD,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAA;QACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAA;QAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;QACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;KACvC,CAAA;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EACX,MAAM,GACN;QACE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAA;QACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAA;KACtC,GACD,UAAU,CAAA;IACd,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;CAC1C;AAKD,MAAM,WAAW,WAAY,SAAQ,WAAW;IAE9C,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAAA;CAC1C;AAWD,qBAAa,iBAAkB,SAAQ,iBAAiB,CAAC,WAAW,CAAC;IACnE,YAAY,OAAO,EAAE,WAAW,EAS/B;IAKD,QAAQ,CAAC,GAAG;;;MAGX;IAKD,QAAQ,CAAC,MAAM;;;MAGd;IAKD,QAAQ,CAAC,IAAI;;;;MAIZ;IAQD,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,UAAU,GAAG,IAAI,CAWrD;CACF","sourcesContent":["import {\n assignBuilderFactory,\n type ColorValue,\n type DatasourceId,\n type Expression,\n type TextValue,\n toExpression,\n WIDGET_TYPE,\n} from '../abstract/index.js'\nimport { CTX } from '../application/index.js'\nimport {\n JcListItemBuilder,\n JcProductItemBuilder,\n JcStageBuilder,\n JcTitlesBuilder,\n JcTrendBuilder,\n} from '../component/index.js'\nimport { type DatasourceBase, isDatasourceBase } from '../datasource/index.js'\nimport { type IconName } from '../icon/index.js'\nimport { type JwBaseInput, WidgetBaseBuilder } from './jw.abstract.js'\n\n/**\n * @see #/definitions/Tag\n * Represents a tag with customizable text and color\n */\nexport interface Tag {\n /** The text content displayed within the tag. */\n readonly text: TextValue\n /** The color of the tag. Defaults to 'primary'. */\n readonly color?: ColorValue\n}\n\n/**\n * @see #/definitions/Rating\n * Rating component for list items\n */\nexport interface Rating {\n readonly ratingIcon: {\n readonly icon: IconName | Expression\n readonly color?: ColorValue\n readonly maximum?: number | Expression\n readonly current?: number | Expression\n }\n readonly text?: TextValue\n readonly value?:\n | number\n | {\n readonly current: number | Expression\n readonly maximum: number | Expression\n }\n | Expression\n readonly percentage?: number | Expression\n}\n\n/**\n * Input interface for list widget configuration.\n */\nexport interface JwListInput extends JwBaseInput {\n /** Data: array of items to display */\n data?: string | DatasourceId | Expression\n}\n\n/**\n * Display scrollable lists of data items.\n * Bind to datasources or expressions for dynamic content.\n * Customize item templates with various layouts.\n * Add headers and footers for context.\n *\n * @alias widget.list\n * @see #/definitions/jw-list\n */\nexport class ListWidgetBuilder extends WidgetBaseBuilder<JwListInput> {\n constructor(options: JwListInput) {\n super(WIDGET_TYPE.LIST, options)\n\n // Set default item configuration\n if (!this._config.item) {\n this._config.item = { type: 'component.list-item', options: { title: 'list' } }\n }\n\n if (options.data) this.data(options.data)\n }\n\n /**\n * Factory methods for top components.\n */\n readonly top = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'top'),\n trend: assignBuilderFactory(JcTrendBuilder, this._config, 'top'),\n }\n\n /**\n * Factory methods for bottom components.\n */\n readonly bottom = {\n titles: assignBuilderFactory(JcTitlesBuilder, this._config, 'bottom'),\n trend: assignBuilderFactory(JcTrendBuilder, this._config, 'bottom'),\n }\n\n /**\n * Factory methods for item components.\n */\n readonly item = {\n listItem: assignBuilderFactory(JcListItemBuilder, this._config, 'item'),\n productItem: assignBuilderFactory(JcProductItemBuilder, this._config, 'item'),\n stage: assignBuilderFactory(JcStageBuilder, this._config, 'item'),\n }\n\n /**\n * Set data source for list.\n *\n * @param data - Expression pointing to data array or datasource ID\n * @returns This builder for chaining\n */\n data(data: string | DatasourceBase | Expression): this {\n if (isDatasourceBase(data)) {\n this._config.data = CTX.datasources.expr(data.datasourceId)\n } else if (typeof data === 'string' && data.startsWith('=')) {\n this._config.data = toExpression(data)\n } else if (typeof data === 'string') {\n this._config.data = CTX.datasources.expr(data)\n } else {\n this._config.data = data\n }\n return this\n }\n}\n"]}