@datacamp/learn-vm-scripts 0.0.8 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -92696,6 +92696,14 @@ var log = (message) => {
92696
92696
  };
92697
92697
 
92698
92698
  // src/azureLogin.ts
92699
+ var optionalPartsOfLogin = async (page) => {
92700
+ const welcomeSurveyCloseButton = 'span.fxs-welcomesurvey-close-icon[role="button"]';
92701
+ await page.waitForSelector(welcomeSurveyCloseButton);
92702
+ await page.click(welcomeSurveyCloseButton);
92703
+ const popupButton = "button.fxs-teaching-bubble-close";
92704
+ await page.waitForSelector(popupButton);
92705
+ await page.click(popupButton);
92706
+ };
92699
92707
  async function loginToAzure({
92700
92708
  url,
92701
92709
  username,
@@ -92736,6 +92744,7 @@ async function loginToAzure({
92736
92744
  log("Ensuring user stays signed in ...");
92737
92745
  await page.waitForSelector('[type="submit"]');
92738
92746
  await page.click('[type="submit"]');
92747
+ void optionalPartsOfLogin(page);
92739
92748
  log("Logged in to Azure successfully");
92740
92749
  }
92741
92750
 
package/dist/local.cjs CHANGED
@@ -85610,11 +85610,11 @@ async function setupPuppeteerPage({
85610
85610
  }) {
85611
85611
  const browser = await puppeteer_core_default.launch({
85612
85612
  args: [
85613
- "--start-maximized",
85614
- "--kiosk",
85615
- "--kiosk-mode-single-window",
85616
- "--kiosk-mode-no-prompts",
85617
- "--kiosk-mode-no-dialogs"
85613
+ "--start-maximized"
85614
+ // '--kiosk',
85615
+ // '--no-prompts',
85616
+ // '--no-dialogs',
85617
+ // '--disable-pinch',
85618
85618
  ],
85619
85619
  executablePath: executablePath3,
85620
85620
  headless: false,
@@ -85630,6 +85630,7 @@ async function setupPuppeteerPage({
85630
85630
  }
85631
85631
 
85632
85632
  // src/utils.ts
85633
+ var AZURE_LOGIN_URL = "https://portal.azure.com/";
85633
85634
  function ensureHttps(url) {
85634
85635
  const hasProtocol = /^(http|https):\/\//i.test(url);
85635
85636
  if (!hasProtocol) {
@@ -85657,47 +85658,57 @@ var setInput = ({
85657
85658
  );
85658
85659
  };
85659
85660
 
85660
- // src/awsLogin.ts
85661
- var oldUi = async (page) => {
85662
- const rememberAccountCheckbox = 'input[id="remember_account_checkbox"]';
85663
- await page.waitForSelector(rememberAccountCheckbox);
85664
- await page.click(rememberAccountCheckbox);
85665
- const signInButton = 'a[id="signin_button"]';
85666
- await page.waitForSelector(signInButton);
85667
- await page.click(signInButton);
85661
+ // src/azureLogin.ts
85662
+ var optionalPartsOfLogin = async (page) => {
85663
+ const welcomeSurveyCloseButton = 'span.fxs-welcomesurvey-close-icon[role="button"]';
85664
+ await page.waitForSelector(welcomeSurveyCloseButton);
85665
+ await page.click(welcomeSurveyCloseButton);
85666
+ const popupButton = "button.fxs-teaching-bubble-close";
85667
+ await page.waitForSelector(popupButton);
85668
+ await page.click(popupButton);
85668
85669
  };
85669
- var newUi = async (page) => {
85670
- const rememberAccountCheckbox = 'span[data-testid="remember-account"] input[type="checkbox"]';
85671
- await page.waitForSelector(rememberAccountCheckbox);
85672
- await page.click(rememberAccountCheckbox);
85673
- const signInButton = 'button[type="submit"]';
85674
- await page.waitForSelector(signInButton);
85675
- await page.click(signInButton);
85676
- };
85677
- async function loginToAWS({
85670
+ async function loginToAzure({
85678
85671
  url,
85679
85672
  username,
85680
85673
  page,
85681
85674
  password
85682
85675
  }) {
85683
- log("Navigating to AWS login page...");
85684
- await page.goto(ensureHttps(url));
85685
- await page.waitForSelector('input[name="username"]');
85686
- await page.type('input[name="username"]', username);
85676
+ log("Navigating to Azure login page...");
85677
+ await Promise.all([
85678
+ page.waitForNavigation(),
85679
+ page.goto(ensureHttps(url || AZURE_LOGIN_URL))
85680
+ ]);
85681
+ log("Entering email...");
85682
+ const usernameQuerySelector = '[name="loginfmt"]';
85683
+ await page.waitForSelector(usernameQuerySelector);
85687
85684
  await setInput({
85688
85685
  page,
85689
- querySelector: 'input[name="username"]',
85686
+ querySelector: usernameQuerySelector,
85690
85687
  value: username
85691
85688
  });
85692
- await page.waitForSelector('input[name="password"]');
85693
- await page.type('input[name="password"]', password);
85689
+ await Promise.all([
85690
+ page.waitForNavigation({ waitUntil: "networkidle0" }),
85691
+ page.click('input[type="submit"]')
85692
+ ]);
85693
+ log("Email entered successfully");
85694
+ log("Entering password...");
85695
+ const passwordQuerySelector = 'input[type="password"]';
85696
+ await page.waitForSelector(passwordQuerySelector, { visible: true });
85694
85697
  await setInput({
85695
85698
  page,
85696
- querySelector: 'input[name="password"]',
85699
+ querySelector: passwordQuerySelector,
85697
85700
  value: password
85698
85701
  });
85699
- await Promise.any([oldUi(page), newUi(page)]);
85700
- log("Logged in to AWS successfully");
85702
+ await Promise.all([
85703
+ page.waitForNavigation(),
85704
+ page.click('input[type="submit"]')
85705
+ ]);
85706
+ log("Password entered successfully");
85707
+ log("Ensuring user stays signed in ...");
85708
+ await page.waitForSelector('[type="submit"]');
85709
+ await page.click('[type="submit"]');
85710
+ void optionalPartsOfLogin(page);
85711
+ log("Logged in to Azure successfully");
85701
85712
  }
85702
85713
 
85703
85714
  // src/local.ts
@@ -85708,10 +85719,10 @@ var main = async () => {
85708
85719
  executablePath: executablePath2,
85709
85720
  userDataDir
85710
85721
  });
85711
- await loginToAWS({
85712
- url: "https://288761764123.signin.aws.amazon.com/console?region=us-east-1",
85713
- username: "datacamp-learner-user",
85714
- password: "bHo%V)VFWmdAyjT5P@5s",
85722
+ await loginToAzure({
85723
+ url: "https://portal.azure.com",
85724
+ username: "student-be1288f0-5375-4105-ab58-ed0fc2ca5d2e@datacamplearn.onmicrosoft.com",
85725
+ password: "9y4*E6kr&q)dtfiWP@5s",
85715
85726
  page
85716
85727
  });
85717
85728
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datacamp/learn-vm-scripts",
3
- "version": "0.0.8",
3
+ "version": "0.0.9",
4
4
  "repository": "git@github.com:datacamp-engineering/learn-vm-scripts.git",
5
5
  "description": "Scripts used by VMs in learn.",
6
6
  "main": "./dist/index.cjs",