@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.
- package/CHANGELOG.md +95 -0
- package/README.md +87 -0
- package/dist/PACKAGE.d.ts +4 -0
- package/dist/PACKAGE.d.ts.map +1 -0
- package/dist/PACKAGE.js +5 -0
- package/dist/abstract/app-info.d.ts +8 -0
- package/dist/abstract/app-info.d.ts.map +1 -0
- package/dist/abstract/app-info.js +8 -0
- package/dist/abstract/app-name.d.ts +15 -0
- package/dist/abstract/app-name.d.ts.map +1 -0
- package/dist/abstract/app-name.js +28 -0
- package/dist/abstract/base-builder.d.ts +4 -0
- package/dist/abstract/base-builder.d.ts.map +1 -0
- package/dist/abstract/base-builder.js +3 -0
- package/dist/abstract/element-base-builder.d.ts +7 -0
- package/dist/abstract/element-base-builder.d.ts.map +1 -0
- package/dist/abstract/element-base-builder.js +11 -0
- package/dist/abstract/generic.d.ts +31 -0
- package/dist/abstract/generic.d.ts.map +1 -0
- package/dist/abstract/generic.js +2 -0
- package/dist/abstract/index.d.ts +12 -0
- package/dist/abstract/index.d.ts.map +1 -0
- package/dist/abstract/index.js +11 -0
- package/dist/abstract/register.d.ts +31 -0
- package/dist/abstract/register.d.ts.map +1 -0
- package/dist/abstract/register.js +48 -0
- package/dist/abstract/sdk.expression.d.ts +43 -0
- package/dist/abstract/sdk.expression.d.ts.map +1 -0
- package/dist/abstract/sdk.expression.js +175 -0
- package/dist/abstract/sdk.text.d.ts +23 -0
- package/dist/abstract/sdk.text.d.ts.map +1 -0
- package/dist/abstract/sdk.text.js +110 -0
- package/dist/abstract/sdk.types.d.ts +16 -0
- package/dist/abstract/sdk.types.d.ts.map +1 -0
- package/dist/abstract/sdk.types.js +88 -0
- package/dist/abstract/zod.strata.d.ts +17 -0
- package/dist/abstract/zod.strata.d.ts.map +1 -0
- package/dist/abstract/zod.strata.js +11 -0
- package/dist/abstract/zod.types.d.ts +1937 -0
- package/dist/abstract/zod.types.d.ts.map +1 -0
- package/dist/abstract/zod.types.js +848 -0
- package/dist/action/action-definition.builder.d.ts +16 -0
- package/dist/action/action-definition.builder.d.ts.map +1 -0
- package/dist/action/action-definition.builder.js +35 -0
- package/dist/action/action.descriptor.d.ts +8 -0
- package/dist/action/action.descriptor.d.ts.map +1 -0
- package/dist/action/action.descriptor.js +2 -0
- package/dist/action/index.d.ts +57 -0
- package/dist/action/index.d.ts.map +1 -0
- package/dist/action/index.js +48 -0
- package/dist/action/ja.abstract.d.ts +33 -0
- package/dist/action/ja.abstract.d.ts.map +1 -0
- package/dist/action/ja.abstract.js +58 -0
- package/dist/action/ja.action-definition.d.ts +11 -0
- package/dist/action/ja.action-definition.d.ts.map +1 -0
- package/dist/action/ja.action-definition.js +12 -0
- package/dist/action/ja.action-list.d.ts +9 -0
- package/dist/action/ja.action-list.d.ts.map +1 -0
- package/dist/action/ja.action-list.js +15 -0
- package/dist/action/ja.clear-queue.d.ts +9 -0
- package/dist/action/ja.clear-queue.d.ts.map +1 -0
- package/dist/action/ja.clear-queue.js +9 -0
- package/dist/action/ja.color.d.ts +3 -0
- package/dist/action/ja.color.d.ts.map +1 -0
- package/dist/action/ja.color.js +2 -0
- package/dist/action/ja.confirm.abstract.d.ts +16 -0
- package/dist/action/ja.confirm.abstract.d.ts.map +1 -0
- package/dist/action/ja.confirm.abstract.js +25 -0
- package/dist/action/ja.confirm.d.ts +23 -0
- package/dist/action/ja.confirm.d.ts.map +1 -0
- package/dist/action/ja.confirm.js +28 -0
- package/dist/action/ja.delete-queue-command.d.ts +9 -0
- package/dist/action/ja.delete-queue-command.d.ts.map +1 -0
- package/dist/action/ja.delete-queue-command.js +9 -0
- package/dist/action/ja.delete-sync-scope.d.ts +10 -0
- package/dist/action/ja.delete-sync-scope.d.ts.map +1 -0
- package/dist/action/ja.delete-sync-scope.js +14 -0
- package/dist/action/ja.delete-sync-status.d.ts +9 -0
- package/dist/action/ja.delete-sync-status.d.ts.map +1 -0
- package/dist/action/ja.delete-sync-status.js +9 -0
- package/dist/action/ja.evaluate.d.ts +12 -0
- package/dist/action/ja.evaluate.d.ts.map +1 -0
- package/dist/action/ja.evaluate.js +9 -0
- package/dist/action/ja.execute-action.d.ts +11 -0
- package/dist/action/ja.execute-action.d.ts.map +1 -0
- package/dist/action/ja.execute-action.js +15 -0
- package/dist/action/ja.execute-entities.d.ts +7 -0
- package/dist/action/ja.execute-entities.d.ts.map +1 -0
- package/dist/action/ja.execute-entities.js +8 -0
- package/dist/action/ja.execute-entity.abstract.d.ts +41 -0
- package/dist/action/ja.execute-entity.abstract.d.ts.map +1 -0
- package/dist/action/ja.execute-entity.abstract.js +104 -0
- package/dist/action/ja.execute-entity.d.ts +6 -0
- package/dist/action/ja.execute-entity.d.ts.map +1 -0
- package/dist/action/ja.execute-entity.dynamic-data.d.ts +6 -0
- package/dist/action/ja.execute-entity.dynamic-data.d.ts.map +1 -0
- package/dist/action/ja.execute-entity.dynamic-data.js +2 -0
- package/dist/action/ja.execute-entity.generic.d.ts +11 -0
- package/dist/action/ja.execute-entity.generic.d.ts.map +1 -0
- package/dist/action/ja.execute-entity.generic.js +2 -0
- package/dist/action/ja.execute-entity.js +8 -0
- package/dist/action/ja.execute-entity.sql.d.ts +12 -0
- package/dist/action/ja.execute-entity.sql.d.ts.map +1 -0
- package/dist/action/ja.execute-entity.sql.js +2 -0
- package/dist/action/ja.execute-sql.abstract.d.ts +6 -0
- package/dist/action/ja.execute-sql.abstract.d.ts.map +1 -0
- package/dist/action/ja.execute-sql.abstract.js +2 -0
- package/dist/action/ja.execute-sql.d.ts +16 -0
- package/dist/action/ja.execute-sql.d.ts.map +1 -0
- package/dist/action/ja.execute-sql.js +64 -0
- package/dist/action/ja.find-replace.d.ts +12 -0
- package/dist/action/ja.find-replace.d.ts.map +1 -0
- package/dist/action/ja.find-replace.js +22 -0
- package/dist/action/ja.generate-file.d.ts +11 -0
- package/dist/action/ja.generate-file.d.ts.map +1 -0
- package/dist/action/ja.generate-file.js +19 -0
- package/dist/action/ja.generate-pdf.d.ts +10 -0
- package/dist/action/ja.generate-pdf.d.ts.map +1 -0
- package/dist/action/ja.generate-pdf.js +10 -0
- package/dist/action/ja.go-back.d.ts +9 -0
- package/dist/action/ja.go-back.d.ts.map +1 -0
- package/dist/action/ja.go-back.js +11 -0
- package/dist/action/ja.go-to.d.ts +18 -0
- package/dist/action/ja.go-to.d.ts.map +1 -0
- package/dist/action/ja.go-to.js +41 -0
- package/dist/action/ja.in-background.d.ts +95 -0
- package/dist/action/ja.in-background.d.ts.map +1 -0
- package/dist/action/ja.in-background.factory.d.ts +88 -0
- package/dist/action/ja.in-background.factory.d.ts.map +1 -0
- package/dist/action/ja.in-background.factory.js +98 -0
- package/dist/action/ja.in-background.js +247 -0
- package/dist/action/ja.info-modal.d.ts +37 -0
- package/dist/action/ja.info-modal.d.ts.map +1 -0
- package/dist/action/ja.info-modal.js +61 -0
- package/dist/action/ja.jig-actions.d.ts +16 -0
- package/dist/action/ja.jig-actions.d.ts.map +1 -0
- package/dist/action/ja.jig-actions.js +35 -0
- package/dist/action/ja.on-button.factory.d.ts +89 -0
- package/dist/action/ja.on-button.factory.d.ts.map +1 -0
- package/dist/action/ja.on-button.factory.js +86 -0
- package/dist/action/ja.open-app-settings.d.ts +6 -0
- package/dist/action/ja.open-app-settings.d.ts.map +1 -0
- package/dist/action/ja.open-app-settings.js +8 -0
- package/dist/action/ja.open-map.abstract.d.ts +6 -0
- package/dist/action/ja.open-map.abstract.d.ts.map +1 -0
- package/dist/action/ja.open-map.abstract.js +2 -0
- package/dist/action/ja.open-map.d.ts +11 -0
- package/dist/action/ja.open-map.d.ts.map +1 -0
- package/dist/action/ja.open-map.js +25 -0
- package/dist/action/ja.open-media-picker.abstract.d.ts +8 -0
- package/dist/action/ja.open-media-picker.abstract.d.ts.map +1 -0
- package/dist/action/ja.open-media-picker.abstract.js +2 -0
- package/dist/action/ja.open-media-picker.d.ts +18 -0
- package/dist/action/ja.open-media-picker.d.ts.map +1 -0
- package/dist/action/ja.open-media-picker.js +46 -0
- package/dist/action/ja.open-scanner.d.ts +14 -0
- package/dist/action/ja.open-scanner.d.ts.map +1 -0
- package/dist/action/ja.open-scanner.js +23 -0
- package/dist/action/ja.open-url.d.ts +10 -0
- package/dist/action/ja.open-url.d.ts.map +1 -0
- package/dist/action/ja.open-url.js +13 -0
- package/dist/action/ja.print.d.ts +10 -0
- package/dist/action/ja.print.d.ts.map +1 -0
- package/dist/action/ja.print.js +17 -0
- package/dist/action/ja.reset-application-state.d.ts +9 -0
- package/dist/action/ja.reset-application-state.d.ts.map +1 -0
- package/dist/action/ja.reset-application-state.js +12 -0
- package/dist/action/ja.reset-component-state.d.ts +9 -0
- package/dist/action/ja.reset-component-state.d.ts.map +1 -0
- package/dist/action/ja.reset-component-state.js +13 -0
- package/dist/action/ja.reset-screen-state.d.ts +9 -0
- package/dist/action/ja.reset-screen-state.d.ts.map +1 -0
- package/dist/action/ja.reset-screen-state.js +12 -0
- package/dist/action/ja.reset-state.d.ts +9 -0
- package/dist/action/ja.reset-state.d.ts.map +1 -0
- package/dist/action/ja.reset-state.js +13 -0
- package/dist/action/ja.retry-queue-command.d.ts +9 -0
- package/dist/action/ja.retry-queue-command.d.ts.map +1 -0
- package/dist/action/ja.retry-queue-command.js +9 -0
- package/dist/action/ja.sdk.d.ts +4 -0
- package/dist/action/ja.sdk.d.ts.map +1 -0
- package/dist/action/ja.sdk.js +2 -0
- package/dist/action/ja.set-active-tab.d.ts +13 -0
- package/dist/action/ja.set-active-tab.d.ts.map +1 -0
- package/dist/action/ja.set-active-tab.js +29 -0
- package/dist/action/ja.set-application-state.d.ts +9 -0
- package/dist/action/ja.set-application-state.d.ts.map +1 -0
- package/dist/action/ja.set-application-state.js +17 -0
- package/dist/action/ja.set-screen-state.d.ts +9 -0
- package/dist/action/ja.set-screen-state.d.ts.map +1 -0
- package/dist/action/ja.set-screen-state.js +12 -0
- package/dist/action/ja.share.d.ts +12 -0
- package/dist/action/ja.share.d.ts.map +1 -0
- package/dist/action/ja.share.js +23 -0
- package/dist/action/ja.show-alert.d.ts +33 -0
- package/dist/action/ja.show-alert.d.ts.map +1 -0
- package/dist/action/ja.show-alert.js +61 -0
- package/dist/action/ja.start-location-sharing.abstract.d.ts +6 -0
- package/dist/action/ja.start-location-sharing.abstract.d.ts.map +1 -0
- package/dist/action/ja.start-location-sharing.abstract.js +2 -0
- package/dist/action/ja.start-location-sharing.d.ts +18 -0
- package/dist/action/ja.start-location-sharing.d.ts.map +1 -0
- package/dist/action/ja.start-location-sharing.js +33 -0
- package/dist/action/ja.start-sync-scope.d.ts +9 -0
- package/dist/action/ja.start-sync-scope.d.ts.map +1 -0
- package/dist/action/ja.start-sync-scope.js +18 -0
- package/dist/action/ja.stop-location-sharing.d.ts +6 -0
- package/dist/action/ja.stop-location-sharing.d.ts.map +1 -0
- package/dist/action/ja.stop-location-sharing.js +8 -0
- package/dist/action/ja.submit-form.abstract.d.ts +11 -0
- package/dist/action/ja.submit-form.abstract.d.ts.map +1 -0
- package/dist/action/ja.submit-form.abstract.js +2 -0
- package/dist/action/ja.submit-form.d.ts +31 -0
- package/dist/action/ja.submit-form.d.ts.map +1 -0
- package/dist/action/ja.submit-form.js +124 -0
- package/dist/action/ja.swipeable-action.d.ts +19 -0
- package/dist/action/ja.swipeable-action.d.ts.map +1 -0
- package/dist/action/ja.swipeable-action.js +25 -0
- package/dist/action/ja.sync-entities.abstract.d.ts +25 -0
- package/dist/action/ja.sync-entities.abstract.d.ts.map +1 -0
- package/dist/action/ja.sync-entities.abstract.js +2 -0
- package/dist/action/ja.sync-entities.d.ts +32 -0
- package/dist/action/ja.sync-entities.d.ts.map +1 -0
- package/dist/action/ja.sync-entities.js +142 -0
- package/dist/action/ja.update-profile.d.ts +12 -0
- package/dist/action/ja.update-profile.d.ts.map +1 -0
- package/dist/action/ja.update-profile.js +20 -0
- package/dist/application/application.sdk.d.ts +84 -0
- package/dist/application/application.sdk.d.ts.map +1 -0
- package/dist/application/application.sdk.js +217 -0
- package/dist/application/application.tab.d.ts +20 -0
- package/dist/application/application.tab.d.ts.map +1 -0
- package/dist/application/application.tab.js +45 -0
- package/dist/application/context.sdk.d.ts +48 -0
- package/dist/application/context.sdk.d.ts.map +1 -0
- package/dist/application/context.sdk.js +116 -0
- package/dist/application/index.d.ts +4 -0
- package/dist/application/index.d.ts.map +1 -0
- package/dist/application/index.js +4 -0
- package/dist/assets/example-extraction-cache.json +9 -0
- package/dist/assets/extracted-core-sdk-examples.yaml +44440 -0
- package/dist/assets/extracted-core-sdk-types.yaml +12100 -0
- package/dist/assets/stream-line-icons.csv +19281 -0
- package/dist/assets/type-extraction-cache.json +9 -0
- package/dist/builder/application-analyzer/application-analyzer.d.ts +42 -0
- package/dist/builder/application-analyzer/application-analyzer.d.ts.map +1 -0
- package/dist/builder/application-analyzer/application-analyzer.js +150 -0
- package/dist/builder/application-analyzer/create-application-analyzer.d.ts +17 -0
- package/dist/builder/application-analyzer/create-application-analyzer.d.ts.map +1 -0
- package/dist/builder/application-analyzer/create-application-analyzer.js +121 -0
- package/dist/builder/application-analyzer/index.d.ts +5 -0
- package/dist/builder/application-analyzer/index.d.ts.map +1 -0
- package/dist/builder/application-analyzer/index.js +5 -0
- package/dist/builder/application-analyzer/select-component-nodes.d.ts +7 -0
- package/dist/builder/application-analyzer/select-component-nodes.d.ts.map +1 -0
- package/dist/builder/application-analyzer/select-component-nodes.js +15 -0
- package/dist/builder/application-analyzer/select-datasource-node-by-id.d.ts +8 -0
- package/dist/builder/application-analyzer/select-datasource-node-by-id.d.ts.map +1 -0
- package/dist/builder/application-analyzer/select-datasource-node-by-id.js +20 -0
- package/dist/builder/application-analyzer/types.d.ts +60 -0
- package/dist/builder/application-analyzer/types.d.ts.map +1 -0
- package/dist/builder/application-analyzer/types.js +16 -0
- package/dist/builder/application-analyzer/utils.d.ts +3 -0
- package/dist/builder/application-analyzer/utils.d.ts.map +1 -0
- package/dist/builder/application-analyzer/utils.js +8 -0
- package/dist/builder/builder.d.ts +8 -0
- package/dist/builder/builder.d.ts.map +1 -0
- package/dist/builder/builder.js +54 -0
- package/dist/builder/index.d.ts +5 -0
- package/dist/builder/index.d.ts.map +1 -0
- package/dist/builder/index.js +4 -0
- package/dist/builder/transform-summary.d.ts +3 -0
- package/dist/builder/transform-summary.d.ts.map +1 -0
- package/dist/builder/transform-summary.js +39 -0
- package/dist/builder/types.d.ts +8 -0
- package/dist/builder/types.d.ts.map +1 -0
- package/dist/builder/types.js +2 -0
- package/dist/builder/validate-datasource-ids.d.ts +17 -0
- package/dist/builder/validate-datasource-ids.d.ts.map +1 -0
- package/dist/builder/validate-datasource-ids.js +51 -0
- package/dist/component/common/index.d.ts +22 -0
- package/dist/component/common/index.d.ts.map +1 -0
- package/dist/component/common/index.js +16 -0
- package/dist/component/common/jc.avatar-field.types.d.ts +9 -0
- package/dist/component/common/jc.avatar-field.types.d.ts.map +1 -0
- package/dist/component/common/jc.avatar-field.types.js +11 -0
- package/dist/component/common/jc.chart.common.abstract.d.ts +85 -0
- package/dist/component/common/jc.chart.common.abstract.d.ts.map +1 -0
- package/dist/component/common/jc.chart.common.abstract.js +2 -0
- package/dist/component/common/jc.chart.common.builders.d.ts +37 -0
- package/dist/component/common/jc.chart.common.builders.d.ts.map +1 -0
- package/dist/component/common/jc.chart.common.builders.js +81 -0
- package/dist/component/common/jc.component.types.d.ts +101 -0
- package/dist/component/common/jc.component.types.d.ts.map +1 -0
- package/dist/component/common/jc.component.types.js +144 -0
- package/dist/component/common/jc.context.d.ts +7 -0
- package/dist/component/common/jc.context.d.ts.map +1 -0
- package/dist/component/common/jc.context.js +2 -0
- package/dist/component/common/jc.element.types.d.ts +14 -0
- package/dist/component/common/jc.element.types.d.ts.map +1 -0
- package/dist/component/common/jc.element.types.js +13 -0
- package/dist/component/common/jc.field-base.builder.d.ts +21 -0
- package/dist/component/common/jc.field-base.builder.d.ts.map +1 -0
- package/dist/component/common/jc.field-base.builder.js +101 -0
- package/dist/component/common/jc.field-base.types.d.ts +28 -0
- package/dist/component/common/jc.field-base.types.d.ts.map +1 -0
- package/dist/component/common/jc.field-base.types.js +2 -0
- package/dist/component/common/jc.left-right.element.avatar.d.ts +11 -0
- package/dist/component/common/jc.left-right.element.avatar.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.avatar.js +18 -0
- package/dist/component/common/jc.left-right.element.badge.d.ts +11 -0
- package/dist/component/common/jc.left-right.element.badge.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.badge.js +17 -0
- package/dist/component/common/jc.left-right.element.button.d.ts +11 -0
- package/dist/component/common/jc.left-right.element.button.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.button.js +14 -0
- package/dist/component/common/jc.left-right.element.checkbox.d.ts +13 -0
- package/dist/component/common/jc.left-right.element.checkbox.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.checkbox.js +21 -0
- package/dist/component/common/jc.left-right.element.d.ts +31 -0
- package/dist/component/common/jc.left-right.element.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.icon.d.ts +18 -0
- package/dist/component/common/jc.left-right.element.icon.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.icon.js +32 -0
- package/dist/component/common/jc.left-right.element.image.d.ts +16 -0
- package/dist/component/common/jc.left-right.element.image.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.image.js +29 -0
- package/dist/component/common/jc.left-right.element.js +2 -0
- package/dist/component/common/jc.left-right.element.progress.d.ts +11 -0
- package/dist/component/common/jc.left-right.element.progress.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.progress.js +17 -0
- package/dist/component/common/jc.left-right.element.switch.d.ts +13 -0
- package/dist/component/common/jc.left-right.element.switch.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.switch.js +21 -0
- package/dist/component/common/jc.left-right.element.value.d.ts +10 -0
- package/dist/component/common/jc.left-right.element.value.d.ts.map +1 -0
- package/dist/component/common/jc.left-right.element.value.js +12 -0
- package/dist/component/common/jc.picker-field-options.types.d.ts +13 -0
- package/dist/component/common/jc.picker-field-options.types.d.ts.map +1 -0
- package/dist/component/common/jc.picker-field-options.types.js +2 -0
- package/dist/component/common/jc.text.types.d.ts +6 -0
- package/dist/component/common/jc.text.types.d.ts.map +1 -0
- package/dist/component/common/jc.text.types.js +2 -0
- package/dist/component/common/jc.validation.d.ts +9 -0
- package/dist/component/common/jc.validation.d.ts.map +1 -0
- package/dist/component/common/jc.validation.js +48 -0
- package/dist/component/index.d.ts +86 -0
- package/dist/component/index.d.ts.map +1 -0
- package/dist/component/index.js +83 -0
- package/dist/component/jc.abstract.d.ts +32 -0
- package/dist/component/jc.abstract.d.ts.map +1 -0
- package/dist/component/jc.abstract.factory.d.ts +488 -0
- package/dist/component/jc.abstract.factory.d.ts.map +1 -0
- package/dist/component/jc.abstract.factory.js +757 -0
- package/dist/component/jc.abstract.js +53 -0
- package/dist/component/jc.abstract.utils.d.ts +3 -0
- package/dist/component/jc.abstract.utils.d.ts.map +1 -0
- package/dist/component/jc.abstract.utils.js +26 -0
- package/dist/component/jc.amount-control.d.ts +16 -0
- package/dist/component/jc.amount-control.d.ts.map +1 -0
- package/dist/component/jc.amount-control.js +36 -0
- package/dist/component/jc.avatar-field.d.ts +11 -0
- package/dist/component/jc.avatar-field.d.ts.map +1 -0
- package/dist/component/jc.avatar-field.js +27 -0
- package/dist/component/jc.avatar.d.ts +14 -0
- package/dist/component/jc.avatar.d.ts.map +1 -0
- package/dist/component/jc.avatar.js +26 -0
- package/dist/component/jc.banner.d.ts +81 -0
- package/dist/component/jc.banner.d.ts.map +1 -0
- package/dist/component/jc.banner.js +49 -0
- package/dist/component/jc.bar-chart.d.ts +23 -0
- package/dist/component/jc.bar-chart.d.ts.map +1 -0
- package/dist/component/jc.bar-chart.js +45 -0
- package/dist/component/jc.button.d.ts +20 -0
- package/dist/component/jc.button.d.ts.map +1 -0
- package/dist/component/jc.button.js +39 -0
- package/dist/component/jc.card.abstract.d.ts +14 -0
- package/dist/component/jc.card.abstract.d.ts.map +1 -0
- package/dist/component/jc.card.abstract.js +31 -0
- package/dist/component/jc.card.on-default.d.ts +91 -0
- package/dist/component/jc.card.on-default.d.ts.map +1 -0
- package/dist/component/jc.card.on-default.js +96 -0
- package/dist/component/jc.carousel.d.ts +31 -0
- package/dist/component/jc.carousel.d.ts.map +1 -0
- package/dist/component/jc.carousel.js +58 -0
- package/dist/component/jc.chat-message.d.ts +17 -0
- package/dist/component/jc.chat-message.d.ts.map +1 -0
- package/dist/component/jc.chat-message.js +32 -0
- package/dist/component/jc.chat.d.ts +23 -0
- package/dist/component/jc.chat.d.ts.map +1 -0
- package/dist/component/jc.chat.js +68 -0
- package/dist/component/jc.checkbox.d.ts +15 -0
- package/dist/component/jc.checkbox.d.ts.map +1 -0
- package/dist/component/jc.checkbox.js +38 -0
- package/dist/component/jc.choice-field-item.d.ts +15 -0
- package/dist/component/jc.choice-field-item.d.ts.map +1 -0
- package/dist/component/jc.choice-field-item.js +41 -0
- package/dist/component/jc.choice-field.d.ts +21 -0
- package/dist/component/jc.choice-field.d.ts.map +1 -0
- package/dist/component/jc.choice-field.js +34 -0
- package/dist/component/jc.count-down.d.ts +18 -0
- package/dist/component/jc.count-down.d.ts.map +1 -0
- package/dist/component/jc.count-down.js +55 -0
- package/dist/component/jc.count-up.d.ts +15 -0
- package/dist/component/jc.count-up.d.ts.map +1 -0
- package/dist/component/jc.count-up.js +42 -0
- package/dist/component/jc.custom-component.interop.d.ts +58 -0
- package/dist/component/jc.custom-component.interop.d.ts.map +1 -0
- package/dist/component/jc.custom-component.interop.js +115 -0
- package/dist/component/jc.date-picker.d.ts +15 -0
- package/dist/component/jc.date-picker.d.ts.map +1 -0
- package/dist/component/jc.date-picker.js +31 -0
- package/dist/component/jc.divider.d.ts +7 -0
- package/dist/component/jc.divider.d.ts.map +1 -0
- package/dist/component/jc.divider.js +8 -0
- package/dist/component/jc.dropdown.d.ts +20 -0
- package/dist/component/jc.dropdown.d.ts.map +1 -0
- package/dist/component/jc.dropdown.item.d.ts +22 -0
- package/dist/component/jc.dropdown.item.d.ts.map +1 -0
- package/dist/component/jc.dropdown.item.js +85 -0
- package/dist/component/jc.dropdown.js +33 -0
- package/dist/component/jc.duration-picker.d.ts +18 -0
- package/dist/component/jc.duration-picker.d.ts.map +1 -0
- package/dist/component/jc.duration-picker.js +35 -0
- package/dist/component/jc.email-field.d.ts +11 -0
- package/dist/component/jc.email-field.d.ts.map +1 -0
- package/dist/component/jc.email-field.js +19 -0
- package/dist/component/jc.entity-field.d.ts +23 -0
- package/dist/component/jc.entity-field.d.ts.map +1 -0
- package/dist/component/jc.entity-field.js +71 -0
- package/dist/component/jc.entity.d.ts +15 -0
- package/dist/component/jc.entity.d.ts.map +1 -0
- package/dist/component/jc.entity.js +27 -0
- package/dist/component/jc.event.d.ts +22 -0
- package/dist/component/jc.event.d.ts.map +1 -0
- package/dist/component/jc.event.js +68 -0
- package/dist/component/jc.expander.d.ts +49 -0
- package/dist/component/jc.expander.d.ts.map +1 -0
- package/dist/component/jc.expander.header.d.ts +25 -0
- package/dist/component/jc.expander.header.d.ts.map +1 -0
- package/dist/component/jc.expander.header.js +39 -0
- package/dist/component/jc.expander.js +53 -0
- package/dist/component/jc.field-row.d.ts +34 -0
- package/dist/component/jc.field-row.d.ts.map +1 -0
- package/dist/component/jc.field-row.entity.d.ts +12 -0
- package/dist/component/jc.field-row.entity.d.ts.map +1 -0
- package/dist/component/jc.field-row.entity.js +35 -0
- package/dist/component/jc.field-row.js +37 -0
- package/dist/component/jc.form.d.ts +98 -0
- package/dist/component/jc.form.d.ts.map +1 -0
- package/dist/component/jc.form.js +127 -0
- package/dist/component/jc.gallery-item.d.ts +12 -0
- package/dist/component/jc.gallery-item.d.ts.map +1 -0
- package/dist/component/jc.gallery-item.js +24 -0
- package/dist/component/jc.grid-item.d.ts +15 -0
- package/dist/component/jc.grid-item.d.ts.map +1 -0
- package/dist/component/jc.grid-item.js +31 -0
- package/dist/component/jc.grid.d.ts +16 -0
- package/dist/component/jc.grid.d.ts.map +1 -0
- package/dist/component/jc.grid.js +64 -0
- package/dist/component/jc.guards.d.ts +17 -0
- package/dist/component/jc.guards.d.ts.map +1 -0
- package/dist/component/jc.guards.js +14 -0
- package/dist/component/jc.icon.d.ts +19 -0
- package/dist/component/jc.icon.d.ts.map +1 -0
- package/dist/component/jc.icon.js +41 -0
- package/dist/component/jc.image.abstract.d.ts +28 -0
- package/dist/component/jc.image.abstract.d.ts.map +1 -0
- package/dist/component/jc.image.abstract.js +52 -0
- package/dist/component/jc.image.d.ts +5 -0
- package/dist/component/jc.image.d.ts.map +1 -0
- package/dist/component/jc.image.js +2 -0
- package/dist/component/jc.image.on-carousel.d.ts +23 -0
- package/dist/component/jc.image.on-carousel.d.ts.map +1 -0
- package/dist/component/jc.image.on-carousel.js +19 -0
- package/dist/component/jc.image.on-default.d.ts +25 -0
- package/dist/component/jc.image.on-default.d.ts.map +1 -0
- package/dist/component/jc.image.on-default.js +22 -0
- package/dist/component/jc.interactive-image.d.ts +41 -0
- package/dist/component/jc.interactive-image.d.ts.map +1 -0
- package/dist/component/jc.interactive-image.item.d.ts +24 -0
- package/dist/component/jc.interactive-image.item.d.ts.map +1 -0
- package/dist/component/jc.interactive-image.item.js +78 -0
- package/dist/component/jc.interactive-image.js +78 -0
- package/dist/component/jc.jig-header.d.ts +19 -0
- package/dist/component/jc.jig-header.d.ts.map +1 -0
- package/dist/component/jc.jig-header.js +42 -0
- package/dist/component/jc.jig-widget.d.ts +15 -0
- package/dist/component/jc.jig-widget.d.ts.map +1 -0
- package/dist/component/jc.jig-widget.js +41 -0
- package/dist/component/jc.jig.d.ts +11 -0
- package/dist/component/jc.jig.d.ts.map +1 -0
- package/dist/component/jc.jig.js +24 -0
- package/dist/component/jc.line-chart.d.ts +28 -0
- package/dist/component/jc.line-chart.d.ts.map +1 -0
- package/dist/component/jc.line-chart.js +45 -0
- package/dist/component/jc.list-item.d.ts +106 -0
- package/dist/component/jc.list-item.d.ts.map +1 -0
- package/dist/component/jc.list-item.js +274 -0
- package/dist/component/jc.list-item.standalone.d.ts +13 -0
- package/dist/component/jc.list-item.standalone.d.ts.map +1 -0
- package/dist/component/jc.list-item.standalone.js +10 -0
- package/dist/component/jc.list.abstract.d.ts +36 -0
- package/dist/component/jc.list.abstract.d.ts.map +1 -0
- package/dist/component/jc.list.abstract.js +2 -0
- package/dist/component/jc.list.d.ts +39 -0
- package/dist/component/jc.list.d.ts.map +1 -0
- package/dist/component/jc.list.js +95 -0
- package/dist/component/jc.location.d.ts +41 -0
- package/dist/component/jc.location.d.ts.map +1 -0
- package/dist/component/jc.location.js +63 -0
- package/dist/component/jc.marker-item.d.ts +29 -0
- package/dist/component/jc.marker-item.d.ts.map +1 -0
- package/dist/component/jc.marker-item.js +48 -0
- package/dist/component/jc.media-field.d.ts +13 -0
- package/dist/component/jc.media-field.d.ts.map +1 -0
- package/dist/component/jc.media-field.js +37 -0
- package/dist/component/jc.menu-item.d.ts +89 -0
- package/dist/component/jc.menu-item.d.ts.map +1 -0
- package/dist/component/jc.menu-item.js +65 -0
- package/dist/component/jc.number-field.d.ts +21 -0
- package/dist/component/jc.number-field.d.ts.map +1 -0
- package/dist/component/jc.number-field.js +33 -0
- package/dist/component/jc.pie-chart.d.ts +26 -0
- package/dist/component/jc.pie-chart.d.ts.map +1 -0
- package/dist/component/jc.pie-chart.js +45 -0
- package/dist/component/jc.product-item.amount.d.ts +17 -0
- package/dist/component/jc.product-item.amount.d.ts.map +1 -0
- package/dist/component/jc.product-item.amount.js +31 -0
- package/dist/component/jc.product-item.d.ts +30 -0
- package/dist/component/jc.product-item.d.ts.map +1 -0
- package/dist/component/jc.product-item.js +68 -0
- package/dist/component/jc.progress-bar.d.ts +45 -0
- package/dist/component/jc.progress-bar.d.ts.map +1 -0
- package/dist/component/jc.progress-bar.js +58 -0
- package/dist/component/jc.rating.d.ts +17 -0
- package/dist/component/jc.rating.d.ts.map +1 -0
- package/dist/component/jc.rating.js +38 -0
- package/dist/component/jc.section.abstract.d.ts +87 -0
- package/dist/component/jc.section.abstract.d.ts.map +1 -0
- package/dist/component/jc.section.abstract.js +33 -0
- package/dist/component/jc.section.on-default.d.ts +85 -0
- package/dist/component/jc.section.on-default.d.ts.map +1 -0
- package/dist/component/jc.section.on-default.js +85 -0
- package/dist/component/jc.section.on-entity.d.ts +11 -0
- package/dist/component/jc.section.on-entity.d.ts.map +1 -0
- package/dist/component/jc.section.on-entity.js +11 -0
- package/dist/component/jc.segmented-control.d.ts +23 -0
- package/dist/component/jc.segmented-control.d.ts.map +1 -0
- package/dist/component/jc.segmented-control.js +66 -0
- package/dist/component/jc.signature-field.d.ts +11 -0
- package/dist/component/jc.signature-field.d.ts.map +1 -0
- package/dist/component/jc.signature-field.js +18 -0
- package/dist/component/jc.slider.d.ts +36 -0
- package/dist/component/jc.slider.d.ts.map +1 -0
- package/dist/component/jc.slider.js +53 -0
- package/dist/component/jc.stage.d.ts +23 -0
- package/dist/component/jc.stage.d.ts.map +1 -0
- package/dist/component/jc.stage.js +31 -0
- package/dist/component/jc.step.d.ts +30 -0
- package/dist/component/jc.step.d.ts.map +1 -0
- package/dist/component/jc.step.js +35 -0
- package/dist/component/jc.stepper.d.ts +34 -0
- package/dist/component/jc.stepper.d.ts.map +1 -0
- package/dist/component/jc.stepper.js +59 -0
- package/dist/component/jc.story-group.d.ts +18 -0
- package/dist/component/jc.story-group.d.ts.map +1 -0
- package/dist/component/jc.story-group.js +27 -0
- package/dist/component/jc.summary.abstract.d.ts +15 -0
- package/dist/component/jc.summary.abstract.d.ts.map +1 -0
- package/dist/component/jc.summary.abstract.js +29 -0
- package/dist/component/jc.summary.card.d.ts +14 -0
- package/dist/component/jc.summary.card.d.ts.map +1 -0
- package/dist/component/jc.summary.card.js +36 -0
- package/dist/component/jc.summary.counter.d.ts +12 -0
- package/dist/component/jc.summary.counter.d.ts.map +1 -0
- package/dist/component/jc.summary.counter.js +28 -0
- package/dist/component/jc.summary.default.d.ts +16 -0
- package/dist/component/jc.summary.default.d.ts.map +1 -0
- package/dist/component/jc.summary.default.js +34 -0
- package/dist/component/jc.summary.progress.d.ts +46 -0
- package/dist/component/jc.summary.progress.d.ts.map +1 -0
- package/dist/component/jc.summary.progress.js +35 -0
- package/dist/component/jc.tab-button.d.ts +18 -0
- package/dist/component/jc.tab-button.d.ts.map +1 -0
- package/dist/component/jc.tab-button.js +43 -0
- package/dist/component/jc.text-field.d.ts +20 -0
- package/dist/component/jc.text-field.d.ts.map +1 -0
- package/dist/component/jc.text-field.js +49 -0
- package/dist/component/jc.text.d.ts +24 -0
- package/dist/component/jc.text.d.ts.map +1 -0
- package/dist/component/jc.text.js +44 -0
- package/dist/component/jc.titles.d.ts +19 -0
- package/dist/component/jc.titles.d.ts.map +1 -0
- package/dist/component/jc.titles.js +34 -0
- package/dist/component/jc.trend.d.ts +18 -0
- package/dist/component/jc.trend.d.ts.map +1 -0
- package/dist/component/jc.trend.js +31 -0
- package/dist/component/jc.types.d.ts +75 -0
- package/dist/component/jc.types.d.ts.map +1 -0
- package/dist/component/jc.types.js +74 -0
- package/dist/component/jc.video-player.abstract.d.ts +28 -0
- package/dist/component/jc.video-player.abstract.d.ts.map +1 -0
- package/dist/component/jc.video-player.abstract.js +38 -0
- package/dist/component/jc.video-player.d.ts +4 -0
- package/dist/component/jc.video-player.d.ts.map +1 -0
- package/dist/component/jc.video-player.js +2 -0
- package/dist/component/jc.video-player.on-jig.d.ts +25 -0
- package/dist/component/jc.video-player.on-jig.d.ts.map +1 -0
- package/dist/component/jc.video-player.on-jig.js +31 -0
- package/dist/component/jc.view.d.ts +158 -0
- package/dist/component/jc.view.d.ts.map +1 -0
- package/dist/component/jc.view.js +85 -0
- package/dist/component/jc.web-view.abstract.d.ts +15 -0
- package/dist/component/jc.web-view.abstract.d.ts.map +1 -0
- package/dist/component/jc.web-view.abstract.js +33 -0
- package/dist/component/jc.web-view.on-default.d.ts +5 -0
- package/dist/component/jc.web-view.on-default.d.ts.map +1 -0
- package/dist/component/jc.web-view.on-default.js +4 -0
- package/dist/component/jc.web-view.on-full.d.ts +10 -0
- package/dist/component/jc.web-view.on-full.d.ts.map +1 -0
- package/dist/component/jc.web-view.on-full.js +14 -0
- package/dist/database/database.abstract.d.ts +39 -0
- package/dist/database/database.abstract.d.ts.map +1 -0
- package/dist/database/database.abstract.js +42 -0
- package/dist/database/index.d.ts +2 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +2 -0
- package/dist/datasource/datasource.abstract.d.ts +39 -0
- package/dist/datasource/datasource.abstract.d.ts.map +1 -0
- package/dist/datasource/datasource.abstract.js +47 -0
- package/dist/datasource/datasource.descriptor.d.ts +11 -0
- package/dist/datasource/datasource.descriptor.d.ts.map +1 -0
- package/dist/datasource/datasource.descriptor.js +2 -0
- package/dist/datasource/datasource.reference.d.ts +33 -0
- package/dist/datasource/datasource.reference.d.ts.map +1 -0
- package/dist/datasource/datasource.reference.js +66 -0
- package/dist/datasource/datasource.sdk.d.ts +7 -0
- package/dist/datasource/datasource.sdk.d.ts.map +1 -0
- package/dist/datasource/datasource.sdk.js +5 -0
- package/dist/datasource/datasource.sqlite.d.ts +88 -0
- package/dist/datasource/datasource.sqlite.d.ts.map +1 -0
- package/dist/datasource/datasource.sqlite.js +286 -0
- package/dist/datasource/datasource.static.d.ts +21 -0
- package/dist/datasource/datasource.static.d.ts.map +1 -0
- package/dist/datasource/datasource.static.js +30 -0
- package/dist/datasource/datasource.system.d.ts +18 -0
- package/dist/datasource/datasource.system.d.ts.map +1 -0
- package/dist/datasource/datasource.system.js +10 -0
- package/dist/datasource/entity.descriptor.d.ts +9 -0
- package/dist/datasource/entity.descriptor.d.ts.map +1 -0
- package/dist/datasource/entity.descriptor.js +2 -0
- package/dist/datasource/index.d.ts +11 -0
- package/dist/datasource/index.d.ts.map +1 -0
- package/dist/datasource/index.js +9 -0
- package/dist/datasource/sqlite-normalizer.d.ts +3 -0
- package/dist/datasource/sqlite-normalizer.d.ts.map +1 -0
- package/dist/datasource/sqlite-normalizer.js +194 -0
- package/dist/datasource/sqlite-validator.d.ts +28 -0
- package/dist/datasource/sqlite-validator.d.ts.map +1 -0
- package/dist/datasource/sqlite-validator.js +218 -0
- package/dist/function/function.abstract.d.ts +538 -0
- package/dist/function/function.abstract.d.ts.map +1 -0
- package/dist/function/function.abstract.js +271 -0
- package/dist/function/function.guard.d.ts +17 -0
- package/dist/function/function.guard.d.ts.map +1 -0
- package/dist/function/function.guard.js +62 -0
- package/dist/function/function.operation.d.ts +26 -0
- package/dist/function/function.operation.d.ts.map +1 -0
- package/dist/function/function.operation.js +118 -0
- package/dist/function/function.rest.continuation.d.ts +12 -0
- package/dist/function/function.rest.continuation.d.ts.map +1 -0
- package/dist/function/function.rest.continuation.js +24 -0
- package/dist/function/function.rest.d.ts +31 -0
- package/dist/function/function.rest.d.ts.map +1 -0
- package/dist/function/function.rest.error-builder.d.ts +38 -0
- package/dist/function/function.rest.error-builder.d.ts.map +1 -0
- package/dist/function/function.rest.error-builder.js +161 -0
- package/dist/function/function.rest.js +72 -0
- package/dist/function/function.rest.parameter-builder.d.ts +33 -0
- package/dist/function/function.rest.parameter-builder.d.ts.map +1 -0
- package/dist/function/function.rest.parameter-builder.js +81 -0
- package/dist/function/function.rest.types.d.ts +28 -0
- package/dist/function/function.rest.types.d.ts.map +1 -0
- package/dist/function/function.rest.types.js +2 -0
- package/dist/function/function.sdk.d.ts +10 -0
- package/dist/function/function.sdk.d.ts.map +1 -0
- package/dist/function/function.sdk.js +12 -0
- package/dist/function/function.soap.d.ts +19 -0
- package/dist/function/function.soap.d.ts.map +1 -0
- package/dist/function/function.soap.js +36 -0
- package/dist/function/function.soap.parameter-builder.d.ts +25 -0
- package/dist/function/function.soap.parameter-builder.d.ts.map +1 -0
- package/dist/function/function.soap.parameter-builder.js +41 -0
- package/dist/function/function.soap.types.d.ts +17 -0
- package/dist/function/function.soap.types.d.ts.map +1 -0
- package/dist/function/function.soap.types.js +2 -0
- package/dist/function/function.sql.d.ts +20 -0
- package/dist/function/function.sql.d.ts.map +1 -0
- package/dist/function/function.sql.js +53 -0
- package/dist/function/function.sql.parameter-builder.d.ts +24 -0
- package/dist/function/function.sql.parameter-builder.d.ts.map +1 -0
- package/dist/function/function.sql.parameter-builder.js +44 -0
- package/dist/function/function.sql.types.d.ts +20 -0
- package/dist/function/function.sql.types.d.ts.map +1 -0
- package/dist/function/function.sql.types.js +2 -0
- package/dist/function/function.types.d.ts +7 -0
- package/dist/function/function.types.d.ts.map +1 -0
- package/dist/function/function.types.js +2 -0
- package/dist/function/index.d.ts +17 -0
- package/dist/function/index.d.ts.map +1 -0
- package/dist/function/index.js +13 -0
- package/dist/icon/index.d.ts +3 -0
- package/dist/icon/index.d.ts.map +1 -0
- package/dist/icon/index.js +3 -0
- package/dist/icon/sdk.icon.d.ts +10 -0
- package/dist/icon/sdk.icon.d.ts.map +1 -0
- package/dist/icon/sdk.icon.data.d.ts +7 -0
- package/dist/icon/sdk.icon.data.d.ts.map +1 -0
- package/dist/icon/sdk.icon.data.js +19283 -0
- package/dist/icon/sdk.icon.js +27 -0
- package/dist/icon/sdk.icon.loader.d.ts +7 -0
- package/dist/icon/sdk.icon.loader.d.ts.map +1 -0
- package/dist/icon/sdk.icon.loader.js +15 -0
- package/dist/icon/sdk.icon.name.d.ts +7 -0
- package/dist/icon/sdk.icon.name.d.ts.map +1 -0
- package/dist/icon/sdk.icon.name.js +19305 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/jsonata/ast.d.ts +15 -0
- package/dist/jsonata/ast.d.ts.map +1 -0
- package/dist/jsonata/ast.js +118 -0
- package/dist/jsonata/base.d.ts +7 -0
- package/dist/jsonata/base.d.ts.map +1 -0
- package/dist/jsonata/base.js +43 -0
- package/dist/jsonata/builder.d.ts +28 -0
- package/dist/jsonata/builder.d.ts.map +1 -0
- package/dist/jsonata/builder.js +140 -0
- package/dist/jsonata/context.d.ts +10 -0
- package/dist/jsonata/context.d.ts.map +1 -0
- package/dist/jsonata/context.js +349 -0
- package/dist/jsonata/expression.d.ts +35 -0
- package/dist/jsonata/expression.d.ts.map +1 -0
- package/dist/jsonata/expression.js +498 -0
- package/dist/jsonata/index.d.ts +6 -0
- package/dist/jsonata/index.d.ts.map +1 -0
- package/dist/jsonata/index.js +6 -0
- package/dist/logger/index.d.ts +2 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +2 -0
- package/dist/logger/logger.d.ts +14 -0
- package/dist/logger/logger.d.ts.map +1 -0
- package/dist/logger/logger.js +40 -0
- package/dist/runtime/auth.d.ts +19 -0
- package/dist/runtime/auth.d.ts.map +1 -0
- package/dist/runtime/auth.js +11 -0
- package/dist/runtime/index.d.ts +5 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +3 -0
- package/dist/runtime/system.d.ts +27 -0
- package/dist/runtime/system.d.ts.map +1 -0
- package/dist/runtime/system.js +26 -0
- package/dist/screen/common/index.d.ts +9 -0
- package/dist/screen/common/index.d.ts.map +1 -0
- package/dist/screen/common/index.js +7 -0
- package/dist/screen/common/screen.badge.d.ts +8 -0
- package/dist/screen/common/screen.badge.d.ts.map +1 -0
- package/dist/screen/common/screen.badge.js +2 -0
- package/dist/screen/common/screen.bottom-sheet.d.ts +62 -0
- package/dist/screen/common/screen.bottom-sheet.d.ts.map +1 -0
- package/dist/screen/common/screen.bottom-sheet.js +31 -0
- package/dist/screen/common/screen.callback-actions.d.ts +7 -0
- package/dist/screen/common/screen.callback-actions.d.ts.map +1 -0
- package/dist/screen/common/screen.callback-actions.js +19 -0
- package/dist/screen/common/screen.input-definition.d.ts +108 -0
- package/dist/screen/common/screen.input-definition.d.ts.map +1 -0
- package/dist/screen/common/screen.input-definition.js +109 -0
- package/dist/screen/common/screen.placeholder.d.ts +20 -0
- package/dist/screen/common/screen.placeholder.d.ts.map +1 -0
- package/dist/screen/common/screen.placeholder.js +54 -0
- package/dist/screen/common/screen.preview.actions.d.ts +47 -0
- package/dist/screen/common/screen.preview.actions.d.ts.map +1 -0
- package/dist/screen/common/screen.preview.actions.js +122 -0
- package/dist/screen/common/screen.preview.d.ts +40 -0
- package/dist/screen/common/screen.preview.d.ts.map +1 -0
- package/dist/screen/common/screen.preview.js +87 -0
- package/dist/screen/common/screen.state.d.ts +7 -0
- package/dist/screen/common/screen.state.d.ts.map +1 -0
- package/dist/screen/common/screen.state.js +2 -0
- package/dist/screen/common/screen.summary.d.ts +14 -0
- package/dist/screen/common/screen.summary.d.ts.map +1 -0
- package/dist/screen/common/screen.summary.js +22 -0
- package/dist/screen/index.d.ts +16 -0
- package/dist/screen/index.d.ts.map +1 -0
- package/dist/screen/index.js +16 -0
- package/dist/screen/screen.abstract.d.ts +105 -0
- package/dist/screen/screen.abstract.d.ts.map +1 -0
- package/dist/screen/screen.abstract.js +175 -0
- package/dist/screen/screen.calendar.d.ts +22 -0
- package/dist/screen/screen.calendar.d.ts.map +1 -0
- package/dist/screen/screen.calendar.js +32 -0
- package/dist/screen/screen.default.d.ts +65 -0
- package/dist/screen/screen.default.d.ts.map +1 -0
- package/dist/screen/screen.default.js +68 -0
- package/dist/screen/screen.document.d.ts +58 -0
- package/dist/screen/screen.document.d.ts.map +1 -0
- package/dist/screen/screen.document.js +72 -0
- package/dist/screen/screen.full-screen.d.ts +23 -0
- package/dist/screen/screen.full-screen.d.ts.map +1 -0
- package/dist/screen/screen.full-screen.js +18 -0
- package/dist/screen/screen.gallery.d.ts +15 -0
- package/dist/screen/screen.gallery.d.ts.map +1 -0
- package/dist/screen/screen.gallery.js +14 -0
- package/dist/screen/screen.grid.base.d.ts +18 -0
- package/dist/screen/screen.grid.base.d.ts.map +1 -0
- package/dist/screen/screen.grid.base.js +17 -0
- package/dist/screen/screen.grid.dynamic.d.ts +18 -0
- package/dist/screen/screen.grid.dynamic.d.ts.map +1 -0
- package/dist/screen/screen.grid.dynamic.js +26 -0
- package/dist/screen/screen.grid.static.d.ts +14 -0
- package/dist/screen/screen.grid.static.d.ts.map +1 -0
- package/dist/screen/screen.grid.static.js +12 -0
- package/dist/screen/screen.guards.d.ts +41 -0
- package/dist/screen/screen.guards.d.ts.map +1 -0
- package/dist/screen/screen.guards.js +35 -0
- package/dist/screen/screen.list.d.ts +79 -0
- package/dist/screen/screen.list.d.ts.map +1 -0
- package/dist/screen/screen.list.js +123 -0
- package/dist/screen/screen.sdk.d.ts +13 -0
- package/dist/screen/screen.sdk.d.ts.map +1 -0
- package/dist/screen/screen.sdk.js +9 -0
- package/dist/screen/screen.tabs.d.ts +27 -0
- package/dist/screen/screen.tabs.d.ts.map +1 -0
- package/dist/screen/screen.tabs.instance.d.ts +34 -0
- package/dist/screen/screen.tabs.instance.d.ts.map +1 -0
- package/dist/screen/screen.tabs.instance.js +79 -0
- package/dist/screen/screen.tabs.js +35 -0
- package/dist/screen/screen.wizard.d.ts +12 -0
- package/dist/screen/screen.wizard.d.ts.map +1 -0
- package/dist/screen/screen.wizard.instance.d.ts +20 -0
- package/dist/screen/screen.wizard.instance.d.ts.map +1 -0
- package/dist/screen/screen.wizard.instance.js +40 -0
- package/dist/screen/screen.wizard.js +23 -0
- package/dist/utils/check.d.ts +3 -0
- package/dist/utils/check.d.ts.map +1 -0
- package/dist/utils/check.js +7 -0
- package/dist/utils/convert.d.ts +2 -0
- package/dist/utils/convert.d.ts.map +1 -0
- package/dist/utils/convert.js +8 -0
- package/dist/utils/dedent.d.ts +2 -0
- package/dist/utils/dedent.d.ts.map +1 -0
- package/dist/utils/dedent.js +28 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/types.d.ts +2 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +2 -0
- package/dist/utils/utils.d.ts +9 -0
- package/dist/utils/utils.d.ts.map +1 -0
- package/dist/utils/utils.js +49 -0
- package/dist/widget/index.d.ts +12 -0
- package/dist/widget/index.d.ts.map +1 -0
- package/dist/widget/index.js +12 -0
- package/dist/widget/jw.abstract.d.ts +27 -0
- package/dist/widget/jw.abstract.d.ts.map +1 -0
- package/dist/widget/jw.abstract.js +36 -0
- package/dist/widget/jw.actions.d.ts +17 -0
- package/dist/widget/jw.actions.d.ts.map +1 -0
- package/dist/widget/jw.actions.js +30 -0
- package/dist/widget/jw.avatar.d.ts +19 -0
- package/dist/widget/jw.avatar.d.ts.map +1 -0
- package/dist/widget/jw.avatar.js +23 -0
- package/dist/widget/jw.chart.d.ts +18 -0
- package/dist/widget/jw.chart.d.ts.map +1 -0
- package/dist/widget/jw.chart.js +23 -0
- package/dist/widget/jw.group.d.ts +28 -0
- package/dist/widget/jw.group.d.ts.map +1 -0
- package/dist/widget/jw.group.js +35 -0
- package/dist/widget/jw.image.d.ts +27 -0
- package/dist/widget/jw.image.d.ts.map +1 -0
- package/dist/widget/jw.image.js +54 -0
- package/dist/widget/jw.list.d.ts +44 -0
- package/dist/widget/jw.list.d.ts.map +1 -0
- package/dist/widget/jw.list.js +44 -0
- package/dist/widget/jw.location.d.ts +41 -0
- package/dist/widget/jw.location.d.ts.map +1 -0
- package/dist/widget/jw.location.js +54 -0
- package/dist/widget/jw.sdk.d.ts +2 -0
- package/dist/widget/jw.sdk.d.ts.map +1 -0
- package/dist/widget/jw.sdk.js +2 -0
- package/dist/widget/jw.status.condition.d.ts +20 -0
- package/dist/widget/jw.status.condition.d.ts.map +1 -0
- package/dist/widget/jw.status.condition.js +27 -0
- package/dist/widget/jw.status.d.ts +8 -0
- package/dist/widget/jw.status.d.ts.map +1 -0
- package/dist/widget/jw.status.js +11 -0
- package/dist/widget/jw.value.d.ts +24 -0
- package/dist/widget/jw.value.d.ts.map +1 -0
- package/dist/widget/jw.value.js +51 -0
- 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"]}
|