Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions msstatus.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
<html><head>
<meta charset="utf-8">
<meta name="internalDateTime" content="">
<title>Microsoft 365 Service health status</title>
<link href="/style/app.css" rel="stylesheet" type="text/css">
</head>
<body>
<header>
<div id="title">
<span>
<img alt="Microsoft Logo" src="/img/ebs-microsoft-logo.png">
</span>
</div>
</header>

<section>
<div id="content">
<div class="contentDiv">
<h1>Microsoft 365 Service health status</h1>
<div>
<p></p>
<p></p>
<hr>
<p class="contentText">

<span id="message">Title: Can't access Microsoft 365 services

User Impact: Users may be unable to access multiple Microsoft 365 services.

More info: Users would be unable to access Outlook.com, Microsoft Teams including Teams Live Events, and Office.com. Additionally, Power Platform and Dynamics365 properties are affected by this incident.

Existing customer sessions are not impacted and any user who is logged in to an existing session would be able to continue their sessions.

Current status: We've identified that reverting the recent change did not alleviate impact to Microsoft services as expected. We're working to explore additional options for mitigation.

Scope of impact: Any user may experience access problems for Microsoft 365 services.</span>
<br><br>
<a href="https://portal.office.com/adminportal/home#/servicehealth">View your Microsoft 365 Service health</a>.
</p>
</div>
</div>
</div>
</section>

<footer>
<div id="favorite">
<a href="javascript:window.external.AddFavorite(location.href, document.title);">Add this page to your favorites</a>
</div>
<div id="footer">
<div id="footerWrapper">
<span id="leftFooterSpan">
<span id="microsoftCopyright">©2019 Microsoft Corporation</span>
<a id="legalLink" href="https://go.microsoft.com/fwlink/?linkid=246338" target="_blank">Legal</a>
<span class="separator" id="leftSeparator">|</span>
<a id="privacyLink" href="https://go.microsoft.com/fwlink/?LinkId=521839 " target="_blank">Privacy</a>
</span>
<span style="float:right; padding-right:8px;">
<a id="communityLink" href="https://techcommunity.microsoft.com/t5/Office-365/ct-p/Office365" target="_blank">Community</a>
<span class="separator" id="rightSeparator">|</span>
<a id="feedbackLink" href="https://office365.uservoice.com/" target="_blank">Feedback</a>
</span>
</div>
</div>
</footer>

</body></html>
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
"@angular/platform-browser-dynamic": "~9.0.1",
"@angular/router": "~9.0.1",
"boardgame.io": "^0.37.2",
"boardgame.io-angular": "^0.25.2",
Copy link
Contributor

Choose a reason for hiding this comment

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

please remove this one, the lib is built locally via npm run build:lib:prod

