Skip to content

Instantly share code, notes, and snippets.

@ajot
Created April 27, 2023 18:25
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save ajot/d46a7a01f2cc6c50aa31c369a9f97ae3 to your computer and use it in GitHub Desktop.
{"name":"1-Lego Sets Per Year (Shared)","description":null,"organizationId":275732,"isEnabled":false,"crontab":"0 0 * * *","timezone":"America/New_York","blockData":[{"top":48,"left":48,"uuid":"994490cc-9c93-4bd0-b12e-5e075758547e","comment":{"body":"This is the entry point for the workflow. ","visible":true,"pluginId":"startTrigger-comment"},"options":{"crontab":"0 0 * * *","timezone":"America/New_York","scheduleType":"interval"},"pluginId":"startTrigger","blockType":"schedule","editorType":"JavascriptQuery","environment":"production","isMinimized":false,"resourceName":"schedule","incomingOnSuccessEdges":[]},{"top":48,"left":560,"uuid":"a3dc06c3-be2e-4b65-9ce7-580e881027ec","comment":{"body":"Get the Lego sets data from Retool Database","visible":true,"pluginId":"getLegoSetsData-comment"},"pluginId":"getLegoSetsData","blockType":"default","editorType":"SqlQueryUnified","environment":"production","resourceName":"e6126c69-42db-442e-bd1e-e3a838fcfc06","incomingOnSuccessEdges":["994490cc-9c93-4bd0-b12e-5e075758547e"]},{"top":48,"left":1072,"uuid":"9f8da8bf-ce89-4179-84ba-d68c36552a42","comment":{"body":"Analyze the data using Pandas, and generate a bar plot using Seaborn, and Matplotlib.","visible":true,"pluginId":"legoSetsPerYear-comment"},"pluginId":"legoSetsPerYear","blockType":"code","dimensions":{"width":666,"height":880},"editorType":"PythonQuery","environment":"production","resourceName":"PythonQuery","incomingOnSuccessEdges":["a3dc06c3-be2e-4b65-9ce7-580e881027ec"]},{"top":960,"left":1584,"uuid":"f0b60629-69fd-45d9-9d1f-5cd6b58d6745","comment":{"body":"Upload the image file to Amazon S3 Bucket","visible":true,"pluginId":"UploadToAmazonS3Bucket-comment"},"pluginId":"UploadToAmazonS3Bucket","blockType":"default","editorType":"S3Query","environment":"production","resourceName":"e0aa33e2-ff6e-47ec-b2b9-e383e32fef8b","incomingOnSuccessEdges":["9f8da8bf-ce89-4179-84ba-d68c36552a42"]},{"top":960,"left":2608,"uuid":"5789d836-cb1b-4016-8b6c-1301670da5f6","comment":{"body":"Include the URL for the image in an email configured using SendGrid","visible":true,"pluginId":"sendEmail-comment"},"pluginId":"sendEmail","blockType":"default","editorType":"OpenAPIQuery","environment":"production","resourceName":"6180d747-3abf-4092-8ad1-bd9db24364e7","incomingOnSuccessEdges":["b7355bd2-4dcf-4f4f-8b47-c20cb036dd58"]},{"top":960,"left":2096,"uuid":"b7355bd2-4dcf-4f4f-8b47-c20cb036dd58","comment":{"body":"Extract the S3 URL from the response sent by Amazon S3","visible":true,"pluginId":"getS3URL-comment"},"pluginId":"getS3URL","blockType":"code","dimensions":{"width":452,"height":338},"editorType":"PythonQuery","environment":"production","resourceName":"PythonQuery","incomingOnSuccessEdges":["f0b60629-69fd-45d9-9d1f-5cd6b58d6745"]}],"templateData":"[\"~#iR\",[\"^ \",\"n\",\"appTemplate\",\"v\",[\"^ \",\"isFetching\",false,\"plugins\",[\"~#iOM\",[\"startTrigger\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"startTrigger\",\"type\",\"datasource\",\"subtype\",\"JavascriptQuery\",\"namespace\",null,\"resourceName\",\"JavascriptQuery\",\"resourceDisplayName\",null,\"template\",[\"^3\",[\"queryRefreshTime\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"servedFromCache\",false,\"offlineUserQueryInputs\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"workflowParams\",null,\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"showFailureToaster\",true,\"query\",\"return undefined\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"~#iL\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"requestSentTimestamp\",null,\"metadata\",null,\"queryRunTime\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"finished\",null,\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"evalType\",\"script\",\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"10000\",\"workflowId\",null,\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"offlineQueryType\",\"None\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"style\",null,\"position2\",null,\"mobilePosition2\",null,\"mobileAppPosition\",null,\"tabIndex\",null,\"container\",\"\",\"createdAt\",\"~m1681759938931\",\"updatedAt\",\"~m1682100145615\",\"folder\",\"\",\"screen\",null]]],\"getLegoSetsData\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"getLegoSetsData\",\"^4\",\"datasource\",\"^5\",\"SqlQueryUnified\",\"^6\",null,\"^7\",\"e6126c69-42db-442e-bd1e-e3a838fcfc06\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"records\",\"\",\"lastReceivedFromResourceAt\",null,\"databasePasswordOverride\",\"\",\"queryDisabledMessage\",\"\",\"servedFromCache\",false,\"offlineUserQueryInputs\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"workflowParams\",null,\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"showFailureToaster\",true,\"query\",\"select * from sets\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"warningCodes\",[\"^:\",[]],\"data\",null,\"recordId\",\"\",\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"dataArray\",[\"^:\",[]],\"cacheKeyTtl\",\"\",\"filterBy\",\"\",\"requestSentTimestamp\",null,\"databaseHostOverride\",\"\",\"metadata\",null,\"editorMode\",\"sql\",\"queryRunTime\",null,\"actionType\",\"\",\"changesetObject\",\"\",\"shouldUseLegacySql\",false,\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"finished\",null,\"databaseNameOverride\",\"\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"enableBulkUpdates\",false,\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"evalType\",\"script\",\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"bulkUpdatePrimaryKey\",\"\",\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"tableName\",\"\",\"queryTimeout\",\"120000\",\"workflowId\",null,\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"databaseUsernameOverride\",\"\",\"shouldEnableBatchQuerying\",false,\"doNotThrowOnNoOp\",false,\"offlineQueryType\",\"None\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1681763675081\",\"^B\",\"~m1681763698982\",\"^C\",\"\",\"^D\",null]]],\"legoSetsPerYear\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"legoSetsPerYear\",\"^4\",\"datasource\",\"^5\",\"PythonQuery\",\"^6\",null,\"^7\",\"PythonQuery\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"servedFromCache\",false,\"offlineUserQueryInputs\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"workflowParams\",null,\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"showFailureToaster\",true,\"query\",\"import pandas as pd \\nimport seaborn as sns \\nimport matplotlib.pyplot as plt \\nimport io \\nimport uuid\\n\\n# create a pandas dataframe called lego_sets using the lego set data retrieved in the previous block\\nlego_sets = pd.DataFrame(getLegoSetsData.data) \\n\\n# count the number of sets released per year and store it in a new dataframe called sets_per_year\\nsets_per_year = lego_sets[\\\"year\\\"].value_counts().reset_index() \\n\\n# set the column names of the sets_per_year dataframe\\nsets_per_year.columns = [\\\"year\\\", \\\"count\\\"] \\n\\n# sort the data by year\\nsets_per_year = sets_per_year.sort_values(\\\"year\\\") \\n\\n# create a bar plot\\nplt.figure(figsize=(14, 6)) # set the figure size\\nsns.barplot(x=\\\"year\\\", y=\\\"count\\\", data=sets_per_year) # set the x and y axis, and the data for the plot\\n\\n# add title and labels to the plot\\nplt.title(\\\"Number of LEGO Sets Released per Year\\\") \\nplt.xlabel(\\\"Year\\\") \\nplt.ylabel(\\\"Number of Sets\\\") \\n\\n# rotate x-axis labels for better readability\\nplt.xticks(rotation=90) \\n\\n# display the plot\\nplt.show() \\n\\n# save the plot as a PNG image in a file buffer\\nfile_buffer = io.BytesIO() \\nplt.savefig(file_buffer, format='png') \\nfile_buffer.seek(0) \\n\\n# get the image data from the file buffer\\nimage_data = file_buffer.getvalue() \\n\\n# Generate a random UUID (Universally Unique Identifier)\\nfile_name = str(uuid.uuid4())\\n\\n# Append a file extension\\nfile_name += \\\".png\\\"\\n\\n# return the image data\\nreturn {\\\"file_name\\\": file_name,\\\"image_data\\\": image_data}\\n\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"requestSentTimestamp\",null,\"metadata\",null,\"queryRunTime\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"finished\",null,\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"evalType\",\"script\",\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"120000\",\"workflowId\",null,\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"offlineQueryType\",\"None\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1681769807340\",\"^B\",\"~m1681835621870\",\"^C\",\"\",\"^D\",null]]],\"UploadToAmazonS3Bucket\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"UploadToAmazonS3Bucket\",\"^4\",\"datasource\",\"^5\",\"S3Query\",\"^6\",null,\"^7\",\"e0aa33e2-ff6e-47ec-b2b9-e383e32fef8b\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"servedFromCache\",false,\"fileKey\",\"\",\"offlineUserQueryInputs\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"workflowParams\",null,\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"showFailureToaster\",true,\"delimiter\",\"\",\"query\",\"\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"tagSet\",\"\",\"uploadFileName\",\"{{ legoSetsPerYear.data.file_name }}\",\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"uploadData\",\"{{ legoSetsPerYear.data.image_data}}\",\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"requestSentTimestamp\",null,\"metadata\",null,\"queryRunTime\",null,\"actionType\",\"upload\",\"copySource\",\"\",\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"finished\",null,\"confirmationMessage\",null,\"isFetching\",false,\"prefix\",\"\",\"changeset\",\"\",\"rawData\",null,\"signedOperationOptions\",\"\",\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"bucketName\",\"YOUR_S3_BUCKET_NAME\",\"timestamp\",0,\"evalType\",\"script\",\"importedQueryDefaults\",[\"^3\",[]],\"signedOperationName\",\"\",\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"uploadFileType\",\"image/png\",\"maxKeys\",\"\",\"useRawUploadFileType\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"120000\",\"workflowId\",null,\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"offlineQueryType\",\"None\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1681769963314\",\"^B\",\"~m1682619743510\",\"^C\",\"\",\"^D\",null]]],\"sendEmail\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"sendEmail\",\"^4\",\"datasource\",\"^5\",\"OpenAPIQuery\",\"^6\",null,\"^7\",\"6180d747-3abf-4092-8ad1-bd9db24364e7\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"method\",\"post\",\"operationId\",\"POST_mail-send\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"servedFromCache\",false,\"server\",\"https://api.sendgrid.com/v3\",\"offlineUserQueryInputs\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"path\",\"/mail/send\",\"playgroundQuerySaveId\",\"latest\",\"workflowParams\",null,\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"autoPaginate\",false,\"showFailureToaster\",true,\"query\",\"\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"parameters\",\"{\\\"body\\\":{\\\"content\\\":[{\\\"value\\\":\\\"<html><body><img src=\\\\\\\"{{getS3URL.data}}\\\\\\\" alt=\\\\\\\"Lego Sets Per Year\\\\\\\"></body></html>\\\",\\\"type\\\":\\\"text/html\\\"}],\\\"subject\\\":\\\"Lego Sets Per Year\\\",\\\"from\\\":{\\\"email\\\":\\\"YOUR_SENDER_EMAIL\\\"},\\\"personalizations\\\":[{\\\"to\\\":[{\\\"email\\\":\\\"TO_EMAIL\\\"}],\\\"from\\\":{\\\"email\\\":\\\"YOUR_SENDER_EMAIL\\\"}}]}}\",\"data\",null,\"specPathOverride\",\"\",\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"requestSentTimestamp\",null,\"metadata\",null,\"requestBodyDynamicStates\",\"\",\"queryRunTime\",null,\"changesetObject\",\"\",\"requestBody\",null,\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"specBasePath\",\"https://api.sendgrid.com/v3\",\"finished\",null,\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"serverVariables\",null,\"enableErrorTransformer\",false,\"autoPaginateLimit\",500,\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"evalType\",\"script\",\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"parameterDynamicStates\",\"{\\\"body\\\":\\\"{\\\\\\\"content\\\\\\\":\\\\\\\"[{}]\\\\\\\",\\\\\\\"personalizations\\\\\\\":[{}]}\\\"}\",\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"120000\",\"workflowId\",null,\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"offlineQueryType\",\"None\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1681832623112\",\"^B\",\"~m1682619729255\",\"^C\",\"\",\"^D\",null]]],\"getS3URL\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"getS3URL\",\"^4\",\"datasource\",\"^5\",\"PythonQuery\",\"^6\",null,\"^7\",\"PythonQuery\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"servedFromCache\",false,\"offlineUserQueryInputs\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"workflowParams\",null,\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"showFailureToaster\",true,\"query\",\"import urllib.parse\\n\\nurl = UploadToAmazonS3Bucket.data.signedUrl\\n\\nparsed_url = urllib.parse.urlparse(url)\\nresult_url = parsed_url.scheme + \\\"://\\\" + parsed_url.netloc + parsed_url.path\\n\\nreturn(result_url)\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"requestSentTimestamp\",null,\"metadata\",null,\"queryRunTime\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"finished\",null,\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"evalType\",\"script\",\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"120000\",\"workflowId\",null,\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"offlineQueryType\",\"None\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1681832799757\",\"^B\",\"~m1681832988119\",\"^C\",\"\",\"^D\",null]]]]],\"^A\",null,\"version\",\"2.118.2\",\"appThemeId\",null,\"appMaxWidth\",\"1560px\",\"preloadedAppJavaScript\",null,\"preloadedAppJSLinks\",[],\"testEntities\",[],\"tests\",[],\"appStyles\",\"\",\"responsiveLayoutDisabled\",false,\"loadingIndicatorsDisabled\",false,\"urlFragmentDefinitions\",[\"^:\",[]],\"pageLoadValueOverrides\",[\"^:\",[]],\"customDocumentTitle\",\"\",\"customDocumentTitleEnabled\",false,\"customShortcuts\",[],\"isGlobalWidget\",false,\"isMobileApp\",false,\"multiScreenMobileApp\",false,\"mobileAppSettings\",[\"^ \",\"mobileOfflineModeEnabled\",false,\"mobileOfflineModeDelaySync\",false,\"mobileOfflineModeBannerMode\",\"default\",\"displaySetting\",[\"^ \",\"landscapeMode\",false,\"tabletMode\",false]],\"folders\",[\"^:\",[]],\"queryStatusVisibility\",true,\"markdownLinkBehavior\",\"never\",\"inAppRetoolPillAppearance\",\"NO_OVERRIDE\",\"rootScreen\",null,\"instrumentationEnabled\",false,\"experimentalFeatures\",[\"^ \",\"sourceControlTemplateDehydration\",false],\"experimentalPerfFeatures\",[\"^ \",\"serverDepGraphEnabled\",false,\"useRuntimeV2\",false,\"runtimeV2OptOut\",false],\"experimentalStabilityFeatures\",[\"^ \",\"lockModelForUpdates\",false],\"experimentalDataTabEnabled\",false]]]","triggerWebhooks":[],"customLibraries":[{"version":"4.17.21","language":"javascript","variable":"_","codeString":"/* Edit library variable below */\n\nconst _ = require('lodash')\n\n/* Add destructured imports from library below\neg. const { pow, log } = require('mathjs') */\n","libraryName":"lodash"},{"version":"2.1.0","language":"javascript","variable":"numbro","codeString":"/* Edit library variable below */\n\nconst numbro = require('numbro')\n\n/* Add destructured imports from library below\neg. const { pow, log } = require('mathjs') */\n","libraryName":"numbro"},{"version":"5.3.2","language":"javascript","variable":"Papa","codeString":"/* Edit library variable below */\n\nconst Papa = require('papaparse')\n\n/* Add destructured imports from library below\neg. const { pow, log } = require('mathjs') */\n","libraryName":"papaparse"},{"version":"0.5.23","language":"javascript","variable":"moment","codeString":"/* Edit library variable below */\n\nconst moment = require('moment-timezone')\n\n/* Add destructured imports from library below\neg. const { pow, log } = require('mathjs') */\n","libraryName":"moment-timezone"},{"version":"3.4.0","language":"javascript","variable":"uuid","codeString":"/* Edit library variable below */\n\nconst uuid = require('uuid')\n\n/* Add destructured imports from library below\neg. const { pow, log } = require('mathjs') */\n","libraryName":"uuid"}],"createdBy":414114,"protected":false}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment