diff --git a/msstatus.html b/msstatus.html new file mode 100644 index 0000000..8a31520 --- /dev/null +++ b/msstatus.html @@ -0,0 +1,66 @@ + + + + Microsoft 365 Service health status + + + +
+
+ + Microsoft Logo + +
+
+ +
+
+
+

Microsoft 365 Service health status

+
+

+

+
+

+ + 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. +

+ View your Microsoft 365 Service health. +

+
+
+
+
+ + + + \ No newline at end of file diff --git a/package.json b/package.json index 7cbc361..5ab2e9a 100644 --- a/package.json +++ b/package.json @@ -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", "rxjs": "~6.5.4", "tslib": "^1.10.0", "zone.js": "~0.10.2" diff --git a/projects/demo/src/app/examples/catverse/assets/audio/DiscardCard.wav b/projects/demo/src/app/examples/catverse/assets/audio/DiscardCard.wav new file mode 100644 index 0000000..f287735 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/audio/DiscardCard.wav differ diff --git a/projects/demo/src/app/examples/catverse/assets/audio/DrawingCard.wav b/projects/demo/src/app/examples/catverse/assets/audio/DrawingCard.wav new file mode 100644 index 0000000..c508d8a Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/audio/DrawingCard.wav differ diff --git a/projects/demo/src/app/examples/catverse/assets/audio/PlacingCatPieceOnCard.wav b/projects/demo/src/app/examples/catverse/assets/audio/PlacingCatPieceOnCard.wav new file mode 100644 index 0000000..7bfccd1 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/audio/PlacingCatPieceOnCard.wav differ diff --git a/projects/demo/src/app/examples/catverse/assets/audio/audio.txt b/projects/demo/src/app/examples/catverse/assets/audio/audio.txt new file mode 100644 index 0000000..4601554 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/assets/audio/audio.txt @@ -0,0 +1 @@ +place audio here diff --git a/projects/demo/src/app/examples/catverse/assets/images/BackOfCard.png b/projects/demo/src/app/examples/catverse/assets/images/BackOfCard.png new file mode 100644 index 0000000..0e1a7b5 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/BackOfCard.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientClownManExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientClownManExport.png new file mode 100644 index 0000000..5fa030e Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientClownManExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientMonsterManExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientMonsterManExport.png new file mode 100644 index 0000000..dad13ff Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientMonsterManExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientSpiderLadyExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientSpiderLadyExport.png new file mode 100644 index 0000000..4f7e0dc Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientSpiderLadyExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientVampExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientVampExport.png new file mode 100644 index 0000000..c2b7829 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientVampExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientWitchLadyExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientWitchLadyExport.png new file mode 100644 index 0000000..01fd16e Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientWitchLadyExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientWizardManExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientWizardManExport.png new file mode 100644 index 0000000..c94644b Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClientWizardManExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClownExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClownExport.png new file mode 100644 index 0000000..f7740a0 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ClownExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/DemonExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/DemonExport.png new file mode 100644 index 0000000..c697dc9 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/DemonExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/FrankensteinExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/FrankensteinExport.png new file mode 100644 index 0000000..60c0f6a Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/FrankensteinExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/ReaperExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ReaperExport.png new file mode 100644 index 0000000..452ac04 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/ReaperExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/SpiderExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/SpiderExport.png new file mode 100644 index 0000000..660506c Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/SpiderExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/VampireExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/VampireExport.png new file mode 100644 index 0000000..3a00002 Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/VampireExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/CardExports/WitchExport.png b/projects/demo/src/app/examples/catverse/assets/images/CardExports/WitchExport.png new file mode 100644 index 0000000..bf91b5f Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/CardExports/WitchExport.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/MagicTemplate4.png b/projects/demo/src/app/examples/catverse/assets/images/MagicTemplate4.png new file mode 100644 index 0000000..73be24c Binary files /dev/null and b/projects/demo/src/app/examples/catverse/assets/images/MagicTemplate4.png differ diff --git a/projects/demo/src/app/examples/catverse/assets/images/images.txt b/projects/demo/src/app/examples/catverse/assets/images/images.txt new file mode 100644 index 0000000..cb26872 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/assets/images/images.txt @@ -0,0 +1 @@ +place images here diff --git a/projects/demo/src/app/examples/catverse/board.component.ts b/projects/demo/src/app/examples/catverse/board.component.ts new file mode 100644 index 0000000..b4da026 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/board.component.ts @@ -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: ` +
+ + + + + + + + + + +
+ {{G.cells[stupidAngular.id]}} +
+
Player: {{playerID}}
+ +
Winner: {{ctx.gameover.winner}}
+ +
Draw!
+
+
+
Disconnected!
+
+ `, +}) +class BoardComponent extends BoardBase { + constructor(@Inject(OBSERVABLE_BOARD_CONFIG) observableBoardConfig: Observable) { + 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 }; diff --git a/projects/demo/src/app/examples/catverse/game.js b/projects/demo/src/app/examples/catverse/game.js new file mode 100644 index 0000000..4490757 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/game.js @@ -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; \ No newline at end of file diff --git a/projects/demo/src/app/examples/catverse/index.ts b/projects/demo/src/app/examples/catverse/index.ts new file mode 100644 index 0000000..472db12 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/index.ts @@ -0,0 +1,9 @@ +/* tslint:disable:object-literal-key-quotes */ + +import { SingleplayerComponent } from './singleplayer.component'; +import { MultiplayerComponent } from './multiplayer.component'; + +export default [ + SingleplayerComponent, + MultiplayerComponent, +]; diff --git a/projects/demo/src/app/examples/catverse/multiplayer.component.ts b/projects/demo/src/app/examples/catverse/multiplayer.component.ts new file mode 100644 index 0000000..36213c3 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/multiplayer.component.ts @@ -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: ` +
+
+ + <App playerID="0"/> +
+
+ + <App playerID="1"/> +
+
+ `, + 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 { +} diff --git a/projects/demo/src/app/examples/catverse/singleplayer.component.ts b/projects/demo/src/app/examples/catverse/singleplayer.component.ts new file mode 100644 index 0000000..a85ee51 --- /dev/null +++ b/projects/demo/src/app/examples/catverse/singleplayer.component.ts @@ -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: ` + + `, +}) +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 { +} diff --git a/projects/demo/src/app/examples/index.ts b/projects/demo/src/app/examples/index.ts index 45d87e1..062ce1a 100644 --- a/projects/demo/src/app/examples/index.ts +++ b/projects/demo/src/app/examples/index.ts @@ -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'; @@ -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,