├── .env.dist
├── .eslintignore
├── .eslintrc
├── .gitignore
├── .mocharc.json
├── .npmignore
├── .prettierignore
├── DEVELOPER.README.md
├── LICENSE.txt
├── README.md
├── bower.json
├── copyright.txt
├── extra
└── footer-umd-package.js
├── index.html
├── mocha.opts
├── package-lock.json
├── package.json
├── src
├── _interfaces
│ ├── generated-metadata
│ │ ├── icon-library.json
│ │ ├── readme.md
│ │ ├── sass-metadata.json
│ │ ├── sass-output.json
│ │ ├── sass-schema.json
│ │ └── schema.json
│ └── index.ts
├── ch5-animation
│ ├── ch5-animation.spec.ts
│ ├── ch5-animation.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-animation-attributes.ts
│ │ ├── i-ch5-animation-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-animation.ts
├── ch5-background
│ ├── ch5-background.spec.ts
│ ├── ch5-background.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-background-attributes.ts
│ │ ├── i-ch5-background-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-background.ts
├── ch5-base
│ ├── ch5-base-class.ts
│ └── ch5-base-log.ts
├── ch5-button-list
│ ├── base-classes
│ │ ├── ch5-button-list-base.ts
│ │ ├── ch5-button-list-individual-button-base.ts
│ │ ├── ch5-button-list-label-base.ts
│ │ ├── ch5-button-list-mode-base.ts
│ │ └── ch5-button-list-mode-state-base.ts
│ ├── ch5-button-list-individual-button.ts
│ ├── ch5-button-list-label.ts
│ ├── ch5-button-list-mode-state.ts
│ ├── ch5-button-list-mode.ts
│ ├── ch5-button-list.spec.ts
│ ├── ch5-button-list.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-button-list-attributes.ts
│ │ ├── i-ch5-button-list-documentation.ts
│ │ ├── i-ch5-button-list-individual-button-attributes.ts
│ │ ├── i-ch5-button-list-individual-button-documentation.ts
│ │ ├── i-ch5-button-list-label-documentation.ts
│ │ ├── i-ch5-button-list-mode-attributes.ts
│ │ ├── i-ch5-button-list-mode-documentation.ts
│ │ ├── i-ch5-button-list-mode-state-attributes.ts
│ │ ├── i-ch5-button-list-mode-state-documentation.ts
│ │ ├── index.ts
│ │ ├── t-ch5-button-list.ts
│ │ └── t-for-ch5-button-list-contract.ts
├── ch5-button
│ ├── ch5-button-base.ts
│ ├── ch5-button-label.ts
│ ├── ch5-button-mode-state.ts
│ ├── ch5-button-mode.ts
│ ├── ch5-button-pressinfo.ts
│ ├── ch5-button-signal.ts
│ ├── ch5-button-utils.ts
│ ├── ch5-button.spec.ts
│ ├── ch5-button.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-button-attributes.ts
│ │ ├── i-ch5-button-documentation.ts
│ │ ├── i-ch5-button-label-attributes.ts
│ │ ├── i-ch5-button-mode-attributes.ts
│ │ ├── i-ch5-button-mode-common.ts
│ │ ├── i-ch5-button-mode-state-attributes.ts
│ │ ├── i-ch5-button.ts
│ │ ├── index.ts
│ │ ├── t-ch5-button.ts
│ │ └── t-for-ch5-button-list-contract.ts
├── ch5-color-chip
│ ├── ch5-color-chip.spec.ts
│ ├── ch5-color-chip.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-color-chip-attributes.ts
│ │ ├── i-ch5-color-chip-documentation.ts
│ │ └── index.ts
├── ch5-color-picker
│ ├── ch5-color-picker.spec.ts
│ ├── ch5-color-picker.ts
│ ├── color-picker.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-color-picker-attributes.ts
│ │ ├── i-ch5-color-picker-documentation.ts
│ │ └── index.ts
├── ch5-common-input
│ ├── ch5-common-input.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-common-input-attributes.ts
│ │ ├── i-ch5-common-input-documentation.ts
│ │ ├── i-ch5-common-input.ts
│ │ ├── index.ts
│ │ └── t-ch5-common-input.ts
├── ch5-common
│ ├── ch5-augment-var-signals-names.spec.ts
│ ├── ch5-augment-var-signals-names.ts
│ ├── ch5-common-attributes.ts
│ ├── ch5-common-log.ts
│ ├── ch5-common-signal.ts
│ ├── ch5-common.ts
│ ├── ch5-config.ts
│ ├── ch5-log.ts
│ ├── ch5-mutation-observer.ts
│ ├── ch5-pressable-button.ts
│ ├── ch5-pressable-slider.ts
│ ├── ch5-pressable.ts
│ ├── ch5-signal-attribute-registry.ts
│ ├── interfaces
│ │ ├── common
│ │ │ ├── i-ch5-common-attributes-appendclasswheninviewport.ts
│ │ │ ├── i-ch5-common-attributes-customclass.ts
│ │ │ ├── i-ch5-common-attributes-customstyle.ts
│ │ │ ├── i-ch5-common-attributes-dir.ts
│ │ │ ├── i-ch5-common-attributes-id.ts
│ │ │ ├── i-ch5-common-attributes-noshowtype.ts
│ │ │ ├── i-ch5-common-attributes-receivestatecustomclass.ts
│ │ │ ├── i-ch5-common-attributes-receivestatecustomstyle.ts
│ │ │ ├── i-ch5-common-attributes-receivestateenable.ts
│ │ │ ├── i-ch5-common-attributes-receivestatehidepulse.ts
│ │ │ ├── i-ch5-common-attributes-receivestateshow.ts
│ │ │ ├── i-ch5-common-attributes-receivestateshowpulse.ts
│ │ │ ├── i-ch5-common-attributes-sendeventonshow.ts
│ │ │ ├── i-ch5-common-attributes-show.ts
│ │ │ ├── i-ch5-common-class.ts
│ │ │ ├── i-ch5-common-debug.ts
│ │ │ ├── i-ch5-common-disabled.ts
│ │ │ ├── i-ch5-common-role.ts
│ │ │ └── i-ch5-common-style.ts
│ │ ├── i-ch5-button-list-attributes.ts
│ │ ├── i-ch5-button-list-documentation.ts
│ │ ├── i-ch5-common-animation.ts
│ │ ├── i-ch5-common-attributes-animation.ts
│ │ ├── i-ch5-common-attributes-color-chip.ts
│ │ ├── i-ch5-common-attributes-datetime.ts
│ │ ├── i-ch5-common-attributes-dpad-child.ts
│ │ ├── i-ch5-common-attributes-set3.ts
│ │ ├── i-ch5-common-attributes-template.ts
│ │ ├── i-ch5-common-attributes-text.ts
│ │ ├── i-ch5-common-attributes-toggle.ts
│ │ ├── i-ch5-common-attributes-video-documentation.ts
│ │ ├── i-ch5-common-attributes-video-switcher.ts
│ │ ├── i-ch5-common-attributes-video.ts
│ │ ├── i-ch5-common-attributes.ts
│ │ ├── i-ch5-common-ch5-text.ts
│ │ ├── i-ch5-common-color-chip.ts
│ │ ├── i-ch5-common-datetime.ts
│ │ ├── i-ch5-common-documentation-text.ts
│ │ ├── i-ch5-common-documentation-toggle.ts
│ │ ├── i-ch5-common-documentation-video-switcher.ts
│ │ ├── i-ch5-common-set3.ts
│ │ ├── i-ch5-common-wo-disable.ts
│ │ ├── i-ch5-common.ts
│ │ ├── i-ch5-gestureable.ts
│ │ ├── i-ch5-subpage-reference-list-attributes.ts
│ │ ├── i-ch5-subpage-reference-list-documentation.ts
│ │ ├── i-ch5-tab-button-attributes.ts
│ │ ├── i-ch5-tab-button-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-common.ts
│ └── utils
│ │ ├── animation
│ │ ├── animator.ts
│ │ └── user-scroll-events.ts
│ │ ├── ch5-color-utils.ts
│ │ ├── common-functions.ts
│ │ ├── component-helper.ts
│ │ ├── html-callback.ts
│ │ ├── index.ts
│ │ ├── math
│ │ └── easings.ts
│ │ ├── orientation-helper.ts
│ │ ├── tick.ts
│ │ └── viewport.ts
├── ch5-core
│ ├── ch5-component.ts
│ ├── ch5-core-intersection-observer.ts
│ ├── ch5-debug.ts
│ ├── ch5-heartbeat.ts
│ ├── ch5-platform.ts
│ ├── ch5-properties.ts
│ ├── ch5-property.ts
│ ├── ch5-signal-behavior-subject.ts
│ ├── ch5-signal-bridge-receive.ts
│ ├── ch5-signal-bridge.ts
│ ├── ch5-signal-factory.spec.ts
│ ├── ch5-signal-factory.ts
│ ├── ch5-signal.ts
│ ├── ch5-translation-class.ts
│ ├── ch5-translation-configuration.ts
│ ├── ch5-translation-factory.ts
│ ├── ch5-translation-listeners.ts
│ ├── ch5-translation-utility.ts
│ ├── ch5-uid.spec.ts
│ ├── ch5-uid.ts
│ ├── ch5-version.ts
│ ├── get-scrollable-parent.ts
│ ├── index.ts
│ ├── interfaces-sig-com.ts
│ ├── readme.md
│ ├── resize-observer.ts
│ ├── types
│ │ ├── callbacks.ts
│ │ ├── ch5-platform-info.ts
│ │ ├── core.ts
│ │ ├── signal.table.ts
│ │ └── signal.type.ts
│ └── utility-functions
│ │ ├── components.ts
│ │ ├── debounce.ts
│ │ ├── get-signal.ts
│ │ ├── is-crestron-device.ts
│ │ ├── is-crestron-touchscreen.ts
│ │ ├── is-ios-device.ts
│ │ ├── is-mobile-device.ts
│ │ ├── is-safari-mobile.ts
│ │ ├── is-touch-device.ts
│ │ ├── publish-signal.ts
│ │ ├── signals.ts
│ │ ├── subscribe-in-view-port-change.ts
│ │ ├── subscribe-signal-script.ts
│ │ ├── subscribe-signal.ts
│ │ ├── textformat.ts
│ │ ├── translation-interface-register.ts
│ │ ├── trigger-translation.ts
│ │ └── unsubscribe-signal.ts
├── ch5-custom-attrs
│ ├── ch5-attrs-appendclass.ts
│ ├── ch5-attrs-appendstyle.ts
│ ├── ch5-attrs-enable.ts
│ ├── ch5-attrs-hidepulse.ts
│ ├── ch5-attrs-i18n.ts
│ ├── ch5-attrs-innerhtml.ts
│ ├── ch5-attrs-log.ts
│ ├── ch5-attrs-mutation-observer.ts
│ ├── ch5-attrs-show.ts
│ ├── ch5-attrs-showpulse.ts
│ ├── ch5-attrs-text-content.ts
│ ├── ch5-custom-attributes.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── helpers
│ │ │ ├── custom-attribute.ts
│ │ │ └── i-custom-attribute.ts
│ │ ├── i-ch5-attrs-appendclass.ts
│ │ ├── i-ch5-attrs-appendstyle.ts
│ │ ├── i-ch5-attrs-enable.ts
│ │ ├── i-ch5-attrs-hidepulse.ts
│ │ ├── i-ch5-attrs-i18n.ts
│ │ ├── i-ch5-attrs-innerhtml.ts
│ │ ├── i-ch5-attrs-keep-sig-subscription.ts
│ │ ├── i-ch5-attrs-noshow-type.ts
│ │ ├── i-ch5-attrs-show.ts
│ │ ├── i-ch5-attrs-showpulse.ts
│ │ ├── i-ch5-attrs-text-content.ts
│ │ ├── index.ts
│ │ └── t-ch5-attrs.ts
│ └── utils
│ │ ├── ch5-attrs-constants.ts
│ │ └── ch5-attrs-utility.ts
├── ch5-datetime
│ ├── ch5-datetime.spec.ts
│ ├── ch5-datetime.ts
│ ├── date-time-util.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-datetime-attributes.ts
│ │ ├── i-ch5-datetime-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-datetime.ts
├── ch5-dpad
│ ├── ch5-dpad-button-base.ts
│ ├── ch5-dpad-button.ts
│ ├── ch5-dpad-utils.ts
│ ├── ch5-dpad.spec.ts
│ ├── ch5-dpad.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-dpad-attributes.ts
│ │ ├── i-ch5-dpad-button-attributes.ts
│ │ ├── i-ch5-dpad-button-base-attributes.ts
│ │ ├── i-ch5-dpad-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-dpad.ts
├── ch5-emulator
│ ├── ch5-emulator.s001-003.spec.ts
│ ├── ch5-emulator.s004.spec.ts
│ ├── ch5-emulator.s005.spec.ts
│ ├── ch5-emulator.s006.spec.ts
│ ├── ch5-emulator.s007.spec.ts
│ ├── ch5-emulator.s008.spec.ts
│ ├── ch5-emulator.s009.spec.ts
│ ├── ch5-emulator.ts
│ ├── emulator.spec.testdata.scenario.json
│ ├── emulator.spec.testdata.scenario001.json
│ ├── emulator.spec.testdata.scenario002.json
│ ├── emulator.spec.testdata.scenario003.json
│ ├── emulator.spec.testdata.scenario004.json
│ ├── emulator.spec.testdata.scenario005.json
│ ├── emulator.spec.testdata.scenario006.json
│ ├── emulator.spec.testdata.scenario007.json
│ ├── emulator.spec.testdata.scenario008.json
│ ├── index.ts
│ ├── js-interface-mock.ts
│ ├── mocha.async.delay.ts
│ └── readme.md
├── ch5-form
│ ├── ch5-form.spec.ts
│ ├── ch5-form.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-form-attributes.ts
│ │ ├── i-ch5-form-documentation.ts
│ │ └── index.ts
├── ch5-image
│ ├── ch5-image-mode.ts
│ ├── ch5-image-uri-model.ts
│ ├── ch5-image.spec.ts
│ ├── ch5-image.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-image-attributes.ts
│ │ ├── i-ch5-image-documentation.ts
│ │ ├── i-ch5-image-mode-attributes.ts
│ │ ├── i-ch5-image-mode-documentation.ts
│ │ ├── i-ch5-image.ts
│ │ └── index.ts
├── ch5-import-htmlsnippet
│ ├── ch5-import-htmlsnippet.spec.ts
│ ├── ch5-import-htmlsnippet.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-htmlsnippet-documentation.ts
│ │ ├── i-ch5-import-htmlsnippet-attributes.ts
│ │ └── index.ts
│ └── readme.md
├── ch5-jointotext-boolean
│ ├── ch5-jointotext-boolean.spec.ts
│ ├── ch5-jointotext-boolean.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-jointotext-boolean-attributes.ts
│ │ ├── i-ch5-jointotext-boolean-documentation.ts
│ │ └── index.ts
├── ch5-jointotext-numeric
│ ├── ch5-jointotext-numeric.spec.ts
│ ├── ch5-jointotext-numeric.ts
│ ├── format
│ │ ├── float-format.ts
│ │ ├── hex-format.ts
│ │ ├── numeric-format-factory.ts
│ │ ├── numeric-format.ts
│ │ ├── percentage-format.ts
│ │ ├── raw-format.ts
│ │ ├── signed-format.ts
│ │ ├── time-format.ts
│ │ └── unsigned-format.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-jointotext-numeric-attributes.ts
│ │ ├── i-ch5-jointotext-numeric-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-jointotext-numeric.ts
├── ch5-jointotext-string
│ ├── ch5-jointotext-string.spec.ts
│ ├── ch5-jointotext-string.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-jointotext-string-attributes.ts
│ │ ├── i-ch5-jointotext-string-documentation.ts
│ │ └── index.ts
├── ch5-keypad
│ ├── ch5-keypad-btn.ts
│ ├── ch5-keypad-utils.ts
│ ├── ch5-keypad.spec.ts
│ ├── ch5-keypad.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-keypad-attributes.ts
│ │ ├── i-ch5-keypad-btn-attributes.ts
│ │ ├── i-ch5-keypad-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-keypad.ts
├── ch5-label
│ ├── ch5-label.spec.ts
│ ├── ch5-label.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-label-attributes.ts
│ │ ├── i-ch5-label-documentation.ts
│ │ └── index.ts
├── ch5-list
│ ├── animation
│ │ ├── ch5-animation-factory.ts
│ │ ├── ch5-animation.ts
│ │ ├── ch5-standard-animation.ts
│ │ └── ch5-web-animation.ts
│ ├── ch5-list-abstract-helper.ts
│ ├── ch5-list-animation.ts
│ ├── ch5-list-buffered-items.ts
│ ├── ch5-list-event-manager.ts
│ ├── ch5-list-log.ts
│ ├── ch5-list-signal-manager.ts
│ ├── ch5-list-size-resolver.ts
│ ├── ch5-list-template.ts
│ ├── ch5-list.spec.ts
│ ├── ch5-list.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-list-attributes.ts
│ │ ├── i-ch5-list-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-list.ts
│ ├── passiveEventListeners.ts
│ └── readme.md
├── ch5-logger
│ ├── appender
│ │ ├── AbstractAppender.ts
│ │ ├── AppenderFactory.ts
│ │ └── RemoteAppender.ts
│ ├── enums
│ │ └── index.ts
│ ├── helpers
│ │ ├── LogMessage.ts
│ │ ├── LogMessagesFilter.ts
│ │ └── index.ts
│ ├── index.ts
│ ├── logger
│ │ ├── Logger.ts
│ │ └── index.ts
│ ├── services
│ │ ├── RequestService.ts
│ │ └── index.ts
│ ├── tests
│ │ └── filterMessage.spec.ts
│ ├── types
│ │ └── index.ts
│ └── utility
│ │ ├── getLogger.ts
│ │ ├── getRemoteAppender.ts
│ │ ├── index.ts
│ │ └── uriSchemaValidation.ts
├── ch5-modal-dialog
│ ├── ch5-modal-dialog.spec.ts
│ ├── ch5-modal-dialog.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-modal-dialog-attributes.ts
│ │ ├── i-ch5-modal-dialog-documentation.ts
│ │ └── index.ts
│ └── readme.md
├── ch5-overlay-panel
│ ├── ch5-overlay-panel.spec.ts
│ ├── ch5-overlay-panel.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-overlay-panel-attributes.ts
│ │ ├── i-ch5-overlay-panel-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-overlay-panel.ts
│ └── readme.md
├── ch5-qrcode
│ ├── ch5-qrcode-properties.ts
│ ├── ch5-qrcode.spec.ts
│ ├── ch5-qrcode.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-qrcode-attributes.ts
│ │ ├── i-ch5-qrcode-documentation.ts
│ │ └── index.ts
├── ch5-resync
│ ├── ch5-resync.spec.ts
│ ├── ch5-resync.ts
│ └── models
│ │ ├── ch5-clear-range-data-model.ts
│ │ ├── ch5-exclude-prefixes-model.ts
│ │ ├── ch5-resync-constants.ts
│ │ ├── ch5-resync-reset-event-names-enum.ts
│ │ ├── ch5-states-at-default-value-model.ts
│ │ └── resynchronization-request-model.ts
├── ch5-segmented-gauge
│ ├── ch5-segmented-gauge.spec.ts
│ ├── ch5-segmented-gauge.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-segmented-gauge-attributes.ts
│ │ ├── i-ch5-segmented-gauge-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-segmented-gauge.ts
├── ch5-select-option
│ ├── ch5-select-option.spec.ts
│ ├── ch5-select-option.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-select-option-attributes.ts
│ │ ├── i-ch5-select-option-documentation.ts
│ │ ├── index.ts
│ │ └── types
│ │ └── t-ch5-select-option-icon-position.ts
├── ch5-select
│ ├── ch5-select.spec.ts
│ ├── ch5-select.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-select-attributes.ts
│ │ ├── i-ch5-select-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-select.ts
├── ch5-signal-level-gauge
│ ├── ch5-signal-level-gauge.spec.ts
│ ├── ch5-signal-level-gauge.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-signal-level-gauge-attributes.ts
│ │ ├── i-ch5-signal-level-gauge-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-signal-level-gauge.ts
├── ch5-slider
│ ├── ch5-slider-button-label.ts
│ ├── ch5-slider-button.ts
│ ├── ch5-slider-title-label.ts
│ ├── ch5-slider.spec.ts
│ ├── ch5-slider.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-slider-attributes.ts
│ │ ├── i-ch5-slider-button-attributes.ts
│ │ ├── i-ch5-slider-button-documentation.ts
│ │ ├── i-ch5-slider-button-label-documentation.ts
│ │ ├── i-ch5-slider-documentation.ts
│ │ ├── i-ch5-slider-title-label-attributes.ts
│ │ ├── i-ch5-slider-title-label-documentation.ts
│ │ ├── index.ts
│ │ ├── t-ch5-slider-button.ts
│ │ └── t-ch5-slider.ts
│ └── readme.md
├── ch5-spinner
│ ├── ch5-mouse-velocity.ts
│ ├── ch5-spinner-events.ts
│ ├── ch5-spinner-mutation-observer.ts
│ ├── ch5-spinner-scroll.ts
│ ├── ch5-spinner-template.ts
│ ├── ch5-spinner.spec.ts
│ ├── ch5-spinner.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-spinner-attributes.ts
│ │ ├── i-ch5-spinner-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-spinner.ts
├── ch5-subpage-reference-list
│ ├── ch5-subpage-reference-list.spec.ts
│ ├── ch5-subpage-reference-list.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-subpage-reference-list-attributes.ts
│ │ ├── i-ch5-subpage-reference-list-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-subpage-reference-list.ts
│ └── refresh-ch5-subpage-reference-list.ts
├── ch5-tab-button
│ ├── ch5-tab-button-individual-button.ts
│ ├── ch5-tab-button-label.ts
│ ├── ch5-tab-button.spec.ts
│ ├── ch5-tab-button.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-tab-button-attributes.ts
│ │ ├── i-ch5-tab-button-documentation.ts
│ │ ├── i-ch5-tab-button-individual-button-attributes.ts
│ │ ├── i-ch5-tab-button-individual-button-documentation.ts
│ │ ├── i-ch5-tab-button-label-documentation.ts
│ │ ├── index.ts
│ │ ├── t-ch5-tab-button.ts
│ │ └── t-for-ch5-button-list-contract.ts
├── ch5-template
│ ├── ch5-template-structure.ts
│ ├── ch5-template.spec.ts
│ ├── ch5-template.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-template-attributes.ts
│ │ ├── i-ch5-template-documentation.ts
│ │ └── index.ts
│ └── refresh-ch5-template.ts
├── ch5-text
│ ├── ch5-text.spec.ts
│ ├── ch5-text.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-text-attributes.ts
│ │ ├── i-ch5-text-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-text.ts
├── ch5-textinput
│ ├── ch5-textinput-mask.ts
│ ├── ch5-textinput.spec.ts
│ ├── ch5-textinput.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-text-input-attributes.ts
│ │ ├── i-ch5-text-input-documentation.ts
│ │ ├── i-ch5-text-input.ts
│ │ ├── index.ts
│ │ └── t-ch5-text-input.ts
├── ch5-toggle
│ ├── ch5-toggle.spec.ts
│ ├── ch5-toggle.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-toggle-attributes.ts
│ │ ├── i-ch5-toggle-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-toggle.ts
├── ch5-touch
│ ├── ch5-touch-activity.ts
│ └── index.ts
├── ch5-triggerview
│ ├── ch5-triggerview-child.ts
│ ├── ch5-triggerview-slides-manager.ts
│ ├── ch5-triggerview-swiper.ts
│ ├── ch5-triggerview.spec.ts
│ ├── ch5-triggerview.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-triggerview-attributes.ts
│ │ ├── i-ch5-triggerview-child-attributes.ts
│ │ ├── i-ch5-triggerview-child-documentation.ts
│ │ ├── i-ch5-triggerview-documentation.ts
│ │ └── index.ts
│ └── utils.ts
├── ch5-video-switcher
│ ├── ch5-video-switcher-screen-label.ts
│ ├── ch5-video-switcher-screen.ts
│ ├── ch5-video-switcher-source-label.ts
│ ├── ch5-video-switcher-source.ts
│ ├── ch5-video-switcher.spec.ts
│ ├── ch5-video-switcher.ts
│ ├── drag-drop-touch.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-video-switcher-attributes.ts
│ │ ├── i-ch5-video-switcher-documentation.ts
│ │ ├── i-ch5-video-switcher-screen-attributes.ts
│ │ ├── i-ch5-video-switcher-screen-documentation.ts
│ │ ├── i-ch5-video-switcher-screen-label-documentation.ts
│ │ ├── i-ch5-video-switcher-source-attributes.ts
│ │ ├── i-ch5-video-switcher-source-documentation.ts
│ │ ├── i-ch5-video-switcher-source-label-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-video-switcher.ts
├── ch5-video
│ ├── ch5-video-snapshot.ts
│ ├── ch5-video-touch-manager.ts
│ ├── ch5-video-utils.ts
│ ├── ch5-video.spec.ts
│ ├── ch5-video.ts
│ ├── index.ts
│ ├── interfaces
│ │ ├── i-ch5-video-attributes.ts
│ │ ├── i-ch5-video-documentation.ts
│ │ ├── i-ch5-video-helper.ts
│ │ ├── index.ts
│ │ └── t-ch5-video.ts
│ └── readme.md
├── ch5-wifi-signal-level-gauge
│ ├── ch5-wifi-signal-level-gauge.spec.ts
│ ├── ch5-wifi-signal-level-gauge.ts
│ ├── index.ts
│ └── interfaces
│ │ ├── i-ch5-wifi-signal-level-gauge-attributes.ts
│ │ ├── i-ch5-wifi-signal-level-gauge-documentation.ts
│ │ ├── index.ts
│ │ └── t-ch5-wifi-signal-level-gauge.ts
├── index.ts
├── typings
│ ├── dragdroptouch.d.ts
│ └── mycolorpicker.d.ts
└── utility-models
│ ├── ch5-role-attribute-mapping.ts
│ └── index.ts
├── tsconfig.amd.json
├── tsconfig.base.json
├── tsconfig.cjs.json
├── tsconfig.esm.json
├── tsconfig.umd.json
├── tsconfig.webpack.json
├── tsconfig.webpack_implicit_ce.json
├── wct.conf.json
├── wct_tests
├── assets
│ └── img
│ │ ├── finger.svg
│ │ ├── idea.svg
│ │ ├── lists.svg
│ │ ├── nav_icon_0.svg
│ │ ├── nav_icon_1.svg
│ │ ├── nav_icon_2.svg
│ │ ├── nav_icon_3.svg
│ │ ├── nav_icon_4.svg
│ │ ├── nav_icon_5.svg
│ │ ├── nav_icon_6.svg
│ │ ├── ok.svg
│ │ ├── page.svg
│ │ ├── something.svg
│ │ └── video.svg
├── ch5-accessibility-attributes
│ ├── ch5-common-role-attribute.html
│ └── index.html
├── ch5-animation
│ ├── ch5-animation-attributes-animationstyle.html
│ ├── ch5-animation-attributes-disabled.html
│ ├── ch5-animation-attributes-noShowType-emulation.html
│ ├── ch5-animation-attributes-noshowtype.html
│ ├── ch5-animation-attributes-preload-cachepage.html
│ ├── ch5-animation-attributes-receivestateanimate.html
│ ├── ch5-animation-attributes-receivestateanimationstyle.html
│ ├── ch5-animation-attributes-receivestateframespersecond.html
│ ├── ch5-animation-attributes-show.html
│ ├── ch5-animation-attributes-size.html
│ ├── ch5-animation-attributes-startanimating.html
│ ├── ch5-animation-attributes.html
│ ├── emulator
│ │ ├── noShowType.json
│ │ ├── preloadcachepage.json
│ │ ├── receivestateanimate.json
│ │ ├── receivestateanimationstyle.json
│ │ └── receivestateframespersecond.json
│ └── index.html
├── ch5-background
│ ├── ch5-background-color.html
│ ├── ch5-background-img-bg-color.html
│ ├── ch5-background-refresh-rate.html
│ ├── ch5-background-repeat.html
│ ├── ch5-background-scale.html
│ ├── ch5-background-transition-duration.html
│ ├── ch5-background-transition-effect.html
│ ├── ch5-background-url.html
│ ├── emulator
│ │ └── receivestatevalue.json
│ └── index.html
├── ch5-button-list
│ ├── ch5-button-list-attributes-buttoncheckbox.html
│ ├── ch5-button-list-attributes-buttonhalignlabel.html
│ ├── ch5-button-list-attributes-buttoniconclass.html
│ ├── ch5-button-list-attributes-buttoniconposition.html
│ ├── ch5-button-list-attributes-buttoniconurl.html
│ ├── ch5-button-list-attributes-buttonmode.html
│ ├── ch5-button-list-attributes-buttonpressed.html
│ ├── ch5-button-list-attributes-buttonselected.html
│ ├── ch5-button-list-attributes-buttonshape.html
│ ├── ch5-button-list-attributes-buttontype.html
│ ├── ch5-button-list-attributes-buttonvalignlabel.html
│ ├── ch5-button-list-attributes-centeritems.html
│ ├── ch5-button-list-attributes-columns.html
│ ├── ch5-button-list-attributes-contractname.html
│ ├── ch5-button-list-attributes-endless.html
│ ├── ch5-button-list-attributes-numberOfItems.html
│ ├── ch5-button-list-attributes-orientation.html
│ ├── ch5-button-list-attributes-rows.html
│ ├── ch5-button-list-attributes-scrollbar.html
│ ├── ch5-button-list-attributes.html
│ ├── ch5-button-list-button-advanced-behaviour.html
│ ├── ch5-button-list-button-checkbox.html
│ ├── ch5-button-list-customClass.html
│ ├── ch5-button-list-customStyle.html
│ ├── ch5-button-list-mode-attributes-checkboxposition.html
│ ├── ch5-button-list-mode-attributes-halignlabel.html
│ ├── ch5-button-list-mode-attributes-iconposition.html
│ ├── ch5-button-list-mode-attributes-type.html
│ ├── ch5-button-list-mode-attributes-valignlabel.html
│ ├── ch5-button-list-mode-attributes.html
│ ├── ch5-button-list-mode-state-attributes-checkboxposition.html
│ ├── ch5-button-list-mode-state-attributes-halignlabel.html
│ ├── ch5-button-list-mode-state-attributes-iconposition.html
│ ├── ch5-button-list-mode-state-attributes-state.html
│ ├── ch5-button-list-mode-state-attributes-type.html
│ ├── ch5-button-list-mode-state-attributes-valignlabel.html
│ ├── ch5-button-list-mode-state-attributes.html
│ ├── emulator
│ │ └── receivestatenumberofitems.json
│ ├── index.html
│ └── js
│ │ └── helpers.js
├── ch5-button
│ ├── ch5-button-all-combinations.html
│ ├── ch5-button-backgroundimagefilltype.html
│ ├── ch5-button-backgroundimageurl.html
│ ├── ch5-button-checkbox.html
│ ├── ch5-button-customclass.html
│ ├── ch5-button-customstyle.html
│ ├── ch5-button-default.html
│ ├── ch5-button-disabled.html
│ ├── ch5-button-events.html
│ ├── ch5-button-hvalignlabel.html
│ ├── ch5-button-icons.html
│ ├── ch5-button-iconurlfilltype.html
│ ├── ch5-button-iconurlfilltypemode.html
│ ├── ch5-button-labels.html
│ ├── ch5-button-mode.html
│ ├── ch5-button-multimode-buttonlabel.html
│ ├── ch5-button-multimode-buttonmode.html
│ ├── ch5-button-multimode-buttonmodelabel.html
│ ├── ch5-button-multimode-buttonmodestate.html
│ ├── ch5-button-multimode-buttonmodestatelabel.html
│ ├── ch5-button-orientation.html
│ ├── ch5-button-receivestatebackgroundimageurl.html
│ ├── ch5-button-selected.html
│ ├── ch5-button-shapes.html
│ ├── ch5-button-show.html
│ ├── ch5-button-sizes.html
│ ├── ch5-button-stretch.html
│ ├── ch5-button-types.html
│ ├── emulator
│ │ ├── alignments.json
│ │ ├── checkbox.json
│ │ ├── customstyle.json
│ │ ├── labels.json
│ │ ├── multimode-buttonlabel.json
│ │ ├── selected.json
│ │ ├── show.json
│ │ └── types.json
│ ├── index.html
│ └── js
│ │ └── helpers.js
├── ch5-color-chip
│ ├── ch5-color-chip-attributes-maxValue.html
│ ├── ch5-color-chip-attributes-receiveStateBlueValue.html
│ ├── ch5-color-chip-attributes-receiveStateGreenValue.html
│ ├── ch5-color-chip-attributes-receiveStateRedValue.html
│ ├── ch5-color-chip-attributes-sendEventColorBlueOnChange.html
│ ├── ch5-color-chip-attributes-sendEventColorGreenOnChange.html
│ ├── ch5-color-chip-attributes-sendEventColorRedOnChange.html
│ ├── ch5-color-chip-attributes-sendEventOnClick.html
│ ├── ch5-color-chip-attributes.html
│ ├── emulator
│ │ ├── receiveStateBlueValue.json
│ │ ├── receiveStateGreenValue.json
│ │ ├── receiveStateRedValue.json
│ │ ├── sendEventColorBlueOnChange.json
│ │ ├── sendEventColorGreenOnChange.json
│ │ ├── sendEventColorRedOnChange.json
│ │ └── sendEventOnClick.json
│ └── index.html
├── ch5-color-picker
│ ├── ch5-color-picker-attributes-maxValue.html
│ ├── ch5-color-picker-attributes-receiveStateBlueValue.html
│ ├── ch5-color-picker-attributes-receiveStateGreenValue.html
│ ├── ch5-color-picker-attributes-receiveStateRedValue.html
│ ├── ch5-color-picker-attributes-sendEventColorBlueOnChange.html
│ ├── ch5-color-picker-attributes-sendEventColorGreenOnChange.html
│ ├── ch5-color-picker-attributes-sendEventColorRedOnChange.html
│ ├── ch5-color-picker-attributes.html
│ ├── emulator
│ │ ├── receiveStateBlueValue.json
│ │ ├── receiveStateGreenValue.json
│ │ ├── receiveStateRedValue.json
│ │ ├── sendEventColorBlueOnChange.json
│ │ ├── sendEventColorGreenOnChange.json
│ │ └── sendEventColorRedOnChange.json
│ └── index.html
├── ch5-datetime
│ ├── ch5-datetime-attributes-display.html
│ ├── ch5-datetime-attributes-display24hourformat.html
│ ├── ch5-datetime-attributes-displayampm.html
│ ├── ch5-datetime-attributes-displayseconds.html
│ ├── ch5-datetime-attributes-displaytwodigitshour.html
│ ├── ch5-datetime-attributes-horizontalalignment.html
│ ├── ch5-datetime-attributes-receivestatedisplay24hourformat.html
│ ├── ch5-datetime-attributes-receivestatedisplayampm.html
│ ├── ch5-datetime-attributes-receivestatedisplayseconds.html
│ ├── ch5-datetime-attributes-receivestatedisplaytwodigitshour.html
│ ├── ch5-datetime-attributes-receivestatedisplaytype.html
│ ├── ch5-datetime-attributes-receivestatestylefordate.html
│ ├── ch5-datetime-attributes-receivestatetimeoffsethours.html
│ ├── ch5-datetime-attributes-stylefordate.html
│ ├── ch5-datetime-attributes-timeoffsethours.html
│ ├── ch5-datetime-attributes.html
│ ├── emulator
│ │ └── receivestatetimeoffsethours.json
│ ├── index.html
│ └── js
│ │ └── helper.js
├── ch5-dpad
│ ├── ch5-dpad-attributes-disable-center-button.html
│ ├── ch5-dpad-attributes-hide-center-button.html
│ ├── ch5-dpad-attributes-receive-state-disable-center-button.html
│ ├── ch5-dpad-attributes-receive-state-hide-center-button.html
│ ├── ch5-dpad-attributes-send-event-on-click-start.html
│ ├── ch5-dpad-attributes-shapes.html
│ ├── ch5-dpad-attributes-sizes.html
│ ├── ch5-dpad-attributes-stretch.html
│ ├── ch5-dpad-attributes-types.html
│ ├── ch5-dpad-attributes.html
│ ├── ch5-dpad-button-attributes-iconclass.html
│ ├── ch5-dpad-button-attributes-iconurl.html
│ ├── ch5-dpad-button-attributes-keys.html
│ ├── ch5-dpad-button-attributes-label.html
│ ├── ch5-dpad-button-attributes-pressed.html
│ ├── ch5-dpad-contractname-usecontractforcustomclass.html
│ ├── ch5-dpad-contractname-usecontractforcustomstyle.html
│ ├── ch5-dpad-contractname-usecontractfordisablecenterbutton.html
│ ├── ch5-dpad-contractname-usecontractforenable.html
│ ├── ch5-dpad-contractname-usecontractforhidecenterbutton.html
│ ├── ch5-dpad-contractname-usecontractforshow.html
│ ├── ch5-dpad-default.html
│ ├── ch5-dpad-events.html
│ ├── emulator
│ │ ├── receivestatedisablecenterbutton.json
│ │ ├── receivestatehidecenterbutton.json
│ │ ├── receivestatenumericjoins.json
│ │ └── types.json
│ ├── index.html
│ └── js
│ │ └── helpers.js
├── ch5-form
│ ├── ch5-form-basic.html
│ ├── ch5-form-cancel-button-icon.html
│ ├── ch5-form-cancel-button-label.html
│ ├── ch5-form-cancel-button-style.html
│ ├── ch5-form-cancel-button-type.html
│ ├── ch5-form-hide-cancel-button.html
│ ├── ch5-form-hide-submit-button.html
│ ├── ch5-form-submit-button-icon.html
│ ├── ch5-form-submit-button-label.html
│ ├── ch5-form-submit-button-style.html
│ ├── ch5-form-submit-button-type.html
│ └── index.html
├── ch5-image
│ ├── ch5-image-alt.html
│ ├── ch5-image-attributes-allow-position-data-to-be-sent.html
│ ├── ch5-image-attributes-allow-values-on-move.html
│ ├── ch5-image-attributes-receive-state-allow-position-data-to-be-sent.html
│ ├── ch5-image-attributes-receive-state-allow-values-on-move.html
│ ├── ch5-image-attributes-send-event-xposition.html
│ ├── ch5-image-attributes-send-event-yposition.html
│ ├── ch5-image-height.html
│ ├── ch5-image-intersection-observer.html
│ ├── ch5-image-mutation-observer.html
│ ├── ch5-image-refresh-rate.html
│ ├── ch5-image-url.html
│ ├── ch5-image-width.html
│ ├── emulator
│ │ ├── receivestateallowpositiondatatobesent.json
│ │ ├── receivestateallowvaluesonmove.json
│ │ ├── sendeventxposition.json
│ │ └── sendeventyposition.json
│ └── index.html
├── ch5-import-htmlsnippet
│ ├── ch5-import-htmlsnippet.html
│ ├── ch5-sample-elements.html
│ └── index.html
├── ch5-jointotext-boolean
│ ├── ch5-jointotext-boolean-attributes.html
│ ├── emulator
│ │ └── receivestatevalue.json
│ └── index.html
├── ch5-jointotext-numeric
│ ├── ch5-jointotext-numeric-attributes.html
│ ├── emulator
│ │ └── receivestatevalue.json
│ └── index.html
├── ch5-jointotext-string
│ ├── ch5-jointotext-string-attributes.html
│ ├── emulator
│ │ └── receivestatevalue.json
│ └── index.html
├── ch5-keypad
│ ├── ch5-keypad-attributes-contractname.html
│ ├── ch5-keypad-attributes-displaylabelmajoronly.html
│ ├── ch5-keypad-attributes-hide-asterisk-button.html
│ ├── ch5-keypad-attributes-hide-pound-button.html
│ ├── ch5-keypad-attributes-no-contractname.html
│ ├── ch5-keypad-attributes-receive-state-hide-asterisk-button.html
│ ├── ch5-keypad-attributes-receive-state-hide-pound-button.html
│ ├── ch5-keypad-attributes-receivestateextrashowbutton.html
│ ├── ch5-keypad-attributes-sendeventonclickstart.html
│ ├── ch5-keypad-attributes-shapes.html
│ ├── ch5-keypad-attributes-showextrabutton.html
│ ├── ch5-keypad-attributes-sizes.html
│ ├── ch5-keypad-attributes-stretch.html
│ ├── ch5-keypad-attributes-textorientation.html
│ ├── ch5-keypad-attributes-types.html
│ ├── ch5-keypad-attributes-use-contract-for-hide-asterisk-button.html
│ ├── ch5-keypad-attributes-use-contract-for-hide-pound-button.html
│ ├── ch5-keypad-attributes.html
│ ├── ch5-keypad-button-attributes-iconclass.html
│ ├── ch5-keypad-button-attributes-key.html
│ ├── ch5-keypad-button-attributes-labelmajor.html
│ ├── ch5-keypad-button-attributes-labelminor.html
│ ├── ch5-keypad-button-attributes-pressed.html
│ ├── ch5-keypad-default.html
│ ├── emulator
│ │ ├── receivestateextrabuttonshow.json
│ │ ├── receivestatehideasteriskbutton.json
│ │ └── receivestatehidepoundbutton.json
│ └── index.html
├── ch5-list
│ ├── ch5-list-endless.html
│ ├── ch5-list-join-increment.html
│ ├── ch5-list-orientation.html
│ ├── ch5-list-size.html
│ └── index.html
├── ch5-modal-dialog
│ ├── ch5-modal-dialog-closable.html
│ ├── ch5-modal-dialog-closeIcon.html
│ ├── ch5-modal-dialog-dismissable.html
│ ├── ch5-modal-dialog-height-width.html
│ ├── ch5-modal-dialog-label.html
│ ├── ch5-modal-dialog-mask.html
│ ├── ch5-modal-dialog-maskStyle.html
│ ├── ch5-modal-dialog-ok-cancel.html
│ ├── ch5-modal-dialog-overflow.html
│ ├── ch5-modal-dialog-prompt.html
│ ├── ch5-modal-dialog-stretch.html
│ ├── ch5-modal-dialog-title.html
│ └── index.html
├── ch5-overlay-panel
│ ├── ch5-overlay-panel-tests.html
│ └── index.html
├── ch5-qrcode
│ ├── ch5-qrcode-attributes-background-color.html
│ ├── ch5-qrcode-attributes-color.html
│ ├── ch5-qrcode-attributes-noShowType-emulation.html
│ ├── ch5-qrcode-attributes-receive-state-qr-code.html
│ ├── ch5-qrcode-attributes-show.html
│ ├── ch5-qrcode-attributes-size.html
│ ├── ch5-qrcode-attributes.html
│ ├── emulator
│ │ ├── noShowType.json
│ │ └── receivestateqrcode.json
│ └── index.html
├── ch5-segmented-gauge
│ ├── ch5-segmented-gauge-attributes-gaugeledstyle.html
│ ├── ch5-segmented-gauge-attributes-max-value.html
│ ├── ch5-segmented-gauge-attributes-min-value.html
│ ├── ch5-segmented-gauge-attributes-numberofsegments.html
│ ├── ch5-segmented-gauge-attributes-orientation.html
│ ├── ch5-segmented-gauge-attributes-preload-cache-page.html
│ ├── ch5-segmented-gauge-attributes-primarystategraphic.html
│ ├── ch5-segmented-gauge-attributes-receiveStateValue.html
│ ├── ch5-segmented-gauge-attributes-secondarystategraphic.html
│ ├── ch5-segmented-gauge-attributes-sendEventOnClick.html
│ ├── ch5-segmented-gauge-attributes-tertiarystategraphic.html
│ ├── ch5-segmented-gauge-attributes-touchsettable.html
│ ├── ch5-segmented-gauge-attributes-value.html
│ ├── ch5-segmented-gauge-attributes.html
│ ├── emulator
│ │ ├── preloadcachepage.json
│ │ ├── receivestatevalue.json
│ │ └── sendeventonclick.json
│ └── index.html
├── ch5-select
│ ├── dimensions.html
│ ├── index.html
│ ├── mode.html
│ ├── multi-selection.html
│ ├── single-selection.html
│ └── size.html
├── ch5-signal-level-gauge
│ ├── ch5-signal-level-gauge-attributes-max-value.html
│ ├── ch5-signal-level-gauge-attributes-min-value.html
│ ├── ch5-signal-level-gauge-attributes-numberOfBars.html
│ ├── ch5-signal-level-gauge-attributes-orientation.html
│ ├── ch5-signal-level-gauge-attributes-receiveStateValue.html
│ ├── ch5-signal-level-gauge-attributes-signal-bar-spacing.html
│ ├── ch5-signal-level-gauge-attributes-size.html
│ ├── ch5-signal-level-gauge-attributes-value.html
│ ├── ch5-signal-level-gauge-attributes.html
│ ├── ch5-signal-level-gauge-preload-cache-testcases.html
│ ├── emulator
│ │ ├── preload-cache-test-cases.json
│ │ └── receiveStateValue.json
│ └── index.html
├── ch5-slider
│ ├── ch5-slider-alignment-attribute.html
│ ├── ch5-slider-disabled-attribute.html
│ ├── ch5-slider-handle-shape.html
│ ├── ch5-slider-handle-size.html
│ ├── ch5-slider-iconurlfilltype-attribute.html
│ ├── ch5-slider-key-attribute.html
│ ├── ch5-slider-max.html
│ ├── ch5-slider-min.html
│ ├── ch5-slider-noHandle-attribute.html
│ ├── ch5-slider-onoffonly-attribute.html
│ ├── ch5-slider-orientation.html
│ ├── ch5-slider-page-preload-cache.html
│ ├── ch5-slider-range.html
│ ├── ch5-slider-receivestateicon-attributes.html
│ ├── ch5-slider-receivestatelabel-attribute.html
│ ├── ch5-slider-size.html
│ ├── ch5-slider-step.html
│ ├── ch5-slider-stretch-attribute.html
│ ├── ch5-slider-tapsettable.html
│ ├── ch5-slider-ticks-show-values.html
│ ├── ch5-slider-ticks.html
│ ├── ch5-slider-tooltips-display-type.html
│ ├── ch5-slider-tooltips.html
│ ├── ch5-slider-value-high.html
│ ├── ch5-slider-value.html
│ ├── emulator
│ │ ├── preloadcachepage.json
│ │ ├── receivestateicons.json
│ │ ├── receivestatelabel.json
│ │ └── receivestateshowonoffonly.json
│ └── index.html
├── ch5-spinner
│ ├── ch5-spinner-endless.html
│ ├── ch5-spinner-iconPosition.html
│ ├── ch5-spinner-itemHeight.html
│ ├── ch5-spinner-receiveStateLabel_url.html
│ ├── ch5-spinner-receiveStateSize.html
│ ├── ch5-spinner-receiveStateValue.html
│ ├── ch5-spinner-resize.html
│ ├── ch5-spinner-selectedValue.html
│ ├── ch5-spinner-sendEventOnChange.html
│ ├── ch5-spinner-sendEventOnFocus.html
│ ├── ch5-spinner-size.html
│ ├── ch5-spinner-visibleItemScroll.html
│ ├── emulator
│ │ ├── receiveStateLabel_Url.json
│ │ ├── receiveStateSize.json
│ │ ├── receiveStateValue.json
│ │ ├── sendEventOnChange.json
│ │ ├── sendEventOnFocus.json
│ │ └── sendEventOnOverFlow_underFlow.json
│ └── index.html
├── ch5-subpage-reference-list
│ ├── ch5-subpage-reference-list-attributes-booleanJoinIncrement.html
│ ├── ch5-subpage-reference-list-attributes-centeritems.html
│ ├── ch5-subpage-reference-list-attributes-column.html
│ ├── ch5-subpage-reference-list-attributes-endless.html
│ ├── ch5-subpage-reference-list-attributes-numberofitems.html
│ ├── ch5-subpage-reference-list-attributes-numericJoinIncrement.html
│ ├── ch5-subpage-reference-list-attributes-orientation.html
│ ├── ch5-subpage-reference-list-attributes-receiveStateNumberOfItems.html
│ ├── ch5-subpage-reference-list-attributes-rows.html
│ ├── ch5-subpage-reference-list-attributes-scrollbar.html
│ ├── ch5-subpage-reference-list-attributes-stretch.html
│ ├── ch5-subpage-reference-list-attributes-stringJoinIncrement.html
│ ├── ch5-subpage-reference-list-attributes-subpageReceiveStateEnable.html
│ ├── ch5-subpage-reference-list-attributes-subpageReceiveStateScrollTo.html
│ ├── ch5-subpage-reference-list-attributes-subpageReceiveStateShow.html
│ ├── ch5-subpage-reference-list-attributes.html
│ ├── emulator
│ │ ├── booleanjoinoffset.json
│ │ ├── numericjoinoffset.json
│ │ ├── receivestatenumberofitems.json
│ │ ├── stringjoinoffset.json
│ │ ├── subpagereceivestateenable.json
│ │ ├── subpagereceivestatescrollto.json
│ │ └── subpagereceivestatevisible.json
│ └── index.html
├── ch5-tab-button
│ ├── ch5-tab-button-attribute-contractname.html
│ ├── ch5-tab-button-attributes-buttoniconclass.html
│ ├── ch5-tab-button-attributes-buttoniconposition.html
│ ├── ch5-tab-button-attributes-buttoniconurl.html
│ ├── ch5-tab-button-attributes-buttonshape.html
│ ├── ch5-tab-button-attributes-buttonsignals.html
│ ├── ch5-tab-button-attributes-buttontype.html
│ ├── ch5-tab-button-attributes-numberOfItems.html
│ ├── ch5-tab-button-attributes-orientation.html
│ ├── ch5-tab-button-attributes-preload-cache-page.html
│ ├── ch5-tab-button-attributes.html
│ ├── ch5-tab-button-customClass.html
│ ├── ch5-tab-button-customStyle.html
│ ├── emulator
│ │ ├── buttonreceivestateenable.json
│ │ └── receivestatenumberofitems.json
│ └── index.html
├── ch5-template
│ ├── ch5-template-attributes.html
│ ├── ch5-template-generate-states-and-events.html
│ ├── ch5-template-in-template.html
│ ├── ch5-template-increment-join-values.html
│ ├── ch5-template-rename-states-and-events.html
│ ├── ch5-template-validations.html
│ ├── ch5-template-wrapper-div.html
│ └── index.html
├── ch5-text
│ ├── ch5-text-attributes-horizontal-alignment.html
│ ├── ch5-text-attributes-multiline-support.html
│ ├── ch5-text-attributes-receive-state-label.html
│ ├── ch5-text-attributes-receive-state-script-label-html.html
│ ├── ch5-text-attributes-truncate-text.html
│ ├── ch5-text-attributes-vertical-alignment.html
│ ├── ch5-text-attributes.html
│ ├── emulator
│ │ ├── receivestatelabel.json
│ │ └── receivestatescriptlabelhtml.json
│ └── index.html
├── ch5-textinput
│ ├── ch5-textinput-attributes-icon-position.html
│ ├── ch5-textinput-attributes-max-length.html
│ ├── ch5-textinput-attributes-max-value.html
│ ├── ch5-textinput-attributes-min-length.html
│ ├── ch5-textinput-attributes-min-value.html
│ ├── ch5-textinput-attributes-minimum-font-size.html
│ ├── ch5-textinput-attributes-receive-state-focus.html
│ ├── ch5-textinput-attributes-receive-state-value.html
│ ├── ch5-textinput-attributes-scaling.html
│ ├── ch5-textinput-attributes-send-event-on-blur.html
│ ├── ch5-textinput-attributes-send-event-on-change.html
│ ├── ch5-textinput-attributes-send-event-on-focus.html
│ ├── ch5-textinput-attributes-size.html
│ ├── ch5-textinput-attributes-stretch.html
│ ├── ch5-textinput-attributes-tab-index.html
│ ├── ch5-textinput-attributes-text-transform.html
│ ├── ch5-textinput-attributes-type.html
│ ├── ch5-textinput-attributes.html
│ ├── ch5-textinput-disabled-attribute.html
│ ├── ch5-textinput-stretches.html
│ ├── emulator
│ │ ├── receivestatefocus.json
│ │ ├── receivestatevalue.json
│ │ ├── sendeventonblur.json
│ │ ├── sendeventonchange.json
│ │ └── sendeventonfocus.json
│ └── index.html
├── ch5-toggle
│ ├── ch5-toggle-attributes-handle-shape.html
│ ├── ch5-toggle-attributes-icon-off.html
│ ├── ch5-toggle-attributes-icon-on.html
│ ├── ch5-toggle-attributes-label-off.html
│ ├── ch5-toggle-attributes-label-on.html
│ ├── ch5-toggle-attributes-label.html
│ ├── ch5-toggle-attributes-orientation.html
│ ├── ch5-toggle-attributes-receive-state-script-label-html.html
│ ├── ch5-toggle-attributes-receive-state-value.html
│ ├── ch5-toggle-attributes-send-event-on-click.html
│ ├── ch5-toggle-attributes-size.html
│ ├── ch5-toggle-attributes-value.html
│ ├── ch5-toggle-attributes.html
│ ├── ch5-toggle-disabled.html
│ ├── emulator
│ │ ├── receivestatescriptlabelhtml.json
│ │ ├── receivestatevalue.json
│ │ └── sendeventonclick.json
│ └── index.html
├── ch5-triggerview
│ ├── ch5-triggerview-active-view.html
│ ├── ch5-triggerview-basic.html
│ ├── ch5-triggerview-endless.html
│ ├── ch5-triggerview-gestureable.html
│ └── index.html
├── ch5-video-switcher
│ ├── ch5-video-switcher-attributes-contract-screen-label-type.html
│ ├── ch5-video-switcher-attributes-contract-source-label-type.html
│ ├── ch5-video-switcher-attributes-display-screen-label.html
│ ├── ch5-video-switcher-attributes-endless.html
│ ├── ch5-video-switcher-attributes-number-of-screen-columns.html
│ ├── ch5-video-switcher-attributes-number-of-screens.html
│ ├── ch5-video-switcher-attributes-number-of-source-list-divisions.html
│ ├── ch5-video-switcher-attributes-number-of-sources.html
│ ├── ch5-video-switcher-attributes-receive-state-number-of-screens.html
│ ├── ch5-video-switcher-attributes-receive-state-screen-label.html
│ ├── ch5-video-switcher-attributes-receive-state-script-screen-label-html.html
│ ├── ch5-video-switcher-attributes-receive-state-script-source-label-html.html
│ ├── ch5-video-switcher-attributes-receive-state-source-changed.html
│ ├── ch5-video-switcher-attributes-receive-state-source-label.html
│ ├── ch5-video-switcher-attributes-screen-aspect-ratio.html
│ ├── ch5-video-switcher-attributes-scrollbar.html
│ ├── ch5-video-switcher-attributes-send-event-on-change.html
│ ├── ch5-video-switcher-attributes-send-event-on-drop.html
│ ├── ch5-video-switcher-attributes-source-list-position.html
│ ├── ch5-video-switcher-attributes-use-contract-for-enable.html
│ ├── ch5-video-switcher-attributes-use-contract-for-show.html
│ ├── ch5-video-switcher-attributes.html
│ ├── emulator
│ │ ├── receivestatenumberofscreens.json
│ │ ├── receivestatescreenlabel.json
│ │ ├── receivestatescriptscreenlabelhtml.json
│ │ ├── receivestatescriptsourcelabelhtml.json
│ │ ├── receivestatesourcechanged.json
│ │ ├── receivestatesourcelabel.json
│ │ ├── sendeventonchange.json
│ │ └── sendeventondrop.json
│ └── index.html
├── ch5-video
│ ├── ch5-video-attributes-aspectratio.html
│ ├── ch5-video-attributes-receiveStatePassword.html
│ ├── ch5-video-attributes-receiveStateSelect.html
│ ├── ch5-video-attributes-receiveStateSnapshotPassword.html
│ ├── ch5-video-attributes-receiveStateSnapshotRefreshRate.html
│ ├── ch5-video-attributes-receiveStateSnapshotURL.html
│ ├── ch5-video-attributes-receiveStateSnapshotUserId.html
│ ├── ch5-video-attributes-receiveStateSourceType.html
│ ├── ch5-video-attributes-receiveStateURL.html
│ ├── ch5-video-attributes-receiveStateUserId.html
│ ├── ch5-video-attributes-receiveStateVideoCount.html
│ ├── ch5-video-attributes-size.html
│ ├── ch5-video-attributes-snapshotrefreshrate.html
│ ├── ch5-video-attributes-sourcetype.html
│ ├── ch5-video-attributes-stretch.html
│ ├── ch5-video-attributes.html
│ ├── ch5-video-controls.html
│ ├── ch5-video-size.html
│ ├── emulator
│ │ ├── receivestatepassword.json
│ │ ├── receivestateplay.json
│ │ ├── receivestateselect.json
│ │ ├── receivestatesnapshotpassword.json
│ │ ├── receivestatesnapshotrefreshrate.json
│ │ ├── receivestatesnapshoturl.json
│ │ ├── receivestatesnapshotuserid.json
│ │ ├── receivestatesourcetype.json
│ │ ├── receivestateurl.json
│ │ ├── receivestateuserid.json
│ │ ├── receivestatevideocount.json
│ │ ├── sendeventerrorcode.json
│ │ ├── sendeventerrormessage.json
│ │ ├── sendeventonclick.json
│ │ ├── sendeventresolution.json
│ │ ├── sendeventretrycount.json
│ │ ├── sendeventselectionchange.json
│ │ ├── sendeventselectionsourcetype.json
│ │ ├── sendeventselectionurl.json
│ │ ├── sendeventsnapshotlastupdatetime.json
│ │ ├── sendeventsnapshotstatus.json
│ │ ├── sendeventsnapshoturl.json
│ │ └── sendeventstate.json
│ └── index.html
├── ch5-wifi-signal-level-gauge
│ ├── ch5-wifi-signal-level-gauge-attributes-alignment.html
│ ├── ch5-wifi-signal-level-gauge-attributes-gaugestyle.html
│ ├── ch5-wifi-signal-level-gauge-attributes-maxvalue.html
│ ├── ch5-wifi-signal-level-gauge-attributes-minvalue.html
│ ├── ch5-wifi-signal-level-gauge-attributes-receiveStateValue.html
│ ├── ch5-wifi-signal-level-gauge-attributes-size.html
│ ├── ch5-wifi-signal-level-gauge-attributes-value.html
│ ├── ch5-wifi-signal-level-gauge-attributes.html
│ ├── ch5-wifi-signal-level-gauge-preload-cache-testcases.html
│ ├── emulator
│ │ ├── preload-cache-test-cases.json
│ │ └── receivestatevalue.json
│ └── index.html
├── component-config
│ ├── config-attributes.html
│ └── index.html
├── general
│ ├── component-creation-from-js.html
│ ├── debounce-utility.html
│ ├── index.html
│ └── subscribe-when-in-view-port.html
├── index.html
├── join-nr-as-signal-names
│ ├── data-ch5-attrs.html
│ ├── index.html
│ ├── receive-signal-attrs.html
│ └── utility-functions.html
├── js
│ └── helpers.js
├── language-translation
│ ├── index.html
│ ├── language-translation.html
│ └── language-translation.js
├── run-all.html
└── themes
│ └── crestron-components-assets
│ ├── base.css
│ ├── dark-theme.css
│ ├── default-theme.css
│ ├── external.css
│ ├── high-contrast-theme.css
│ └── light-theme.css
├── webcomponentsjs
└── webcomponents-lite.js
├── webpack.common.config.js
├── webpack.dev.config.js
├── webpack.prod.config.js
└── yarn.lock
/.env.dist:
--------------------------------------------------------------------------------
1 | BUILD_VERSION=X.XX.XX.XX
2 | BUILD_DATE=YYYY-MM-DD
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | dist
3 | build_bundles
4 | src/**/**.spec.ts
5 | compiled_bundles
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .DS_Store
3 | node_modules
4 | npm-debug.log
5 | yarn-error.log
6 | .env
7 | dist
8 | build_bundles
9 | build_bundles_dev
10 | compiled_bundles
11 | docs
12 | coverage
13 | bower_components
14 | test-report.xml
15 | mochawesome-report
16 | .nyc_output
17 | .vscode/settings.json
--------------------------------------------------------------------------------
/.mocharc.json:
--------------------------------------------------------------------------------
1 | {
2 | "extension": ["js"],
3 | "reporter": "spec",
4 | "package": "./package.json",
5 | "slow": 75,
6 | "timeout": 2000,
7 | "ui": "bdd",
8 | "spec": ["compiled_bundles/umd/**/*.spec.js"],
9 | "require": [
10 | "jsdom-global/register"
11 | ]
12 | }
13 |
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | tsconfig.global.json
2 | tsconfig.*.json
3 | tslint.json
4 | .prettierignore
5 | src
6 | *.log
7 | *.js.map
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | # package.json is formatted by package managers, so we ignore it here
2 | package.json
3 | package-lock.json
4 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
--------------------------------------------------------------------------------
/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "temporary",
3 | "description": "Temporary",
4 | "main": "index.js",
5 | "authors": [
6 | "Crestron"
7 | ],
8 | "license": "ISC",
9 | "homepage": "",
10 | "ignore": [
11 | "**/.*",
12 | "node_modules",
13 | "bower_components",
14 | "test",
15 | "tests"
16 | ],
17 | "dependencies": {
18 | "web-component-tester": "Polymer/web-component-tester#^6.5.0"
19 | }
20 | }
--------------------------------------------------------------------------------
/copyright.txt:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
--------------------------------------------------------------------------------
/extra/footer-umd-package.js:
--------------------------------------------------------------------------------
1 | /* extra/footer-umd-package.js */
2 |
3 | // generated code by WebPack only for umd distributions
4 | window['bridgeReceiveIntegerFromNative'] = CrComLib.bridgeReceiveIntegerFromNative;
5 | window['bridgeReceiveBooleanFromNative'] = CrComLib.bridgeReceiveBooleanFromNative;
6 | window['bridgeReceiveStringFromNative'] = CrComLib.bridgeReceiveStringFromNative;
7 | window['bridgeReceiveObjectFromNative'] = CrComLib.bridgeReceiveObjectFromNative;
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/mocha.opts:
--------------------------------------------------------------------------------
1 | --compiler ts:tsc
2 | --reporter spec
3 | --ui bdd
4 | --recursive
5 | --require jsdom-global/register
6 | compiled_bundles/umd/**/*.spec.js
7 |
8 |
--------------------------------------------------------------------------------
/src/_interfaces/generated-metadata/readme.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | # Extension schema generation folder
6 | This folder contains the generated schema and other json output files from the library and theme code.
7 |
--------------------------------------------------------------------------------
/src/ch5-animation/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-animation';
--------------------------------------------------------------------------------
/src/ch5-animation/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-animation';
2 | export * from './i-ch5-animation-attributes';
3 | export * from './i-ch5-animation-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-animation/interfaces/t-ch5-animation.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5AnimationSize = 'regular' |'small' |'large' |'x-large';
9 | export type TCh5AnimationStyle = 'ring' | 'spinner' | 'roller';
--------------------------------------------------------------------------------
/src/ch5-background/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-background';
--------------------------------------------------------------------------------
/src/ch5-background/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './t-ch5-background';
9 | export * from "./i-ch5-background-attributes";
10 |
--------------------------------------------------------------------------------
/src/ch5-background/interfaces/t-ch5-background.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5BackgroundRepeat = 'no-repeat' | 'repeat' | 'repeat-x' | 'repeat-y';
9 |
10 | export type TCh5BackgroundScale = 'stretch' | 'fill' | 'fit';
11 |
12 | export type TCh5BackgroundTransitionEffect = 'ease' | 'linear' | 'ease-in' | 'ease-out' | 'ease-in-out';
--------------------------------------------------------------------------------
/src/ch5-button-list/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-button-list';
2 | export * from './ch5-button-list-mode';
3 | export * from './ch5-button-list-label';
4 | export * from './ch5-button-list-mode-state';
5 | export * from './ch5-button-list-individual-button';
--------------------------------------------------------------------------------
/src/ch5-button-list/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-button-list';
2 | export * from './i-ch5-button-list-attributes';
3 | export * from './i-ch5-button-list-documentation';
4 | export * from './i-ch5-button-list-mode-attributes';
5 | export * from './i-ch5-button-list-mode-documentation';
6 | export * from "./i-ch5-button-list-label-documentation";
7 | export * from './i-ch5-button-list-mode-state-attributes';
8 | export * from './i-ch5-button-list-mode-state-documentation';
9 | export * from './i-ch5-button-list-individual-button-attributes';
10 | export * from './i-ch5-button-list-individual-button-documentation';
--------------------------------------------------------------------------------
/src/ch5-button-list/interfaces/t-for-ch5-button-list-contract.ts:
--------------------------------------------------------------------------------
1 | export interface ICh5ButtonListContractObj {
2 | index: number;
3 | clickHoldTime: number;
4 | contractName: string;
5 | parentComponent: string;
6 | };
--------------------------------------------------------------------------------
/src/ch5-button/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-button-base';
9 | export * from './ch5-button';
10 | export * from './ch5-button-label';
11 | export * from './ch5-button-mode';
12 | export * from './ch5-button-mode-state';
13 |
--------------------------------------------------------------------------------
/src/ch5-button/interfaces/i-ch5-button.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5ButtonAttributes } from "./i-ch5-button-attributes";
9 | import { ICh5Common } from "../../ch5-common/interfaces";
10 |
11 | /**
12 | * @ignore
13 | * TODO - to remove this file, the below properties must be in ICh5ButtonAttributes
14 | */
15 | export interface ICh5Button extends ICh5ButtonAttributes, ICh5Common {
16 |
17 | }
--------------------------------------------------------------------------------
/src/ch5-button/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./t-ch5-button";
9 | export * from "./i-ch5-button-attributes";
10 | export * from "./i-ch5-button-label-attributes";
11 | export * from "./i-ch5-button-mode-attributes";
12 | export * from "./i-ch5-button-mode-state-attributes";
13 |
--------------------------------------------------------------------------------
/src/ch5-button/interfaces/t-for-ch5-button-list-contract.ts:
--------------------------------------------------------------------------------
1 | export interface ICh5ButtonListContractObj {
2 | index: number;
3 | clickHoldTime: number;
4 | contractName: string;
5 | parentComponent: string;
6 | };
--------------------------------------------------------------------------------
/src/ch5-color-chip/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-color-chip';
--------------------------------------------------------------------------------
/src/ch5-color-chip/interfaces/index.ts:
--------------------------------------------------------------------------------
1 |
2 | export * from './i-ch5-color-chip-attributes';
3 | export * from './i-ch5-color-chip-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-color-picker/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-color-picker';
--------------------------------------------------------------------------------
/src/ch5-color-picker/interfaces/index.ts:
--------------------------------------------------------------------------------
1 |
2 | export * from './i-ch5-color-picker-attributes';
3 | export * from './i-ch5-color-picker-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-common-input/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-common-input';
9 |
--------------------------------------------------------------------------------
/src/ch5-common-input/interfaces/i-ch5-common-input-documentation.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5CommonInputAttributes } from ".";
9 | import { ICh5Common } from "../../ch5-common/interfaces";
10 |
11 | /**
12 | * @ignore
13 | */
14 | export interface ICh5CommonInputDocumentation extends ICh5Common, ICh5CommonInputAttributes {
15 | }
--------------------------------------------------------------------------------
/src/ch5-common-input/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './i-ch5-common-input';
9 | export * from "./i-ch5-common-input-attributes";
10 | export * from './t-ch5-common-input';
11 |
--------------------------------------------------------------------------------
/src/ch5-common-input/interfaces/t-ch5-common-input.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5CommonInputFeedbackModes = 'direct' | 'submit';
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-appendclasswheninviewport.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForAppendClassWhenInViewPort {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`appendclasswheninviewport` attribute",
17 | * "***",
18 | * "Applies the provided value as class name while the component is visible and removes the class name when not visible."
19 | * ]
20 | * @name appendclasswheninviewport
21 | * @attributeType "String"
22 | */
23 | appendClassWhenInViewPort: string;
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-customclass.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForCustomClass {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`customclass` attribute",
17 | * "***",
18 | * "Contains a list of space delimited CSS classes that are applied on the component"
19 | * ]
20 | * @name customclass
21 | * @hideWhen [
22 | * {"receiveStateCustomClass": ["true"] }
23 | * ]
24 | * @attributeType "String"
25 | */
26 | customClass: string;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-customstyle.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForCustomStyle {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`customstyle` attribute",
17 | * "***",
18 | * "Contains a list of semicolon delimited style classes applied on the component."
19 | * ]
20 | * @name customstyle
21 | * @attributeType "String"
22 | */
23 | customStyle: string;
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-id.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForId {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`id` attribute",
17 | * "***",
18 | * "This is a standard id HTML attribute."
19 | * ]
20 | * @name id
21 | * @attributeType "String"
22 | */
23 | id: string;
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-noshowtype.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { TCh5ShowType } from "./../t-ch5-common";
9 |
10 | /**
11 | * @ignore
12 | */
13 | export interface ICh5CommonAttributesForNoShowType {
14 |
15 | /**
16 | * @documentation
17 | * [
18 | * "`noshowtype` attribute",
19 | * "***",
20 | * "This property reflects the type of the visibility of the item. See the 'data-ch5-noshow-type' ",
21 | * "custom HTML attribute for further information."
22 | * ]
23 | * @name noshowtype
24 | * @default display
25 | * @attributeType "String"
26 | */
27 | noshowType: TCh5ShowType;
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-receivestatehidepulse.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForReceiveStateHidePulse {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`receivestatehidepulse` attribute",
17 | * "***",
18 | * "on transition from false to true, this signal will direct if the component is no longer visible."
19 | * ]
20 | * @name receivestatehidepulse
21 | * @join {"direction": "state", "isContractName": true, "booleanJoin": 1}
22 | * @attributeType "Join"
23 | */
24 | receiveStateHidePulse: string;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-receivestateshow.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForReceiveStateShow {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`receivestateshow` attribute",
17 | * "***",
18 | * "When true, the boolean value of the signal determines if the component is visible."
19 | * ]
20 | * @name receivestateshow
21 | * @join {"direction": "state", "isContractName": true, "booleanJoin": 1}
22 | * @attributeType "Join"
23 | */
24 | receiveStateShow: string;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-receivestateshowpulse.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForReceiveStateShowPulse {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`receivestateshowpulse` attribute",
17 | * "***",
18 | * "on transition from false to true, this signal directs the component to become visible."
19 | * ]
20 | * @name receivestateshowpulse
21 | * @join {"direction": "state", "isContractName": true, "booleanJoin": 1}
22 | * @attributeType "Join"
23 | */
24 | receiveStateShowPulse: string;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-attributes-show.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonAttributesForShow {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`show` attribute",
17 | * "***",
18 | * "The visibility of the component depends upon the boolean value. The component is visible ",
19 | * "when the value is true and hides when it is false."
20 | * ]
21 | * @name show
22 | * @default true
23 | * @attributeType "Boolean"
24 | */
25 | show: boolean;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-class.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonForClass {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`class` attribute",
17 | * "***",
18 | * "This is a standard class HTML attribute."
19 | * ]
20 | * @name class
21 | * @attributeType "String"
22 | */
23 | class: string;
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-debug.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { TBoolAttribute } from "./../t-ch5-common";
9 |
10 | /**
11 | * @ignore
12 | */
13 | export interface ICh5CommonForDebug {
14 |
15 | /**
16 | * @documentation
17 | * [
18 | * "`debug` attribute",
19 | * "***",
20 | * "The default value is false. Used to get useful developer-related information about component behavior."
21 | * ]
22 | * @name debug
23 | * @default true
24 | * @attributeType "Boolean"
25 | */
26 | debug: TBoolAttribute;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-disabled.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { TBoolAttribute } from "./../t-ch5-common";
9 |
10 | /**
11 | * @ignore
12 | */
13 | export interface ICh5CommonForDisabled {
14 |
15 | /**
16 | * @documentation
17 | * [
18 | * "`disabled` attribute",
19 | * "***",
20 | * "The default value is false. This property will direct the component to change CSS and event listeners ",
21 | * "to reflect a disabled state when true."
22 | * ]
23 | * @name disabled
24 | * @default false
25 | * @attributeType "Boolean"
26 | */
27 | disabled: TBoolAttribute;
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/common/i-ch5-common-style.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICh5CommonForStyle {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`style` attribute",
17 | * "***",
18 | * "This is a standard style HTML attribute."
19 | * ]
20 | * @name style
21 | * @attributeType "String"
22 | */
23 | style: string;
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/i-ch5-common-datetime.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5CommonForClass } from "./common/i-ch5-common-class";
9 | import { ICh5CommonForDebug } from "./common/i-ch5-common-debug";
10 | import { ICh5CommonForRole } from "./common/i-ch5-common-role";
11 | import { ICh5CommonForStyle } from "./common/i-ch5-common-style";
12 | import { ICh5AttributesDateTime } from "./i-ch5-common-attributes-datetime";
13 |
14 | /**
15 | * @ignore
16 | */
17 | export interface ICh5CommonDateTime extends ICh5CommonForDebug, ICh5CommonForRole, ICh5CommonForStyle, ICh5CommonForClass, ICh5AttributesDateTime {
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/i-ch5-common-wo-disable.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5CommonForClass } from "./common/i-ch5-common-class";
9 | import { ICh5CommonForDebug } from "./common/i-ch5-common-debug";
10 | import { ICh5CommonForRole } from "./common/i-ch5-common-role";
11 | import { ICh5CommonForStyle } from "./common/i-ch5-common-style";
12 | import { ICh5CommonAttributesTemplate } from "./i-ch5-common-attributes-template";
13 |
14 | /**
15 | * @ignore
16 | */
17 | export interface ICh5CommonWoDisable extends ICh5CommonForDebug, ICh5CommonForRole, ICh5CommonForStyle, ICh5CommonForClass, ICh5CommonAttributesTemplate {}
18 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/i-ch5-gestureable.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { TBoolAttribute } from "./t-ch5-common";
9 |
10 | /**
11 | * @ignore
12 | */
13 | export interface ICh5Gestureable {
14 |
15 | /**
16 | * @documentation
17 | * [
18 | * "`gestureable` attribute",
19 | * "***",
20 | * "The default value is false. When set to true, gesturing will be supported. ",
21 | * "Adding this will change the behavior inside of the component."
22 | * ]
23 | * @name gestureable
24 | * @attributeType "Boolean"
25 | */
26 | gestureable: TBoolAttribute;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./t-ch5-common";
9 | export * from "./i-ch5-common";
10 | export * from "./i-ch5-common-attributes";
11 | export * from "./i-ch5-gestureable";
12 | export * from "./i-ch5-common-attributes-animation";
13 | export * from "./i-ch5-common-attributes-set3";
14 | export * from "./i-ch5-subpage-reference-list-attributes";
--------------------------------------------------------------------------------
/src/ch5-common/interfaces/t-ch5-common.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TBoolAttribute = 'false' | 'true';
9 |
10 | export type TCh5ShowType = 'visibility' | 'display' | 'remove';
11 |
12 | export type TCh5ProcessUriParams = {
13 | protocol: string;
14 | user: string;
15 | password: string;
16 | url: string;
17 | };
18 |
--------------------------------------------------------------------------------
/src/ch5-common/utils/animation/user-scroll-events.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export const USER_SCROLL_EVENTS = ['mousedown', 'wheel', 'DOMMouseScroll', 'mousewheel', 'keyup', 'touchmove'];
--------------------------------------------------------------------------------
/src/ch5-common/utils/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './common-functions';
--------------------------------------------------------------------------------
/src/ch5-core/ch5-translation-configuration.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export class Ch5TranslationConfiguration {
9 |
10 | public static translationTokenStartDelimiter: string = '-+';
11 | public static translationTokenEndDelimiter: string = '+-';
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/src/ch5-core/ch5-uid.spec.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * Tests for the Ch5Uid class
10 | */
11 |
12 | import { expect } from 'chai';
13 | import { describe } from 'mocha';
14 | import {Ch5Uid} from "./ch5-uid";
15 |
16 | describe('Ch5Uid', () => {
17 | it('Multiple calls to getUid should return different ids', (done:MochaDone) => {
18 |
19 | const ids:string[] = [];
20 | let id = '';
21 |
22 | for (let i = 0; i < 1000; i++) {
23 | id = Ch5Uid.getUid();
24 | expect(ids).to.not.contain(id);
25 | ids.push(id);
26 | }
27 |
28 | done();
29 | });
30 | });
--------------------------------------------------------------------------------
/src/ch5-core/ch5-uid.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * Allows generating an unique id among the ch5 components
10 | */
11 | export class Ch5Uid {
12 | private static _id = 0;
13 | private static _prefix = "cr-id-";
14 |
15 | public static getUid() {
16 | return Ch5Uid._prefix + (++Ch5Uid._id);
17 | }
18 | }
--------------------------------------------------------------------------------
/src/ch5-core/readme.md:
--------------------------------------------------------------------------------
1 | #Crestron Components Core
2 |
3 | Contains Core/Common functionality and code that will be used by the Crestron Web Components, Crestron Emulator and Crestron Showcase App.
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/ch5-core/resize-observer.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 | // import ResizeObserver from 'resize-observer-polyfill';
8 |
9 | /**
10 | * Utility function that returns the first scrollable parent
11 | */
12 | export function resizeObserver(node: HTMLElement, callback: any) {
13 | const myObserver = new ResizeObserver(callback);
14 | myObserver.observe(node);
15 | }
16 |
--------------------------------------------------------------------------------
/src/ch5-core/types/ch5-platform-info.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export interface ICh5PlatformInfo {
9 | capabilities: ICh5PlatformInfoCapabilities;
10 | version: string;
11 | name: string;
12 | }
13 |
14 | export interface ICh5PlatformInfoCapabilities {
15 | supportsTouchActivity: boolean;
16 | supportCredentialIntercept: ICh5PlatformInfoSupportCredentialIntercept;
17 | }
18 |
19 | export interface ICh5PlatformInfoSupportCredentialIntercept {
20 | http: string;
21 | https: string;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ch5-core/types/signal.table.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { TCh5Signal } from "./signal.type";
9 |
10 | export type TCh5SignalHashTable = {
11 | [key: string]: TCh5Signal;
12 | }
13 |
--------------------------------------------------------------------------------
/src/ch5-core/utility-functions/is-crestron-device.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * Returns whether the browser is running on a Crestron device, such as TSW
10 | */
11 | export function isCrestronDevice(): boolean {
12 | return window.navigator.userAgent.toLowerCase().includes("crestron");
13 | }
--------------------------------------------------------------------------------
/src/ch5-core/utility-functions/is-ios-device.ts:
--------------------------------------------------------------------------------
1 |
2 | export function isIosDevice(): boolean {
3 | if ((window.navigator.platform === 'iPad' || window.navigator.platform === 'iPhone') && navigator.maxTouchPoints >= 1) {
4 | if (/iPad|iPhone/.test(window.navigator.userAgent)) {
5 | return true;
6 | }
7 | } else if (window.navigator.platform === 'MacIntel') {
8 | if (/Macintosh/.test(window.navigator.userAgent)) {
9 | return true;
10 | }
11 | }
12 | return false;
13 | }
--------------------------------------------------------------------------------
/src/ch5-core/utility-functions/is-mobile-device.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * Returns whether the browser is mobile
10 | *
11 | * Recommended by
12 | * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Browser_detection_using_the_user_agent
13 | */
14 | export function isMobileDevice(): boolean {
15 | return window.navigator.userAgent.toLowerCase().includes("mobi");
16 | }
--------------------------------------------------------------------------------
/src/ch5-core/utility-functions/is-safari-mobile.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * Returns whether the browser is Safari mobile
10 | */
11 | export function isSafariMobile(): boolean {
12 | const ua = window.navigator.userAgent.toLowerCase();
13 |
14 | // since the launch of iPadOS, iPadOS Safari shows desktop versions of websites by default
15 | const isiPadOS = ua.indexOf('ipad') > -1 || ua.indexOf('macintosh') > -1 && 'ontouchend' in document;
16 |
17 | const iOS = isiPadOS || !!ua.match(/iPhone/i);
18 | const webkit = !!ua.match(/WebKit/i);
19 | return !!(iOS && webkit && !ua.match(/CriOS/i));
20 | }
--------------------------------------------------------------------------------
/src/ch5-core/utility-functions/is-touch-device.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * Returns whether the browser is touch-capable
10 | */
11 | export function isTouchDevice(): boolean {
12 | return !!(('ontouchstart' in window)
13 | || (navigator.maxTouchPoints > 0));
14 | }
--------------------------------------------------------------------------------
/src/ch5-core/utility-functions/signals.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { Ch5SignalFactory } from "../ch5-signal-factory";
9 |
10 | /**
11 | * Utility function that returns the number of active subscriptions of CH5 Components
12 | */
13 | export function getSubscriptionsCount() {
14 | const signals = Ch5SignalFactory.getInstance().getStates();
15 | return signals;
16 | }
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/ch5-attrs-log.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export class Ch5AttrsLog {
9 |
10 | public static info(debug: boolean, message?: any, ...optionalParams: any[]): void {
11 | const ts: string = (new Date()).toISOString();
12 | if (debug) {
13 | console.info(ts, 'Ch5CustomAttributes', ':', message, optionalParams);
14 | }
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-attrs-log';
9 | export * from './ch5-custom-attributes';
10 | export * from './ch5-attrs-show';
11 | export * from './ch5-attrs-showpulse';
12 | export * from './ch5-attrs-enable';
13 | export * from './ch5-attrs-hidepulse';
14 | export * from './ch5-attrs-text-content';
15 | export * from './ch5-attrs-innerhtml';
16 | export * from './ch5-attrs-appendclass';
17 | export * from './ch5-attrs-appendstyle';
18 | export * from './ch5-attrs-i18n';
19 |
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/interfaces/helpers/custom-attribute.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICustomAttribute } from "./i-custom-attribute";
9 |
10 | export abstract class CustomAttribute implements ICustomAttribute {
11 | private _type: T | null = null;
12 |
13 | public get type(): T {
14 | const self: CustomAttribute = this;
15 | if (!self._type) {
16 | throw new Error("Type is null ");
17 | }
18 | return self._type as T;
19 | }
20 |
21 | public set type(value: T) {
22 | this._type = value;
23 | }
24 | }
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/interfaces/helpers/i-custom-attribute.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export interface ICustomAttribute {
9 | /**
10 | * @name type
11 | */
12 | type: T;
13 | }
14 |
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/interfaces/i-ch5-attrs-enable.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICustomAttribute } from "./helpers/i-custom-attribute";
9 |
10 | // tslint:disable-next-line:no-unused-expression
11 | /**
12 | * @isattribute true
13 | * @name data-ch5-enable
14 | * @documentation
15 | * [
16 | * "`data-ch5-enable` custom attribute",
17 | * "***",
18 | * "Specifies whether or not an element is enable based upon the value of the state. Works with standard HTML elements. "
19 | * ]
20 | */
21 | export interface ICh5AttrsEnable extends ICustomAttribute {
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/interfaces/i-ch5-attrs-i18n.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICustomAttribute } from "./helpers/i-custom-attribute";
9 |
10 | // tslint:disable-next-line:no-unused-expression
11 | /**
12 | * @isattribute true
13 | * @name data-ch5-i18n
14 | * @documentation
15 | * [
16 | * "`data-ch5-i18n` custom attribute",
17 | * "***",
18 | * "The 'data-ch5-i18n' custom HTML attribute allows for text content translation to be applied to ",
19 | * "standard HTML elements."
20 | * ]
21 | */
22 |
23 | export interface ICh5AttrsI18n extends ICustomAttribute {
24 |
25 | }
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/interfaces/i-ch5-attrs-keep-sig-subscription.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICustomAttribute } from "./helpers/i-custom-attribute";
9 |
10 | // tslint:disable-next-line:no-unused-expression
11 | /**
12 | * @isattribute true
13 | * @name data-ch5-keep-sig-subscription
14 | * @documentation
15 | * [
16 | * "`data-ch5-keep-sig-subscription` custom attribute",
17 | * "***",
18 | * "Keeps the state subscription key generated by hidepulse, showpulse, or show custom attributes."
19 | * ]
20 | */
21 |
22 | // tslint:disable-next-line:no-empty-interface
23 | export interface ICh5AttrsKeepSigSubscription extends ICustomAttribute {
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/utils/ch5-attrs-constants.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export interface Ich5AttributeTranlate {
9 | dataCh5AttrName: string;
10 | elementIdPrefix: string;
11 | randomNumberLength: number;
12 | subAttributePosition: number;
13 | subAttributeType: string;
14 | defaultIndex: number;
15 | }
16 |
17 | export const CH5_I18N_ATTRIBUTE_CONSTANT: Ich5AttributeTranlate = {
18 | dataCh5AttrName: 'data-ch5-i18n',
19 | elementIdPrefix: 'ch5_translate_',
20 | randomNumberLength: 10,
21 | subAttributePosition: 2,
22 | subAttributeType: 'inner',
23 | defaultIndex: -1
24 | };
25 |
--------------------------------------------------------------------------------
/src/ch5-custom-attrs/utils/ch5-attrs-utility.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * function randomFixedInteger generate random number with specified length
10 | * @param {number} numberLength
11 | */
12 | export function randomFixedInteger(numberLength: number): number {
13 | let randomNumber: number = 0;
14 | randomNumber = Math.floor(Math.pow(10, numberLength - 1) + Math.random()
15 | * (Math.pow(10, numberLength) - Math.pow(10, numberLength - 1) - 1));
16 |
17 | return randomNumber;
18 | }
--------------------------------------------------------------------------------
/src/ch5-datetime/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-datetime';
--------------------------------------------------------------------------------
/src/ch5-datetime/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './t-ch5-datetime';
9 | export * from './i-ch5-datetime-attributes';
10 | export * from './i-ch5-datetime-documentation';
11 |
--------------------------------------------------------------------------------
/src/ch5-datetime/interfaces/t-ch5-datetime.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5DateTimeStyleForDate = 'MM-dd-yyyy' | 'M-dd-yyyy' | 'M-d-yyyy' | 'MM-dd-yy' | 'M-dd-yy' | 'M-d-yy' | 'dd_MM_yyyy' | 'd_MM_yyyy' | 'd_M_yyyy' | 'dd_MM_yy' | 'd_MM_yy' | 'd_M_yy' | 'd MMM yyyy' | 'MMM d yyyy' | 'd MMMM yyyy' | 'MMMM d yyyy' | 'yyyy-MM-dd' | 'yyyy_MM_dd' | 'MMM d, yyyy' | 'yyyy MM, dd' | 'yyyy MMMM, dd' | 'MMMM d, yyyy';
9 | export type TCh5DateTimeHorizontalAlignment = 'center' | 'left' | 'right';
10 | export type TCh5DateTimeDisplayType = 'datetime' | 'date' | 'time';
11 |
--------------------------------------------------------------------------------
/src/ch5-dpad/ch5-dpad-utils.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export class CH5DpadUtils {
9 |
10 | // the join number is applied to the up button, join+1 applies to down,
11 | // join+2 applies to left, join+3 applies to right, join+4 to center
12 | public static readonly sendEventOnClickSigCountToAdd = {
13 | up: 0,
14 | down: 1,
15 | left: 2,
16 | right: 3,
17 | center: 4
18 | };
19 |
20 | public static readonly contractSuffix = {
21 | up: 'Up',
22 | down: 'Down',
23 | left: 'Left',
24 | right: 'Right',
25 | center: 'Center'
26 | };
27 |
28 | }
--------------------------------------------------------------------------------
/src/ch5-dpad/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-dpad';
--------------------------------------------------------------------------------
/src/ch5-dpad/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-dpad-attributes";
9 | export * from './i-ch5-dpad-button-attributes';
10 | export * from './i-ch5-dpad-button-base-attributes';
11 |
--------------------------------------------------------------------------------
/src/ch5-dpad/interfaces/t-ch5-dpad.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present' | 'Crestron Electronics' | 'Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form' | 'machine
4 | // or natural' | 'without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5DpadType = 'default' | 'primary' | 'info' | 'text' | 'danger' | 'warning' | 'success' | 'secondary';
9 |
10 | export type TCh5DpadShape = 'plus' | 'circle';
11 |
12 | export type TCh5DpadStretch = 'both' | 'width' | 'height';
13 |
14 | export type TCh5DpadChildButtonType = 'up' | 'down' | 'left' | 'right' | 'center';
15 |
16 | export type TCh5DpadSize = 'regular' | 'x-small' | 'small' | 'large' | 'x-large';
--------------------------------------------------------------------------------
/src/ch5-emulator/emulator.spec.testdata.scenario001.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "hall_lights_tap",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "hall_lights_selected",
10 | "type": "b",
11 | "logic": "set",
12 | "value": true
13 | }
14 | ]
15 | }
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/src/ch5-emulator/emulator.spec.testdata.scenario002.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "b",
5 | "event": "volume_up_press",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "volume_level",
10 | "type": "n",
11 | "logic": "set",
12 | "value": 65535
13 | },
14 | {
15 | "state": "volume_level_desc",
16 | "type": "s",
17 | "logic": "set",
18 | "value": "Raising Volume!"
19 | }
20 | ]
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/src/ch5-emulator/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-emulator';
9 |
--------------------------------------------------------------------------------
/src/ch5-emulator/mocha.async.delay.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | const EMULATOR_ASYNC_DELAY = 40;
9 |
10 | export function emulatorAsyncDelay(doneFn: MochaDone, testFn: (...args: any[]) => void, testFnDelay = EMULATOR_ASYNC_DELAY) {
11 | setTimeout(() => {
12 | testFn(),
13 | doneFn();
14 | }, testFnDelay);
15 | }
16 |
--------------------------------------------------------------------------------
/src/ch5-emulator/readme.md:
--------------------------------------------------------------------------------
1 | # Crestron emulator
2 |
3 |
4 | Emulates signals according to a predefined logic.
5 |
--------------------------------------------------------------------------------
/src/ch5-form/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-form';
--------------------------------------------------------------------------------
/src/ch5-form/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-form-attributes";
--------------------------------------------------------------------------------
/src/ch5-image/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-image';
9 | export * from './ch5-image-mode';
--------------------------------------------------------------------------------
/src/ch5-image/interfaces/i-ch5-image-mode-attributes.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | /**
9 | * @ignore
10 | */
11 | export interface ICH5ImageModeAttributes {
12 |
13 | /**
14 | * @documentation
15 | * [
16 | * "`url` attribute",
17 | * "***",
18 | * "Must be a supported image format, including JPEG, GIF, PNG, SVG, and BMP."
19 | * ]
20 | * @name url
21 | * @attributeType "ImageURL"
22 | */
23 | url: string;
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ch5-image/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './i-ch5-image';
9 | export * from "./i-ch5-image-attributes";
10 | export * from './i-ch5-image-mode-attributes';
11 |
--------------------------------------------------------------------------------
/src/ch5-import-htmlsnippet/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-import-htmlsnippet';
--------------------------------------------------------------------------------
/src/ch5-import-htmlsnippet/interfaces/i-ch5-import-htmlsnippet-attributes.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5CommonAttributes } from "../../ch5-common/interfaces";
9 |
10 | /**
11 | * @ignore
12 | */
13 | export interface ICh5ImportHtmlSnippetAttributes extends ICh5CommonAttributes {
14 | /**
15 | * @documentation
16 | * [
17 | * "`url` attribute",
18 | * "***",
19 | * "The HTML file path."
20 | * ]
21 | * @name url
22 | * @attributeType "ImageURL"
23 | */
24 | url: string;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/ch5-import-htmlsnippet/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-import-htmlsnippet-attributes";
--------------------------------------------------------------------------------
/src/ch5-jointotext-boolean/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-jointotext-boolean';
--------------------------------------------------------------------------------
/src/ch5-jointotext-boolean/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-jointotext-boolean-attributes';
2 | export * from './i-ch5-jointotext-boolean-documentation';
--------------------------------------------------------------------------------
/src/ch5-jointotext-numeric/format/numeric-format.ts:
--------------------------------------------------------------------------------
1 | export abstract class NumericFormat {
2 |
3 | public abstract format(value: number, options: {}): string | number;
4 |
5 | }
--------------------------------------------------------------------------------
/src/ch5-jointotext-numeric/format/raw-format.ts:
--------------------------------------------------------------------------------
1 | import { NumericFormat } from "./numeric-format";
2 |
3 | export type RawFormatOptions = {}
4 |
5 | export class RawFormat extends NumericFormat {
6 |
7 | // eslint-disable-next-line @typescript-eslint/no-unused-vars
8 | public format(value: number, options: RawFormatOptions) {
9 | // raw integer - e.g. "%r" -- used for a raw integer
10 | if (isNaN(value)){
11 | return "0";
12 | }
13 | value = Math.abs(value);
14 | value = value > 65535 ? 65535 : value;
15 | return value.toString();
16 | }
17 |
18 | }
--------------------------------------------------------------------------------
/src/ch5-jointotext-numeric/format/unsigned-format.ts:
--------------------------------------------------------------------------------
1 | import { NumericFormat } from "./numeric-format";
2 |
3 | export type UnsignedFormatOptions = {
4 | length: number;
5 | }
6 |
7 | export class UnsignedFormat extends NumericFormat {
8 |
9 | public format(value: number, options: UnsignedFormatOptions) {
10 | const { length } = options;
11 | if (isNaN(value)){
12 | return "".padStart(length,"0");
13 | }
14 | value = Math.abs(value);
15 | value = value > 65535 ? 65535 : value;
16 |
17 | return value.toString().padStart(length,"0");
18 | }
19 |
20 | }
--------------------------------------------------------------------------------
/src/ch5-jointotext-numeric/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-jointotext-numeric';
--------------------------------------------------------------------------------
/src/ch5-jointotext-numeric/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-jointotext-numeric';
2 | export * from './i-ch5-jointotext-numeric-attributes';
3 | export * from './i-ch5-jointotext-numeric-documentation';
--------------------------------------------------------------------------------
/src/ch5-jointotext-numeric/interfaces/t-ch5-jointotext-numeric.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5JoinInfoNumericFormats = 'signed' | 'float' | 'percentage' | 'hex' | 'raw' | 'unsigned' | 'time';
9 |
--------------------------------------------------------------------------------
/src/ch5-jointotext-string/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-jointotext-string';
--------------------------------------------------------------------------------
/src/ch5-jointotext-string/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-jointotext-string-attributes';
2 | export * from './i-ch5-jointotext-string-documentation';
--------------------------------------------------------------------------------
/src/ch5-keypad/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-keypad';
--------------------------------------------------------------------------------
/src/ch5-keypad/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2021 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-keypad-btn-attributes";
9 | export * from "./i-ch5-keypad-attributes";
10 |
--------------------------------------------------------------------------------
/src/ch5-label/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-label';
--------------------------------------------------------------------------------
/src/ch5-label/interfaces/i-ch5-label-attributes.ts:
--------------------------------------------------------------------------------
1 | import { ICh5CommonAttributes } from "../../ch5-common/interfaces";
2 |
3 | /**
4 | * @ignore
5 | */
6 | export interface ICh5LabelAttributes extends ICh5CommonAttributes {
7 | /**
8 | * @documentation
9 | * [
10 | * "`label` attribute",
11 | * "***",
12 | * "Label"
13 | * ]
14 | * @name label
15 | * @default
16 | * @attributeType "String"
17 | */
18 | label: string;
19 |
20 | /**
21 | * @documentation
22 | * [
23 | * "`receiveStateLabel` attribute",
24 | * "***",
25 | * "Select a serial join to receive feedback from the control system. The value of this join gets assigned to the label as text. "
26 | * ]
27 | * @name receivestatelabel
28 | * @join {"direction": "state", "isContractName": true, "stringJoin": 1}
29 | * @attributeType "Join"
30 | */
31 | receiveStateLabel: string;
32 |
33 | }
--------------------------------------------------------------------------------
/src/ch5-label/interfaces/index.ts:
--------------------------------------------------------------------------------
1 |
2 | export * from './i-ch5-label-attributes';
3 | export * from './i-ch5-label-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-list/animation/ch5-animation-factory.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { Ch5Animation } from './ch5-animation';
9 | import { Ch5StandardAnimation } from './ch5-standard-animation';
10 |
11 | export class Ch5AnimationFactory {
12 |
13 | public getAnimation(duration: number, easeMode: string, wrapper: HTMLElement) {
14 | const animationInstance: Ch5Animation = new Ch5StandardAnimation(duration, easeMode, wrapper);
15 | return animationInstance;
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/src/ch5-list/ch5-list-log.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export class Ch5ListLog {
9 |
10 | public static info(debug: boolean, message?: any, ...optionalParams: any[]): void {
11 | const ts: string = (new Date()).toISOString();
12 | if (debug) {
13 | console.info(ts, '[Ch5-List]', ':', message, optionalParams);
14 | }
15 | }
16 |
17 | public static error(debug: boolean, message?: any, ...optionalParams: any[]): void {
18 | const ts: string = (new Date()).toISOString();
19 | if (debug) {
20 | console.error(ts, '[Ch5-List]', ':', message, optionalParams);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/ch5-list/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-list';
--------------------------------------------------------------------------------
/src/ch5-list/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-list-attributes";
9 | export * from "./t-ch5-list";
10 |
--------------------------------------------------------------------------------
/src/ch5-list/interfaces/t-ch5-list.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5ListElementOrientation = 'vertical' | 'horizontal';
9 |
--------------------------------------------------------------------------------
/src/ch5-logger/appender/AppenderFactory.ts:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2018 to the present, Crestron Electronics, Inc.
3 | * All rights reserved.
4 | * No part of this software may be reproduced in any form, machine
5 | * or natural, without the express written consent of Crestron Electronics.
6 | * Use of this source code is subject to the terms of the Crestron Software License Agreement
7 | * under which you licensed this source code.
8 | */
9 |
10 | import { AppendersEnum } from '../enums/index';
11 | import { RemoteAppender } from './RemoteAppender';
12 | import { TAppenderConfig } from '../types';
13 |
14 | export class AppenderFactory {
15 |
16 | public getAppender(appender: AppendersEnum, sendLogTimeOffset: number = 0, appenderConfig: TAppenderConfig) {
17 |
18 | if (appender === AppendersEnum.remote) {
19 | return RemoteAppender.getInstance(sendLogTimeOffset, appenderConfig);
20 | }
21 |
22 | throw new Error('Appender type is invalid');
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/ch5-logger/enums/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export enum LogLevelEnum {
9 | default = 0,
10 | info = 1,
11 | warning = 2,
12 | error = 3,
13 | }
14 |
15 | export enum AppendersEnum {
16 | remote = 'remote',
17 | console = 'console',
18 | }
19 |
20 | export enum LogEndpointsEnum {
21 | log = 'log'
22 | }
23 |
--------------------------------------------------------------------------------
/src/ch5-logger/helpers/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './LogMessage';
9 | export * from './LogMessagesFilter';
10 |
--------------------------------------------------------------------------------
/src/ch5-logger/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './helpers/index';
9 | export * from './logger/index';
10 | export * from './utility/index';
11 |
--------------------------------------------------------------------------------
/src/ch5-logger/logger/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export { Logger } from './Logger';
9 |
--------------------------------------------------------------------------------
/src/ch5-logger/services/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './RequestService';
9 |
--------------------------------------------------------------------------------
/src/ch5-logger/types/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { LogLevelEnum } from '../enums/index';
9 |
10 | export type TDataLog = {
11 | level: LogLevelEnum;
12 | source: string;
13 | message: string;
14 | }
15 |
16 | export type TLogMessageType = any[];
17 |
18 | export type TAppenderConfig = {
19 | hostname: string; // hostname or IP
20 | port: string;
21 | secure: boolean;
22 | };
--------------------------------------------------------------------------------
/src/ch5-logger/utility/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './getLogger';
9 | export * from './getRemoteAppender';
10 | export * from './uriSchemaValidation';
11 |
--------------------------------------------------------------------------------
/src/ch5-logger/utility/uriSchemaValidation.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export function uriSchemaValidation(uri: string) {
9 | // TODO Implement URI schema validation
10 | return uri !== '';
11 | }
12 |
--------------------------------------------------------------------------------
/src/ch5-modal-dialog/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-modal-dialog';
9 |
--------------------------------------------------------------------------------
/src/ch5-modal-dialog/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-modal-dialog-attributes";
--------------------------------------------------------------------------------
/src/ch5-modal-dialog/readme.md:
--------------------------------------------------------------------------------
1 | # Crestron ch5-modal-dialog web component
--------------------------------------------------------------------------------
/src/ch5-overlay-panel/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-overlay-panel';
9 |
--------------------------------------------------------------------------------
/src/ch5-overlay-panel/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-overlay-panel-attributes";
9 | export * from "./t-ch5-overlay-panel";
--------------------------------------------------------------------------------
/src/ch5-overlay-panel/interfaces/t-ch5-overlay-panel.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5OverlayPanelPositionOffset = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center'
9 | | 'bottom-right' | 'left-center' | 'right-center';
10 |
11 | export type TCh5OverlayPanelOverflow = 'scroll' | 'show';
12 |
13 | export type TCh5OverlayPanelStretch = 'both' | 'width' | 'height';
--------------------------------------------------------------------------------
/src/ch5-overlay-panel/readme.md:
--------------------------------------------------------------------------------
1 | # Crestron ch5-overlay-panel web component
2 |
3 |
--------------------------------------------------------------------------------
/src/ch5-qrcode/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-qrcode';
--------------------------------------------------------------------------------
/src/ch5-qrcode/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-qrcode-attributes';
2 | export * from './i-ch5-qrcode-documentation';
3 |
--------------------------------------------------------------------------------
/src/ch5-resync/models/ch5-clear-range-data-model.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export interface ICh5ClearRangeDataModel {
9 | boolean: {
10 | stateNames: string[],
11 | joinLow: number,
12 | joinHigh: number
13 | };
14 | numeric: {
15 | stateNames: string[],
16 | joinLow: number,
17 | joinHigh: number
18 | };
19 | string: {
20 | stateNames: string[],
21 | joinLow: number,
22 | joinHigh: number
23 | };
24 | }
25 |
--------------------------------------------------------------------------------
/src/ch5-resync/models/ch5-exclude-prefixes-model.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export interface ICh5ExcludePrefixesModel {
9 | excludePrefixes: string[];
10 | }
11 |
--------------------------------------------------------------------------------
/src/ch5-resync/models/ch5-resync-constants.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export class Ch5ResyncConstants {
9 | public static readonly JOIN_NUMBER_SIGNAL_NAME_PREFIX = "fb";
10 | }
11 |
--------------------------------------------------------------------------------
/src/ch5-resync/models/ch5-resync-reset-event-names-enum.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export enum ResetEventNames {
9 | startOfUpdateRange = 'StartOfUpdateRange',
10 | startOfUpdateRangeSO = 'StartOfUpdateRangeSO',
11 | clearAll = 'ClearAll',
12 | clearRange = 'ClearRange',
13 | endOfUpdate = 'EndOfUpdate',
14 | startOfUpdate = 'StartOfUpdate',
15 | }
16 |
--------------------------------------------------------------------------------
/src/ch5-resync/models/ch5-states-at-default-value-model.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 |
9 | export type ICh5StatesAtDefaultValueModelJoinNames = Record;
10 | export type ICh5StatesAtDefaultValueModel = Record;
11 |
--------------------------------------------------------------------------------
/src/ch5-resync/models/resynchronization-request-model.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5ClearRangeDataModel } from "./ch5-clear-range-data-model";
9 |
10 | export interface IResynchronizationRequestModel {
11 | id: string;
12 | state: string;
13 | value?: {
14 | excludePrefixes?: string[],
15 | range?: ICh5ClearRangeDataModel
16 | };
17 | }
18 |
--------------------------------------------------------------------------------
/src/ch5-segmented-gauge/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-segmented-gauge';
--------------------------------------------------------------------------------
/src/ch5-segmented-gauge/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-segmented-gauge';
2 | export * from './i-ch5-segmented-gauge-attributes';
3 | export * from './i-ch5-segmented-gauge-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-segmented-gauge/interfaces/t-ch5-segmented-gauge.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SegmentedGaugeOrientation = 'horizontal' | 'vertical';
9 | export type TCh5SegmentedGaugeGaugeLedStyle = 'rectangle' | 'circle';
10 | export type TCh5SegmentedGaugeStateGraphic = 'green' | 'yellow' | 'red' | 'blue' | 'orange' | 'white' | 'inactive';
11 |
--------------------------------------------------------------------------------
/src/ch5-select-option/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-select-option';
9 |
--------------------------------------------------------------------------------
/src/ch5-select-option/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-select-option-attributes";
--------------------------------------------------------------------------------
/src/ch5-select-option/interfaces/types/t-ch5-select-option-icon-position.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SelectOptionIconPosition = 'first' | 'last';
9 |
--------------------------------------------------------------------------------
/src/ch5-select/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-select';
9 |
--------------------------------------------------------------------------------
/src/ch5-select/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./t-ch5-select";
9 | export * from "./i-ch5-select-attributes";
--------------------------------------------------------------------------------
/src/ch5-select/interfaces/t-ch5-select.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SelectIconPosition = 'first' | 'last';
9 |
10 | export type TCh5SelectMode = 'plain' | 'panel';
11 |
--------------------------------------------------------------------------------
/src/ch5-signal-level-gauge/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-signal-level-gauge';
--------------------------------------------------------------------------------
/src/ch5-signal-level-gauge/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-signal-level-gauge';
2 | export * from './i-ch5-signal-level-gauge-attributes';
3 | export * from './i-ch5-signal-level-gauge-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-signal-level-gauge/interfaces/t-ch5-signal-level-gauge.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SignalLevelGaugeOrientation = 'horizontal' | 'vertical';
9 | export type TCh5SignalLevelGaugeSize = 'regular' | 'small' | 'large' | 'x-large';
10 |
11 |
--------------------------------------------------------------------------------
/src/ch5-slider/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-slider';
2 | export * from './ch5-slider-button';
3 |
--------------------------------------------------------------------------------
/src/ch5-slider/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-slider';
2 | export * from './i-ch5-slider-attributes';
3 | export * from './i-ch5-slider-documentation';
4 | export * from './t-ch5-slider-button';
5 | export * from './i-ch5-slider-button-attributes';
6 | export * from './i-ch5-slider-button-documentation';
7 | export * from './i-ch5-slider-title-label-attributes';
8 | export * from './i-ch5-slider-title-label-documentation';
9 | export * from './i-ch5-slider-button-label-documentation';
--------------------------------------------------------------------------------
/src/ch5-slider/interfaces/t-ch5-slider-button.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SliderButtonKey = 'on' | 'off';
9 | export type TCh5IconUrlFillType = 'stretch' | 'stretch-aspect' | 'center' | 'tile' | 'initial';
10 | export type TCh5SliderButtonShape = 'rounded-rectangle' | 'rectangle' | 'tab' | 'circle' | 'oval';
11 | export type TCh5SliderButtonVerticalAlignLabel = 'middle' | 'top' | 'bottom';
12 | export type TCh5SliderButtonType = 'default' | 'primary' | 'info' | 'text' | 'danger' | 'warning' | 'success' | 'secondary';
13 | export type TCh5SliderButtonHorizontalAlignLabel = 'left' | 'right' | 'center';
--------------------------------------------------------------------------------
/src/ch5-slider/interfaces/t-ch5-slider.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SliderHandleShape = 'rounded-rectangle' | 'rectangle' | 'circle' | 'oval';
9 | export enum TCh5SliderHandle { VALUE = 0, HIGHVALUE = 1 };
10 | export type TCh5SliderOrientation = 'horizontal' | 'vertical';
11 | export type TCh5SliderSize = 'regular' | 'x-small' | 'small' | 'large' | 'x-large';
12 | export type TCh5SliderHandleSize = 'regular' | 'x-small' | 'small' | 'large' | 'x-large';
13 | export type TCh5SliderStretch = 'both' | 'height' | 'width';
14 | export type TCh5SliderToolTipShowType = 'off' | 'on' | 'auto';
15 | export type TCh5SliderToolTipDisplayType = '%' | 'value';
--------------------------------------------------------------------------------
/src/ch5-slider/readme.md:
--------------------------------------------------------------------------------
1 | # Crestron ch5-slider web component
2 |
3 |
4 |
--------------------------------------------------------------------------------
/src/ch5-spinner/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-spinner';
--------------------------------------------------------------------------------
/src/ch5-spinner/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './i-ch5-spinner-attributes';
9 | export * from './t-ch5-spinner';
--------------------------------------------------------------------------------
/src/ch5-spinner/interfaces/t-ch5-spinner.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SpinnerFeedbackModes = 'direct' | 'submit';
9 |
10 | export type TCh5SpinnerIconPosition = 'first' | 'last';
--------------------------------------------------------------------------------
/src/ch5-subpage-reference-list/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-subpage-reference-list';
2 | export { refreshCh5subpageReferenceList } from './refresh-ch5-subpage-reference-list';
--------------------------------------------------------------------------------
/src/ch5-subpage-reference-list/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-subpage-reference-list';
2 | export * from './i-ch5-subpage-reference-list-attributes';
3 | export * from './i-ch5-subpage-reference-list-documentation';
4 |
--------------------------------------------------------------------------------
/src/ch5-subpage-reference-list/interfaces/t-ch5-subpage-reference-list.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5SubpageReferenceListStretch = 'both';
9 | export type TCh5SubpageReferenceListOrientation = 'horizontal' | 'vertical';
10 | export type TCh5SubpageReferenceListAttributesLoadItems = 'visible-only' | 'load-new' | 'all';
--------------------------------------------------------------------------------
/src/ch5-subpage-reference-list/refresh-ch5-subpage-reference-list.ts:
--------------------------------------------------------------------------------
1 | import { Subject } from "rxjs";
2 |
3 | export const ch5subpageReferenceListSubject = new Subject();
4 |
5 | export const refreshCh5subpageReferenceList = (ch5subpageReferenceListId: string) => {
6 | ch5subpageReferenceListSubject.next(ch5subpageReferenceListId);
7 | }
--------------------------------------------------------------------------------
/src/ch5-tab-button/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-tab-button';
2 | export * from './ch5-tab-button-label';
3 | export * from './ch5-tab-button-individual-button';
--------------------------------------------------------------------------------
/src/ch5-tab-button/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-tab-button-attributes';
2 | export * from './i-ch5-tab-button-documentation';
3 | export * from './i-ch5-tab-button-label-documentation';
4 | export * from './i-ch5-tab-button-individual-button-attributes';
5 | export * from './i-ch5-tab-button-individual-button-documentation';
6 |
--------------------------------------------------------------------------------
/src/ch5-tab-button/interfaces/t-for-ch5-button-list-contract.ts:
--------------------------------------------------------------------------------
1 | export interface ICh5ButtonListContractObj {
2 | index: number;
3 | clickHoldTime: number;
4 | contractName: string;
5 | parentComponent: string;
6 | };
--------------------------------------------------------------------------------
/src/ch5-template/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-template';
9 | export { refreshCh5Template } from './refresh-ch5-template';
10 |
--------------------------------------------------------------------------------
/src/ch5-template/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './i-ch5-template-attributes';
9 |
--------------------------------------------------------------------------------
/src/ch5-template/refresh-ch5-template.ts:
--------------------------------------------------------------------------------
1 | import { Subject } from "rxjs";
2 |
3 | export const ch5TemplateSubject = new Subject();
4 |
5 | export const refreshCh5Template = (ch5TemplateId: string) => {
6 | ch5TemplateSubject.next(ch5TemplateId);
7 | }
--------------------------------------------------------------------------------
/src/ch5-text/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-text';
2 |
--------------------------------------------------------------------------------
/src/ch5-text/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-text-attributes';
2 | export * from './i-ch5-text-documentation';
3 | export * from './t-ch5-text';
4 |
--------------------------------------------------------------------------------
/src/ch5-text/interfaces/t-ch5-text.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5TextHorizontalAlignment = 'center' | 'left' | 'right';
9 | export type TCh5TextVerticalAlignment = 'middle' | 'top' | 'bottom';
10 |
--------------------------------------------------------------------------------
/src/ch5-textinput/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-textinput';
--------------------------------------------------------------------------------
/src/ch5-textinput/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-text-input";
9 | export * from './i-ch5-text-input-attributes';
10 | export * from "./t-ch5-text-input";
--------------------------------------------------------------------------------
/src/ch5-textinput/interfaces/t-ch5-text-input.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5TextInputSize = 'regular' | 'x-small' | 'small' | 'large' | 'x-large';
9 |
10 | export type TCh5TextInputIconPosition = 'first' | 'last';
11 |
12 | export type TCh5TextInputStretch = 'fixed' | 'width' | 'content';
13 |
14 | export type TCh5TextInputTextTransform = 'none' | 'capitalize' | 'uppercase' | 'lowercase';
15 |
16 | export type TCh5TextInputType = 'text' | 'number' | 'email' | 'password';
17 |
18 |
--------------------------------------------------------------------------------
/src/ch5-toggle/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-toggle';
--------------------------------------------------------------------------------
/src/ch5-toggle/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-toggle-attributes';
2 | export * from './i-ch5-toggle-documentation';
3 | export * from './t-ch5-toggle';
--------------------------------------------------------------------------------
/src/ch5-toggle/interfaces/t-ch5-toggle.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2023 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5ToggleHandleShape = 'circle' | 'rectangle';
9 | export type TCh5ToggleOrientation = 'horizontal' | 'vertical';
10 | export type TCh5ToggleSize = 'regular' | 'x-small' | 'small' | 'large' | 'x-large';
11 | export type TCh5ToggleFeedbackMode = 'direct' | 'submit';
12 |
--------------------------------------------------------------------------------
/src/ch5-touch/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-touch-activity';
9 |
--------------------------------------------------------------------------------
/src/ch5-triggerview/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-triggerview-child';
9 | export * from './ch5-triggerview';
--------------------------------------------------------------------------------
/src/ch5-triggerview/interfaces/i-ch5-triggerview-child-documentation.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | import { ICh5TriggerViewChildAttributes } from ".";
9 | import { ICh5Common } from "../../ch5-common/interfaces";
10 |
11 | /**
12 | * @ignore
13 | */
14 | export interface ICh5TriggerViewChildDocumentation extends ICh5Common, ICh5TriggerViewChildAttributes {
15 | }
--------------------------------------------------------------------------------
/src/ch5-triggerview/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from "./i-ch5-triggerview-attributes";
9 | export * from "./i-ch5-triggerview-child-attributes";
--------------------------------------------------------------------------------
/src/ch5-video-switcher/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-video-switcher';
2 | export * from './ch5-video-switcher-screen';
3 | export * from './ch5-video-switcher-screen-label';
4 | export * from './ch5-video-switcher-source';
5 | export * from './ch5-video-switcher-source-label';
--------------------------------------------------------------------------------
/src/ch5-video-switcher/interfaces/i-ch5-video-switcher-screen-attributes.ts:
--------------------------------------------------------------------------------
1 | import { TCh5VideoSwitcherScreenAlignLabel } from "./t-ch5-video-switcher";
2 |
3 | /**
4 | * @ignore
5 | */
6 | export interface ICh5VideoSwitcherScreenAttributes {
7 | /**
8 | * @documentation
9 | * [
10 | * "`labelInnerHTML` attribute",
11 | * "***",
12 | * "Ability to provide a template that applies for the individual screen in the list."
13 | * ]
14 | * @name labelinnerhtml
15 | * @attributeType "String"
16 | * @hidden true
17 | */
18 | labelInnerHTML: string;
19 | /**
20 | * @documentation
21 | * [
22 | * "`alignLabel` attribute",
23 | * "***",
24 | * "Set the label alignment on the screen window as either left, center(default) and right."
25 | * ]
26 | * @name alignlabel
27 | * @default center
28 | * @attributeType "EnumeratedValue"
29 | */
30 | alignLabel: TCh5VideoSwitcherScreenAlignLabel;
31 | }
--------------------------------------------------------------------------------
/src/ch5-video-switcher/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './i-ch5-video-switcher-attributes';
2 | export * from './i-ch5-video-switcher-documentation';
3 | export * from './i-ch5-video-switcher-screen-attributes';
4 | export * from './i-ch5-video-switcher-screen-documentation';
5 | export * from './i-ch5-video-switcher-screen-label-documentation';
6 | export * from './i-ch5-video-switcher-source-attributes';
7 | export * from './i-ch5-video-switcher-source-documentation';
8 | export * from './i-ch5-video-switcher-source-label-documentation';
9 | export * from './t-ch5-video-switcher';
--------------------------------------------------------------------------------
/src/ch5-video-switcher/interfaces/t-ch5-video-switcher.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2024 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5VideoSwitcherSourceListPosition = 'top' | 'left' | 'right' | 'bottom';
9 | export type TCh5VideoSwitcherScreenAspectRatio = 'stretch' | '16:9' | '4:3';
10 | export type TCh5VideoSwitcherContractSourceLabelType = 'none' | 'textContent' | 'innerHTML';
11 | export type TCh5VideoSwitcherContractScreenLabelType = 'none' | 'textContent' | 'innerHTML';
12 | export type TCh5VideoSwitcherScreenAlignLabel = 'center' | 'left' | 'right';
--------------------------------------------------------------------------------
/src/ch5-video/ch5-video-utils.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export class CH5VideoUtils {
9 |
10 | public static readonly VIDEO_ACTION = {
11 | START: 'start',
12 | STARTED: 'started',
13 | STOP: 'stop',
14 | STOPPED: 'stopped',
15 | RESIZE: 'resize',
16 | RESIZED: 'resized',
17 | REFILL: 'refill',
18 | SNAPSHOT: 'snapshot',
19 | MARK: 'mark',
20 | NOURL: 'nourl',
21 | FULLSCREEN: 'fullscreen',
22 | ERROR: 'error',
23 | EMPTY: ''
24 | };
25 |
26 | }
--------------------------------------------------------------------------------
/src/ch5-video/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-video';
--------------------------------------------------------------------------------
/src/ch5-video/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './t-ch5-video';
9 | export * from './i-ch5-video-helper';
10 | export * from './i-ch5-video-attributes';
11 | export * from './i-ch5-video-documentation';
--------------------------------------------------------------------------------
/src/ch5-video/interfaces/t-ch5-video.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5VideoAspectRatio = '16:9' | '4:3';
9 | export type TCh5VideoSourceType = 'Network' | 'HDMI';
10 | export type TCh5VideoSize = 'regular' | 'x-small' | 'small' | 'large' | 'x-large' | 'xx-large';
11 |
--------------------------------------------------------------------------------
/src/ch5-wifi-signal-level-gauge/index.ts:
--------------------------------------------------------------------------------
1 | export * from './ch5-wifi-signal-level-gauge';
--------------------------------------------------------------------------------
/src/ch5-wifi-signal-level-gauge/interfaces/index.ts:
--------------------------------------------------------------------------------
1 | export * from './t-ch5-wifi-signal-level-gauge';
2 | export * from './i-ch5-wifi-signal-level-gauge-attributes';
3 | export * from './i-ch5-wifi-signal-level-gauge-documentation';
--------------------------------------------------------------------------------
/src/ch5-wifi-signal-level-gauge/interfaces/t-ch5-wifi-signal-level-gauge.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2022 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export type TCh5WifiSignalLevelGaugeGaugeStyle = 'light' | 'accents' | 'dark';
9 | export type TCh5WifiSignalLevelGaugeAlignment = 'up' | 'down' | 'left' | 'right';
10 | export type TCh5WifiSignalLevelGaugeSize = 'regular' | 'small' | 'large' | 'x-large';
11 |
12 |
--------------------------------------------------------------------------------
/src/typings/dragdroptouch.d.ts:
--------------------------------------------------------------------------------
1 | declare module "drag-drop-touch";
--------------------------------------------------------------------------------
/src/typings/mycolorpicker.d.ts:
--------------------------------------------------------------------------------
1 | declare module "@raghavendradabbir/mycolorpicker";
--------------------------------------------------------------------------------
/src/utility-models/index.ts:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2018 to the present, Crestron Electronics, Inc.
2 | // All rights reserved.
3 | // No part of this software may be reproduced in any form, machine
4 | // or natural, without the express written consent of Crestron Electronics.
5 | // Use of this source code is subject to the terms of the Crestron Software License Agreement
6 | // under which you licensed this source code.
7 |
8 | export * from './ch5-role-attribute-mapping';
9 |
--------------------------------------------------------------------------------
/tsconfig.amd.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.base",
3 | "compilerOptions": {
4 | "module": "amd", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
5 | "outDir": "./compiled_bundles/amd", /* Redirect output structure to the directory. */
6 | "declarationDir": "./compiled_bundles/amd"
7 | }
8 | }
--------------------------------------------------------------------------------
/tsconfig.cjs.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.base",
3 | "compilerOptions": {
4 | "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
5 | "outDir": "./compiled_bundles/cjs", /* Redirect output structure to the directory. */
6 | "declarationDir": "./compiled_bundles/cjs"
7 | }
8 | }
--------------------------------------------------------------------------------
/tsconfig.esm.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.base",
3 | "compilerOptions": {
4 | "moduleResolution":"node",
5 | "allowSyntheticDefaultImports": true,
6 | "target": "es6",
7 | "module": "es6", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
8 | "outDir": "./compiled_bundles/esm", /* Redirect output structure to the directory. */
9 | "declarationDir": "./compiled_bundles/esm"
10 | }
11 | }
--------------------------------------------------------------------------------
/tsconfig.umd.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.base",
3 | "compilerOptions": {
4 | "module": "umd", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
5 | "outDir": "./compiled_bundles/umd", /* Redirect output structure to the directory. */
6 | "declarationDir": "./compiled_bundles/umd"
7 | },
8 | "include": ["**/*.ts"]
9 | }
--------------------------------------------------------------------------------
/tsconfig.webpack.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.cjs",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "outDir": null,
6 | "declarationDir": "./@types"
7 | }
8 | }
--------------------------------------------------------------------------------
/tsconfig.webpack_implicit_ce.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.cjs",
3 | "compilerOptions": {
4 | "module": "commonjs",
5 | "target": "es6",
6 | "outDir": null,
7 | "declarationDir": "./@types"
8 | }
9 | }
--------------------------------------------------------------------------------
/wct.conf.json:
--------------------------------------------------------------------------------
1 | {
2 | "plugins": {
3 | "local": {
4 | "disabled": false,
5 | "browsers": [
6 | "chrome"
7 | ],
8 | "browserOptions": {
9 | "chrome": [
10 | "window-size=1920,1080",
11 | "headless",
12 | "disable-gpu"
13 | ]
14 | }
15 | },
16 | "junit-reporter": {}
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/idea.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/lists.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_0.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_4.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_5.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/nav_icon_6.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/ok.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/page.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/something.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/wct_tests/assets/img/video.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/wct_tests/ch5-accessibility-attributes/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/wct_tests/ch5-animation/emulator/noShowType.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_remove",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "string",
11 | "logic": "remove"
12 | }
13 | ]
14 | },
15 | {
16 | "type": "boolean",
17 | "event": "trigger_display",
18 | "trigger": true,
19 | "actions": [
20 | {
21 | "state": "trigger_event_listener",
22 | "type": "string",
23 | "logic": "display"
24 | }
25 | ]
26 | },
27 | {
28 | "type": "boolean",
29 | "event": "trigger_visibility",
30 | "trigger": true,
31 | "actions": [
32 | {
33 | "state": "trigger_event_listener",
34 | "type": "string",
35 | "logic": "visibility"
36 | }
37 | ]
38 | }
39 | ]
40 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-animation/emulator/receivestateanimate.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-animation/emulator/receivestateanimationstyle.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_0",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "s",
11 | "logic": "set",
12 | "value": "roller"
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_1",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "s",
24 | "logic": "set",
25 | "value": "spinner"
26 | }
27 | ]
28 | },
29 | {
30 | "type": "boolean",
31 | "event": "trigger_event_2",
32 | "trigger": true,
33 | "actions": [
34 | {
35 | "state": "trigger_event_listener",
36 | "type": "s",
37 | "logic": "set",
38 | "value": "ring"
39 | }
40 | ]
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-animation/emulator/receivestateframespersecond.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener_2",
23 | "type": "n",
24 | "logic": "set",
25 | "value": -10
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-background/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
22 |
23 |
--------------------------------------------------------------------------------
/wct_tests/ch5-button/emulator/alignments.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_set_selected_state",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "receive_selected_state",
10 | "type": "b",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-button/emulator/checkbox.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_type_change_danger",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "current_type",
10 | "type": "s",
11 | "logic": "set",
12 | "value": "danger"
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_type_change_warning",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "current_type",
23 | "type": "s",
24 | "logic": "set",
25 | "value": "warning"
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-button/emulator/selected.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "hall_lights_tap",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "hall_lights_selected",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-chip/emulator/sendEventColorBlueOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": "change",
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "set",
12 | "value": 134
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "set",
25 | "value": 176
26 | }
27 | ]
28 | },
29 | {
30 | "type": "boolean",
31 | "event": "trigger_Blue",
32 | "trigger": true,
33 | "actions": [
34 | {
35 | "state": "trigger_event_listener",
36 | "type": "n",
37 | "logic": "set",
38 | "value": 126
39 | }
40 | ]
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-chip/emulator/sendEventColorGreenOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": "change",
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "set",
12 | "value": 134
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "set",
25 | "value": 176
26 | }
27 | ]
28 | },
29 | {
30 | "type": "boolean",
31 | "event": "trigger_Blue",
32 | "trigger": true,
33 | "actions": [
34 | {
35 | "state": "trigger_event_listener",
36 | "type": "n",
37 | "logic": "set",
38 | "value": 126
39 | }
40 | ]
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-chip/emulator/sendEventColorRedOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": "change",
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "set",
12 | "value": 134
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "set",
25 | "value": 176
26 | }
27 | ]
28 | },
29 | {
30 | "type": "boolean",
31 | "event": "trigger_Blue",
32 | "trigger": true,
33 | "actions": [
34 | {
35 | "state": "trigger_event_listener",
36 | "type": "n",
37 | "logic": "set",
38 | "value": 126
39 | }
40 | ]
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-chip/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/emulator/receiveStateBlueValue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/emulator/receiveStateGreenValue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/emulator/receiveStateRedValue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/emulator/sendEventColorBlueOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 1
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/emulator/sendEventColorGreenOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 1
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/emulator/sendEventColorRedOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 1
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-color-picker/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/wct_tests/ch5-datetime/js/helper.js:
--------------------------------------------------------------------------------
1 | async function runSinonSetTimeout(time, clock) {
2 | return new Promise((resolve) => {
3 | setTimeout(resolve, time);
4 | clock && clock.tick(time);
5 | });
6 | }
7 |
8 | async function runSinonTimer(time, clock) {
9 | await runSinonSetTimeout(time, clock);
10 | }
11 |
--------------------------------------------------------------------------------
/wct_tests/ch5-dpad/emulator/receivestatedisablecenterbutton.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-dpad/emulator/receivestatehidecenterbutton.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-dpad/emulator/receivestatenumericjoins.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "6",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "fb6",
10 | "type": "boolean",
11 | "value": true
12 | }
13 | ]
14 | }
15 | ],
16 | "onStart" : [{
17 | "state": "fb6",
18 | "type": "boolean",
19 | "value": true
20 | }]
21 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-form/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
25 |
26 |
--------------------------------------------------------------------------------
/wct_tests/ch5-image/emulator/receivestateallowpositiondatatobesent.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-image/emulator/receivestateallowvaluesonmove.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-image/emulator/sendeventxposition.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-image/emulator/sendeventyposition.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-import-htmlsnippet/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
15 |
16 |
--------------------------------------------------------------------------------
/wct_tests/ch5-jointotext-boolean/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/wct_tests/ch5-jointotext-numeric/emulator/receivestatevalue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_change_value",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "temperature",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 5
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-jointotext-numeric/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/wct_tests/ch5-jointotext-string/emulator/receivestatevalue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_change_value",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "garage_door_status",
10 | "type": "s",
11 | "logic": "set",
12 | "value": "No feedback"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-jointotext-string/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/wct_tests/ch5-keypad/emulator/receivestateextrabuttonshow.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "receive_trigger_event",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | },
15 | {
16 | "type": "boolean",
17 | "event": "trigger_event_1",
18 | "trigger": true,
19 | "actions": [
20 | {
21 | "state": "receive_state_event_1",
22 | "type": "boolean",
23 | "logic": "set",
24 | "value": true
25 | }
26 | ]
27 | }
28 | ]
29 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-keypad/emulator/receivestatehideasteriskbutton.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-keypad/emulator/receivestatehidepoundbutton.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-list/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
18 |
19 |
--------------------------------------------------------------------------------
/wct_tests/ch5-modal-dialog/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/wct_tests/ch5-overlay-panel/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
15 |
16 |
--------------------------------------------------------------------------------
/wct_tests/ch5-qrcode/emulator/noShowType.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_remove",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "string",
11 | "logic": "remove"
12 | }
13 | ]
14 | },
15 | {
16 | "type": "boolean",
17 | "event": "trigger_display",
18 | "trigger": true,
19 | "actions": [
20 | {
21 | "state": "trigger_event_listener",
22 | "type": "string",
23 | "logic": "display"
24 | }
25 | ]
26 | },
27 | {
28 | "type": "boolean",
29 | "event": "trigger_visibility",
30 | "trigger": true,
31 | "actions": [
32 | {
33 | "state": "trigger_event_listener",
34 | "type": "string",
35 | "logic": "visibility"
36 | }
37 | ]
38 | }
39 | ]
40 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-qrcode/emulator/receivestateqrcode.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "set_qr_code",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "type": "string",
10 | "state": "receive_qr_code",
11 | "logic": "set",
12 | "value": "https://crestron.com/"
13 | }
14 | ]
15 | }
16 | ],
17 | "onStart": [
18 | {
19 | "state": "receive_qr_code",
20 | "type": "string",
21 | "value": "https://www.crestron.com/Products/Audio/Accessories/Power-Accessories"
22 | }
23 | ]
24 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-qrcode/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/wct_tests/ch5-segmented-gauge/emulator/preloadcachepage.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 3277.5
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 3277.5
26 | }
27 | ]
28 | }
29 | ],
30 | "onStart": [
31 | {
32 | "state": "trigger_event_listener",
33 | "type": "number",
34 | "value": 20
35 | }
36 | ]
37 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-segmented-gauge/emulator/receivestatevalue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "set",
12 | "value": 200
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "set",
25 | "value": -10000
26 | }
27 | ]
28 | },
29 | {
30 | "type": "boolean",
31 | "event": "trigger_event_3",
32 | "trigger": true,
33 | "actions": [
34 | {
35 | "state": "trigger_event_listener",
36 | "type": "n",
37 | "logic": "set",
38 | "value": 65537
39 | }
40 | ]
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-segmented-gauge/emulator/sendeventonclick.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-select/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/wct_tests/ch5-slider/emulator/preloadcachepage.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_0",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener_0",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | },
15 | {
16 | "type": "boolean",
17 | "event": "trigger_event_1",
18 | "trigger": true,
19 | "actions": [
20 | {
21 | "state": "trigger_event_listener_1",
22 | "type": "boolean",
23 | "logic": "toggle"
24 | }
25 | ]
26 | },
27 | {
28 | "type": "boolean",
29 | "event": "trigger_event_2",
30 | "trigger": true,
31 | "actions": [
32 | {
33 | "state": "trigger_event_listener_2",
34 | "type": "boolean",
35 | "logic": "toggle"
36 | }
37 | ]
38 | }
39 | ]
40 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-slider/emulator/receivestateicons.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "s",
11 | "logic": "set",
12 | "value": "fas fa-user"
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener_1",
23 | "type": "s",
24 | "logic": "set",
25 | "value": "https://img.icons8.com/material/24/000000/search.png"
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-slider/emulator/receivestatelabel.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "s",
11 | "logic": "set",
12 | "value": "Advance"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-slider/emulator/receivestateshowonoffonly.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "b",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-spinner/emulator/receiveStateSize.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "b",
5 | "event": "trig1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "receive_spinner_size",
10 | "type": "number",
11 | "logic": "set",
12 | "value": 10
13 | }
14 | ]
15 | },
16 | {
17 | "type": "b",
18 | "event": "trig2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "receive_spinner_size",
23 | "type": "number",
24 | "logic": "set",
25 | "value": 30
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-spinner/emulator/receiveStateValue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "b",
5 | "event": "trig1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "receive_spinner_value",
10 | "type": "number",
11 | "logic": "set",
12 | "value": 5
13 | }
14 | ]
15 | },
16 | {
17 | "type": "b",
18 | "event": "trig2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "receive_spinner_value",
23 | "type": "number",
24 | "logic": "set",
25 | "value": 3
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-spinner/emulator/sendEventOnChange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | { "type": "number",
4 | "event": "spin1.change",
5 | "trigger": "&change",
6 | "actions": [
7 | {
8 | "state": "spin1.value",
9 | "type": "number",
10 | "logic": "set",
11 | "value": 5
12 | }
13 | ]
14 | }
15 | ],
16 | "onStart":[
17 | ]
18 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-spinner/emulator/sendEventOnFocus.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "number",
5 | "event": "slider1.focus",
6 | "trigger": "&focus",
7 | "actions": [
8 | {
9 | "state": "slider1.value",
10 | "type": "number",
11 | "logic": "set",
12 | "value": 5
13 | }
14 | ]
15 | }
16 | ],
17 | "onStart":[
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-spinner/emulator/sendEventOnOverFlow_underFlow.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "b",
5 | "event": "trig1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "btn_receive_label",
10 | "type": "string",
11 | "logic": "set",
12 | "value": "Spinner overflows"
13 | }
14 | ]
15 | },
16 | {
17 | "type": "b",
18 | "event": "trig2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "btn_receive_label",
23 | "type": "string",
24 | "logic": "set",
25 | "value": "Spinner is underoverflow"
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/booleanjoinoffset.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "boolean",
11 | "logic": "toggle"
12 | }
13 | ]
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/numericjoinoffset.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 1
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/receivestatenumberofitems.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "number",
5 | "event": "trigger_signal",
6 | "trigger": "&change",
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "link"
12 | }
13 | ]
14 | }
15 | ],
16 | "onStart": [
17 | {
18 | "state": "trigger_event_listener-0",
19 | "type": "string",
20 | "value": "a"
21 | },
22 | {
23 | "state": "trigger_event_listener-1",
24 | "type": "string",
25 | "value": ""
26 | },
27 | {
28 | "state": "trigger_event_listener-2",
29 | "type": "string",
30 | "value": ""
31 | },
32 | {
33 | "state": "trigger_event_listener-3",
34 | "type": "number",
35 | "value": 10
36 | }
37 | ]
38 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/stringjoinoffset.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "type": "string",
10 | "state": "trigger_event_listener",
11 | "logic": "set",
12 | "value": "String Signal"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/subpagereceivestateenable.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "type": "string",
10 | "state": "trigger_event_listener",
11 | "logic": "set",
12 | "value": "String Signal"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/subpagereceivestatescrollto.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 1
26 | }
27 | ]
28 | }
29 | ]
30 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-subpage-reference-list/emulator/subpagereceivestatevisible.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "type": "string",
10 | "state": "trigger_event_listener",
11 | "logic": "set",
12 | "value": "String Signal"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-tab-button/emulator/receivestatenumberofitems.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "number",
5 | "event": "trigger_signal",
6 | "trigger": "&change",
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "link"
12 | }
13 | ]
14 | }
15 | ],
16 | "onStart": [
17 | {
18 | "state": "trigger_event_listener-0",
19 | "type": "string",
20 | "value": "a"
21 | },
22 | {
23 | "state": "trigger_event_listener-1",
24 | "type": "string",
25 | "value": ""
26 | },
27 | {
28 | "state": "trigger_event_listener-2",
29 | "type": "string",
30 | "value": ""
31 | },
32 | {
33 | "state": "trigger_event_listener-3",
34 | "type": "number",
35 | "value": 10
36 | }
37 | ]
38 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-template/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/wct_tests/ch5-text/emulator/receivestatelabel.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "type": "string",
10 | "state": "trigger_event_listener",
11 | "logic": "set",
12 | "value": "String Signal"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-text/emulator/receivestatescriptlabelhtml.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "type": "string",
10 | "state": "trigger_event_listener",
11 | "logic": "set",
12 | "value": "String Signal"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-text/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/wct_tests/ch5-textinput/emulator/receivestatefocus.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-textinput/emulator/receivestatevalue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-textinput/emulator/sendeventonblur.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-textinput/emulator/sendeventonchange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-textinput/emulator/sendeventonfocus.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-toggle/emulator/receivestatescriptlabelhtml.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-toggle/emulator/receivestatevalue.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-toggle/emulator/sendeventonclick.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-triggerview/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
18 |
19 |
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/receivestatenumberofscreens.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 | {
4 | "type": "boolean",
5 | "event": "trigger_event_1",
6 | "trigger": true,
7 | "actions": [
8 | {
9 | "state": "trigger_event_listener",
10 | "type": "n",
11 | "logic": "increment",
12 | "offset": 1
13 | }
14 | ]
15 | },
16 | {
17 | "type": "boolean",
18 | "event": "trigger_event_2",
19 | "trigger": true,
20 | "actions": [
21 | {
22 | "state": "trigger_event_listener",
23 | "type": "n",
24 | "logic": "decrement",
25 | "offset": 1
26 | }
27 | ]
28 | }
29 | ],
30 | "onStart": [
31 | {
32 | "state": "trigger_event_listener",
33 | "type": "number",
34 | "value": 5
35 | }
36 | ]
37 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/receivestatescreenlabel.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/receivestatescriptscreenlabelhtml.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/receivestatescriptsourcelabelhtml.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/receivestatesourcechanged.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/receivestatesourcelabel.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/sendeventonchange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video-switcher/emulator/sendeventondrop.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestatepassword.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestateplay.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestateselect.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestatesnapshotpassword.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestatesnapshotrefreshrate.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestatesnapshoturl.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestatesnapshotuserid.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestateurl.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestateuserid.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/receivestatevideocount.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventerrorcode.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventerrormessage.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventonclick.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "boolean",
12 | "logic": "toggle"
13 | }
14 | ]
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventresolution.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventretrycount.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventselectionchange.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventselectionsourcetype.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventselectionurl.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventsnapshotlastupdatetime.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventsnapshotstatus.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventsnapshoturl.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "type": "string",
11 | "state": "trigger_event_listener",
12 | "logic": "set",
13 | "value": "String Signal"
14 | }
15 | ]
16 | }
17 |
18 | ]
19 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-video/emulator/sendeventstate.json:
--------------------------------------------------------------------------------
1 | {
2 | "cues": [
3 |
4 | {
5 | "type": "boolean",
6 | "event": "trigger_event_1",
7 | "trigger": true,
8 | "actions": [
9 | {
10 | "state": "trigger_event_listener",
11 | "type": "n",
12 | "logic": "increment",
13 | "offset": 1
14 | }
15 | ]
16 | },
17 | {
18 | "type": "boolean",
19 | "event": "trigger_event_2",
20 | "trigger": true,
21 | "actions": [
22 | {
23 | "state": "trigger_event_listener",
24 | "type": "n",
25 | "logic": "decrement",
26 | "offset": 1
27 | }
28 | ]
29 | }
30 | ]
31 | }
--------------------------------------------------------------------------------
/wct_tests/ch5-wifi-signal-level-gauge/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/wct_tests/component-config/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
15 |
16 |
--------------------------------------------------------------------------------
/wct_tests/general/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/wct_tests/join-nr-as-signal-names/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/wct_tests/language-translation/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/wct_tests/language-translation/language-translation.js:
--------------------------------------------------------------------------------
1 | crComLibTranslator = CrComLib.translationFactory.translator;
2 | CrComLib.registerTranslationInterface(crComLibTranslator, "-+", "+-");
3 | crComLibTranslator.init({
4 | fallbackLng: "en",
5 | language: "en",
6 | debug: true,
7 | resources: {
8 | en: {
9 | translation: {
10 | label: "EN",
11 | },
12 | },
13 | de: {
14 | translation: {
15 | label: "DE",
16 | },
17 | },
18 | cz: {
19 | translation: {
20 | label: "CZ",
21 | },
22 | },
23 | },
24 | });
25 |
--------------------------------------------------------------------------------