"rxjs": "~6.5.4",
"tslib": "^1.10.0",
"zone.js": "~0.10.2"
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
place audio here
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
place images here
59 changes: 59 additions & 0 deletions projects/demo/src/app/examples/catverse/board.component.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
import { Component, Inject, NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { BoardBase, BoardConfig, OBSERVABLE_BOARD_CONFIG } from 'boardgame.io-angular';
import { Observable } from 'rxjs';

@Component({
styleUrls: ['../../../../../../boardgame.io/examples/react-web/src/tic-tac-toe/board.css'],
template: `
<div>
<table id="board" *ngIf="G">
<tbody>
<tr *ngFor="let i of [0, 1, 2]">
<ng-container *ngFor="let j of [0, 1, 2]">
<ng-container *ngIf="{id: 3 * i + j}; let stupidAngular">
<td [class.active]="isActive && G.cells[stupidAngular.id] === null"
(click)="onClick(stupidAngular.id)">
{{G.cells[stupidAngular.id]}}
</td>
</ng-container>
</ng-container>
</tr>
</tbody>
</table>
<div *ngIf="!isPreview && playerID" id="player">Player: {{playerID}}</div>
<ng-container *ngIf="ctx && ctx.gameover">
<div *ngIf="ctx.gameover.winner !== undefined; else draw" id="winner">Winner: {{ctx.gameover.winner}}</div>
<ng-template #draw>
<div id="winner">Draw!</div>
</ng-template>
</ng-container>
<div *ngIf="!isPreview && isMultiplayer && !isConnected">Disconnected!</div>
</div>
`,
})
class BoardComponent extends BoardBase {
constructor(@Inject(OBSERVABLE_BOARD_CONFIG) observableBoardConfig: Observable<BoardConfig>) {
super(observableBoardConfig);
}

onClick(id: number) {
if (this.isActive && this.G.cells[id] === null) {
this.moves.clickCell(id);
}
}
}

@NgModule({
declarations: [
BoardComponent,
],
imports: [
CommonModule,
],
})
export class StupidUselessNeededModule {
// issue tracked by https://github.com/angular/angular/issues/33507
}

export { BoardComponent };
60 changes: 60 additions & 0 deletions projects/demo/src/app/examples/catverse/game.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
function IsVictory(cells) {
const positions = [
[0, 1, 2],
[3, 4, 5],
[6, 7, 8],
[0, 3, 6],
[1, 4, 7],
[2, 5, 8],
[0, 4, 8],
[2, 4, 6],
];

for (let pos of positions) {
const symbol = cells[pos[0]];
let winner = symbol;
for (let i of pos) {
if (cells[i] !== symbol) {
winner = null;
break;
}
}
if (winner != null) return true;
}

return false;
}

const Catverse = {
name: 'catverse',

setup: () => ({
cells: Array(9).fill(null),
}),

moves: {
clickCell(G, ctx, id) {
const cells = [...G.cells];

if (cells[id] === null) {
cells[id] = ctx.currentPlayer;
return { ...G, cells };
}
},
},

turn: {
moveLimit: 1,
},

endIf: (G, ctx) => {
if (IsVictory(G.cells)) {
return { winner: ctx.currentPlayer };
}
if (G.cells.filter(c => c === null).length === 0) {
return { draw: true };
}
},
};

export default Catverse;
9 changes: 9 additions & 0 deletions projects/demo/src/app/examples/catverse/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/* tslint:disable:object-literal-key-quotes */

import { SingleplayerComponent } from './singleplayer.component';
import { MultiplayerComponent } from './multiplayer.component';

export default [
SingleplayerComponent,
MultiplayerComponent,
];
45 changes: 45 additions & 0 deletions projects/demo/src/app/examples/catverse/multiplayer.component.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import { Component, NgModule } from '@angular/core';
import { BoardgameIoModule, GameScope } from 'boardgame.io-angular';
import { BoardComponent } from './board.component';

import { Local } from 'boardgame.io/multiplayer';
// @ts-ignore
import game from './game.js';

@Component({
template: `
<div class="runner">
<div class="run">
<bio-client gameID="multi" playerID="0"></bio-client>
&lt;App playerID=&quot;0&quot;/&gt;
</div>
<div class="run">
<bio-client gameID="multi" playerID="1"></bio-client>
&lt;App playerID=&quot;1&quot;/&gt;
</div>
</div>
`,
providers: [{
provide: GameScope, useValue: GameScope.fromConfig({
game,
board: BoardComponent,
debug: false,
multiplayer: Local(),
})
}],
})
export class MultiplayerComponent {
static readonly sectionId = 'catverse';
static readonly exampleName = 'Multiplayer';
}

@NgModule({
declarations: [
MultiplayerComponent,
],
imports: [
BoardgameIoModule,
],
})
export class UselessExamplesModule {
}
33 changes: 33 additions & 0 deletions projects/demo/src/app/examples/catverse/singleplayer.component.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import { Component, NgModule } from '@angular/core';
import { BoardgameIoModule } from 'boardgame.io-angular';
import { BoardComponent } from './board.component';
import { Debug } from 'boardgame.io/debug';
// @ts-ignore
import game from '../../../../../../boardgame.io/examples/react-web/src/tic-tac-toe/game.js';

@Component({
template: `
<bio-client gameID="single" [bioGameConfig]="gameConfig"></bio-client>
`,
})
export class SingleplayerComponent {
static readonly sectionId = 'catverse';
static readonly exampleName = 'Singleplayer';

gameConfig = {
game,
board: BoardComponent,
debug: { impl: Debug },
};
}

@NgModule({
declarations: [
SingleplayerComponent,
],
imports: [
BoardgameIoModule,
],
})
export class UselessExamplesModule {
}
2 changes: 2 additions & 0 deletions projects/demo/src/app/examples/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/* tslint:disable:object-literal-key-quotes */

import CatverseExamples from './catverse';
import TicTacToeExamples from './tic-tac-toe';
import RandomApiExamples from './random';
import RedactedMoveExamples from './redacted-move';
Expand All @@ -12,6 +13,7 @@ export interface Example {
}

export const exampleSections: { [sectionId: string]: Example[] } = {
'catverse': CatverseExamples,
'Tic-Tac-Toe': TicTacToeExamples,
'Random API': RandomApiExamples,
'Redacted Move': RedactedMoveExamples,
Expand Down