Skip to main content

A package for building Platform Guides in Switch Automation Platform.

Project description

Switch Automation library for Python

This is a package for building configurable UI/UX experiences on the Switch Automation software platform.

You can find out more about the platform on Switch Automation

Getting started

Prerequisites

Install the package

Install the Switch Guides library for Python with pip:

pip install switch-guides

History

0.2.2

Added

  • Option for explicitly enabling periodic status checking
  • Usage
    •     def definition(self) -> SwitchGuideStepDefinition:
              return SwitchGuideStepDefinition(
                  ...
      	    enablePeriodicStatusCheck=False,
                  ...
              )
      

0.2.1

Added

  • Cache Extensions
    • Provides a convenient way of caching data scoped to a Guide
    • Cache is scoped to a Guide Instance and therefore is only available within a Guide Instance and Portfolio the Guide Instance belongs to.
    • Usage - Setter:
      • import switch_guides as sg
        
        guide_id_example = 'dc25bbeb-8504-4ffa-9389-641cc48cc807'
        cache_key_example = 'my-data'
        
        cache_data = {
            'name': '<some-value>',
        }
        
        cache_result = sg.extensions.cache.set_cache(
            api_inputs=api_inputs, guide_id=guide_id_example, key=cache_key_example, val=cache_data)
        
        if not cache_result or not cache_result['success']:
            print('Error setting cache')
            return
        
    • Usage - Getter:
      • import switch_guides as sg
        import json
        
        guide_id_example = 'dc25bbeb-8504-4ffa-9389-641cc48cc807'
        cache_key_example = 'my-data'
        
        cache_result = sg.extensions.cache.get_cache(
            api_inputs=api_inputs, guide_id=guide_id_example, key=cache_key_example)
        
        if not cache_result or not cache_result['success']:
            print('No cache found')
            return
        
        cache_data = json.loads(cache_result['data'])
        

0.1.19

Added

  • publish_update function to GuideStepDefinitionTask base class
    • Allows live updates to be sent to UI when a step is being processed

0.1.18

Fixed

  • Incorrect Marketplace User Type Default Value

0.1.17

Updated

  • Guide Definition Tags structure

0.1.16

Added

  • Step options to SwitchGuideStepDependency to control Step state per Guide definition
  • Extend SwitchGuideDefinitionOptions with availableOnMarketplaceForUserType to control whether the Guide is visible on the Marketplace
    • Options are None, All, or SwitchUserOnly

0.1.15

Added

  • Switch Forms Extensions
    • Provides convenience methods for building and fetching form data
      • See method documentation for more information
      • Usage:
        • import switch_api as sw
          import switch_guides as sg
          
          # Build UI Component
          sg.extensions.forms.define_ui_component(form_id=form_id)
          
          # Fetch Form Data
          form_data = sg.extensions.forms.get_data(api_inputs=api_inputs, form_id=form_id)
          section = form_data.getSectionById(1) # or form_data.getSectionByName('Section Name') 
          field = section.getFieldById(1) # or form_data.getFieldByLabel('Field Label')
          field_value = field.value
          

0.1.14

Updated

  • Improved Guide Definition Registration Responses
    • Errors associated with registration will be available in the responses
  • Documentation for most Guide types and properties

Added

  • Aliases for guide.models modules so they are accessible on top level import
    • Few Examples:
      • import switch_guides as sg
        
        sg.tasks.GuideStepDefinitionTask
        sg.step.SwitchGuideStepDefinition
        sg.guide.SwitchGuideDefinition
        sg.api.SwitchGuideStepProcessInput
        
  • GuideStepDefinitionBackgroundTask that runs process() function in the background allowing users to navigate away from the page.
    • Will work in conjunction with LivelyUI APIs so that user can be given live feedback on the progress of the process method.
  • More step control options:
    • uiState now has continueToNextStep and continueToNextStepWhenAvailable available
    • we can now set uiState on process response without requiring status property to be set
      • Example:
        # Instead of:
        return SwitchGuideStepApiResponse(
            status=SwitchGuideStepStatus(
                uiState=SwitchGuideStepStatusUiState(
                    returnToSummary=True
                )
            )
        )
        
        # We can set uiState as:
        return SwitchGuideStepApiResponse(
            uiState=SwitchGuideStepStatusUiState(
                returnToSummary=True
            )
        )
        

0.1.13

Initial Switch Guides Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

switch_guides-0.2.2.tar.gz (23.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

switch_guides-0.2.2-py3-none-any.whl (32.6 kB view details)

Uploaded Python 3

File details

Details for the file switch_guides-0.2.2.tar.gz.

File metadata

  • Download URL: switch_guides-0.2.2.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for switch_guides-0.2.2.tar.gz
Algorithm Hash digest
SHA256 7b391ddf1ddf9fd4eac0ec1c7b1c0e78db03ee73f194015c526f7ade3070466b
MD5 135b958fc4e896e93baa91a227544d95
BLAKE2b-256 e75ac58cb597f1046e112c893400f9fc36a44f95f8af7db77f3c4382d117152b

See more details on using hashes here.

File details

Details for the file switch_guides-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: switch_guides-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 32.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for switch_guides-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5ccf86ef2d3f036207af0735bdb1f3f0e24bedd9187eaa4dd486af5a1b58f7bf
MD5 826b53ec3f71af4ab19f9b0055967b31
BLAKE2b-256 527268c061a7c96adb57e6fa4bc020be3fcb42a08841ccac05239f74d370ee3a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page