Skip to content
This repository was archived by the owner on Jul 9, 2025. It is now read-only.

Conversation

@liweitian
Copy link
Contributor

@liweitian liweitian commented Oct 21, 2020

Description

This Pr implements the botProjects' settings.

Note about some important issues:

  1. if active language is deleted, we will set default language as the new active language
  2. With the latest SDK runtime, Microsoft AppId and Microsoft App Password are not required to call skills anymore.
  3. Data flow about the bots' settings

For some property like luis/qna key, these sensitive properties are stored in root bot's localStorage. The structure is like
rootBotId: {
luis:
authoringKey: {
root: rootKey,
skillBot1: '',
skillBot2: skillKey,
}
}

For settingsState, it represents the settings that a bot is using, for example, in the above case, the skillBot1 does not have a custom luis key, so it is using rootKey. if we try to get useRecoil(settingState(skillBot1Id)), the luis key of it is rootKey rather than empty string.
When set skill bot's settings, we need to provide the "merged" settings rather than the settings that a bot is using. Like:
const settings = useRecoilValue(settingsState(projectId));
const mergedSettings = mergePropertiesManagedByRootBot(projectId, rootBotProjectId, settings);
setSettings(projectId, {
...mergedSettings,
MicrosoftAppId: localMicrosoftAppId,
});

The setSettings dispatcher will save the "correct" one in localStorage and generate the one for use in settingsState.
For root bot, the settings and the mergedSettings are the same, so there is no need to do so.

Task Item

Closes #3962

Screenshots

1
2
3
4
5
6
7
8
9
10
WeChat Image_20201113192709

Copy link
Contributor

@hatpick hatpick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Early feedback

@cwhitten cwhitten added the Not Targetting Main a pull request created not against main label Oct 22, 2020
@liweitian liweitian changed the base branch from main to feature/bot-projects October 26, 2020 07:06
@liweitian liweitian marked this pull request as ready for review October 27, 2020 23:50
@liweitian liweitian changed the title Settings page feat: Settings page Nov 13, 2020
srinaath
srinaath previously approved these changes Nov 15, 2020
@liweitian liweitian merged commit 082bb62 into microsoft:feature/bot-projects Nov 16, 2020
alanlong9278 added a commit to alanlong9278/BotFramework-Composer that referenced this pull request Nov 18, 2020
* feature/bot-projects:
  fix: keep highlight on item with the menu open (microsoft#4835)
  All tests passed
  chore: Pull form dialogs feature branch back to main (microsoft#4841)
  X-platform fix for electron-server "start" script (microsoft#4833)
  build: add option to force rebuild of extensions (microsoft#4830)
  fix: remove checkURL call from navTo on dialog clicks (microsoft#4795)
  fix: export to zip (microsoft#4820)
  fix: prevent minification of AbortSignal (microsoft#4829)
  feat: Settings page (microsoft#4456)
  feat: bot projects skill & context menu (microsoft#4492)
  fix: repair E2E tests that depended on seeing a single bot name (microsoft#4807)
  Removed some extraneous characters from the downloaded pva zip name (microsoft#4808)
  fix: Fixes linux icons on the taskbar (microsoft#4806)
  Update 1.2.0.md
  release: 1.2.0 (microsoft#4796)
  fix: validate bot name when passed via URL params (microsoft#4712)
  fix async move (microsoft#4799)
  fix: Await until delete action finishes (microsoft#4792)
  fix: update debounced update handlers (microsoft#4790)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Not Targetting Main a pull request created not against main

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Settings Page

6 participants