diff --git a/angular.json b/angular.json index 93283f1..856879d 100644 --- a/angular.json +++ b/angular.json @@ -70,18 +70,18 @@ "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { - "browserTarget": "angular-web-bluetooth-starter:build" + "buildTarget": "angular-web-bluetooth-starter:build" }, "configurations": { "production": { - "browserTarget": "angular-web-bluetooth-starter:build:production" + "buildTarget": "angular-web-bluetooth-starter:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { - "browserTarget": "angular-web-bluetooth-starter:build" + "buildTarget": "angular-web-bluetooth-starter:build" } }, "test": { diff --git a/docs/dependencies.html b/docs/dependencies.html index 185f77b..9675659 100644 --- a/docs/dependencies.html +++ b/docs/dependencies.html @@ -51,25 +51,25 @@ diff --git a/docs/js/search/search_index.js b/docs/js/search/search_index.js index a9f8c51..01fbc5a 100644 --- a/docs/js/search/search_index.js +++ b/docs/js/search/search_index.js @@ -1,4 +1,4 @@ var COMPODOC_SEARCH_INDEX = { - "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/interfaces/AWBOptions.html",[0,1.352,1,1.806]],["body/interfaces/AWBOptions.html",[0,1.549,1,3.145,2,2.611,3,0.495,4,0.495,5,0.438,6,0.83,7,0.332,8,2.31,9,0.438,10,1.289,11,1.084,12,3.51,13,2.686,14,0.555,15,0.035,16,1.077,17,3.319,18,3.903,19,3.014,20,0.684,21,3.903,22,2.611,23,1.678,24,3.014,25,1.868,26,3.014,27,1.562,28,2.2,29,3.014,30,0.689,31,3.751,32,1.306,33,2.151,34,2.611,35,2.681,36,3.014,37,3.319,38,3.014,39,2.31,40,0.143,41,2.2,42,1.87,43,3.014,44,1.549,45,2.225,46,2.2,47,3.014,48,2.31,49,1.699,50,0.025,51,0.025]],["title/components/AppComponent.html",[52,0.868,53,1.131]],["body/components/AppComponent.html",[3,0.562,4,0.562,5,0.497,15,0.034,16,0.777,20,0.777,30,0.497,40,0.163,50,0.027,51,0.027,52,1.516,53,2.062,54,2.383,55,2.122,56,2.122,57,3.42,58,2.122,59,3.19,60,2.415,61,2.383,62,2.624,63,2.122,64,2.624,65,2.383,66,2.122,67,2.976,68,2.122,69,0.96,70,2.122,71,1.47,72,1.757,73,2.122,74,1.47,75,2.122,76,1.47,77,2.122,78,1.47,79,2.122,80,1.47,81,1.927,82,2.122,83,2.122]],["title/modules/AppModule.html",[84,2.279,85,1.806]],["body/modules/AppModule.html",[3,0.418,4,0.418,5,0.37,7,0.28,12,1.951,15,0.035,16,1.191,17,2.673,20,0.578,30,0.37,39,2.673,40,0.121,41,2.527,50,0.023,51,0.023,53,2.169,71,1.991,74,1.991,76,1.991,78,1.991,80,1.991,85,3.582,86,1.748,87,2.673,88,2.545,89,2.545,90,2.545,91,2.545,92,3.487,93,2.545,94,1.951,95,3.061,96,4.195,97,4.195,98,4.195,99,3.061,100,4.195,101,3.061,102,4.195,103,3.487,104,3.061,105,4.195,106,3.061,107,4.195,108,3.061,109,4.195,110,3.061,111,3.061,112,4.195,113,3.061,114,4.195,115,3.061,116,4.195,117,3.061,118,4.195,119,3.061,120,2.545,121,4.195,122,1.748,123,1.748,124,4.195,125,3.061,126,1.434,127,1.195,128,3.061,129,3.061,130,3.061,131,3.061,132,3.061,133,3.061,134,3.061,135,4.195,136,1.579,137,2.545,138,1.094]],["title/classes/AppPage.html",[40,0.125,139,2.279]],["body/classes/AppPage.html",[3,0.598,4,0.598,5,0.529,9,0.529,15,0.034,16,0.827,30,0.529,32,1.209,40,0.173,50,0.028,51,0.028,61,2.051,65,2.051,136,2.258,139,3.806,140,2.258,141,3.639,142,1.1,143,5.894,144,5.894,145,0.998,146,4.378,147,1.1,148,5.096,149,4.378,150,4.378,151,4.378,152,4.378,153,3.153,154,4.378]],["title/components/BatteryLevelComponent.html",[52,0.868,71,1.131]],["body/components/BatteryLevelComponent.html",[3,0.23,4,0.23,5,0.203,7,0.154,9,0.203,10,0.737,11,0.698,14,0.818,15,0.035,16,0.79,20,0.318,23,1.369,25,1.098,27,1.404,30,0.405,32,0.385,33,1.049,40,0.067,44,1.788,45,1.148,46,1.259,49,1.259,50,0.014,51,0.014,52,0.921,53,0.601,54,1.259,55,0.868,56,0.868,58,0.868,59,2.509,60,1.899,62,1.386,63,0.868,64,1.386,65,1.259,66,0.868,67,1.975,68,0.868,69,0.79,70,0.868,71,1.369,72,1.636,73,0.868,74,0.601,75,0.868,76,0.601,77,0.868,78,0.601,79,0.868,80,0.601,81,0.788,82,0.868,83,0.868,120,2.788,122,0.961,123,0.961,126,0.788,127,0.657,142,0.559,145,1.08,147,0.975,153,2.416,155,1.915,156,4.152,157,1.212,158,1.259,159,2.137,160,2.137,161,2.137,162,2.137,163,2.843,164,4.462,165,3.354,166,3.611,167,3.354,168,3.354,169,3.214,170,3.214,171,2.788,172,3.709,173,3.709,174,2.788,175,3.214,176,3.214,177,3.214,178,3.354,179,2.416,180,2.788,181,2.137,182,3.354,183,3.354,184,3.214,185,3.354,186,3.354,187,1.915,188,2.788,189,2.416,190,2.788,191,3.354,192,1.628,193,2.788,194,3.354,195,3.354,196,1.958,197,3.479,198,3.354,199,3.354,200,1.461,201,2.667,202,2.137,203,2.137,204,1.369,205,3.829,206,1.712,207,2.44,208,2.44,209,2.44,210,1.712,211,1.712,212,1.634,213,0.88,214,1.072,215,2.078,216,2.667,217,1.683,218,0.768,219,1.683,220,1.533,221,1.683,222,1.712,223,1.255,224,1.683,225,1.572,226,1.683,227,1.683,228,1.683,229,1.712,230,2.39,231,1.683,232,1.572,233,1.73,234,1.683,235,1.683,236,2.984,237,1.683,238,3.829,239,1.683,240,1.683,241,1.683,242,1.683,243,2.667,244,1.683,245,1.683,246,0.868,247,1.683,248,0.961,249,1.072,250,1.433,251,1.386,252,1.534,253,1.534,254,0.961,255,0.961,256,0.961,257,0.961,258,1.072,259,0.961,260,1.072,261,1.712,262,1.072,263,1.072,264,0.601,265,1.072,266,1.399,267,0.788,268,1.399,269,1.683,270,1.072,271,1.072,272,1.683,273,1.683,274,1.683,275,1.683,276,1.683,277,2.687,278,1.072,279,3.354,280,1.683,281,1.73,282,0.868,283,1.683,284,1.212,285,1.072,286,1.072,287,1.072,288,0.961,289,1.072,290,1.072,291,1.072,292,1.072,293,1.683,294,1.072,295,1.072,296,1.683,297,1.072,298,1.072,299,1.072,300,1.683,301,1.683,302,1.683]],["title/injectables/BleService.html",[215,1.352,303,0.868]],["body/injectables/BleService.html",[3,0.457,4,0.457,5,0.404,7,0.306,9,0.404,10,1.222,11,0.927,14,0.851,15,0.035,16,0.945,20,0.631,23,1.987,30,0.404,32,1.146,35,2.543,40,0.132,50,0.024,51,0.024,60,2.085,61,1.567,69,0.945,126,1.567,127,1.306,142,0.927,145,1.119,147,1.158,192,1.667,196,1.739,200,1.458,213,1.095,215,1.903,218,1.019,220,1.458,223,1.502,230,2.543,246,2.754,264,1.196,267,2.087,288,1.91,303,1.222,304,1.725,305,2.409,306,2.583,307,5.007,308,3.702,309,4.438,310,4.438,311,3.344,312,4.453,313,4.453,314,4.753,315,3.344,316,3.344,317,3.344,318,3.344,319,3.344,320,3.344,321,2.78,322,2.78,323,3.344,324,1.91,325,1.91,326,2.78,327,2.78,328,2.78,329,1.725,330,3.344,331,2.78,332,2.78,333,4.453,334,2.409,335,3.344,336,3.344,337,2.78,338,2.78]],["title/injectables/BrowserWebBluetooth.html",[25,1.036,303,0.868]],["body/injectables/BrowserWebBluetooth.html",[3,0.554,4,0.554,5,0.49,6,1.314,7,0.525,9,0.49,10,1.384,11,0.845,14,0.621,15,0.034,16,0.766,20,0.766,25,1.651,30,0.49,32,0.929,33,1.584,35,2.316,40,0.16,50,0.027,51,0.027,60,2.143,69,0.766,127,1.584,136,2.093,142,1.05,145,1.036,147,0.845,148,4.192,213,1.797,218,0.929,303,1.384,304,2.093,306,2.831,334,3.632,339,3.373,340,5.043,341,5.043,342,5.043,343,5.488,344,4.057,345,4.057,346,4.057,347,4.057,348,3.373,349,4.057,350,4.057,351,4.057,352,3.373,353,4.057,354,4.057]],["title/injectables/ConsoleLoggerService.html",[27,0.949,303,0.868]],["body/injectables/ConsoleLoggerService.html",[0,1.601,3,0.512,4,0.512,5,0.453,6,1.277,7,0.51,9,0.453,11,1.102,14,0.81,15,0.035,16,0.708,20,0.708,27,1.439,28,1.756,30,0.639,40,0.19,50,0.026,51,0.026,61,2.248,69,0.999,142,0.999,145,0.999,147,1.102,158,2.248,218,1.211,220,1.931,223,1.587,225,2.248,278,3.057,303,1.452,304,1.933,325,2.739,355,2.388,356,3.455,357,3.811,358,3.748,359,4.248,360,3.811,361,3.748,362,3.811,363,3.748,364,3.021,365,2.699,366,2.699,367,2.699,368,2.699,369,2.699,370,2.699]],["title/components/DashboardComponent.html",[52,0.868,74,1.131]],["body/components/DashboardComponent.html",[3,0.398,4,0.398,5,0.352,7,0.371,9,0.352,15,0.035,16,0.55,20,0.55,30,0.352,40,0.115,50,0.022,51,0.022,52,1.28,53,1.042,54,1.9,55,1.504,56,1.504,58,1.504,59,2.961,60,2.306,62,1.504,63,1.504,64,2.092,65,1.9,66,1.504,67,2.601,68,1.504,69,0.766,70,1.504,71,1.042,72,1.993,73,1.504,74,1.802,75,1.504,76,1.042,77,1.504,78,1.042,79,1.504,80,1.042,81,2.185,82,1.504,83,1.504,145,0.55,153,2.099,155,1.664,161,3.213,166,2.099,169,2.099,170,2.099,175,3.359,176,2.921,177,3.359,179,2.921,184,2.921,187,1.664,188,2.423,189,2.099,190,2.423,204,2.052,213,1.527,233,1.504,352,2.423,371,2.423,372,5.042,373,4.056,374,4.664,375,4.056,376,4.056,377,2.915,378,3.372,379,4.056,380,5.74,381,5.74,382,3.278,383,5.74,384,5.74,385,2.921,386,4.056,387,2.915,388,2.915,389,2.915,390,2.423,391,2.915,392,3.631,393,3.952,394,2.915,395,2.915,396,2.915,397,2.915,398,1.858,399,2.099,400,2.915,401,2.915,402,4.056,403,5.042,404,3.372,405,2.915,406,4.664,407,2.915,408,2.915]],["title/classes/FakeBluetoothDevice.html",[40,0.125,409,1.632]],["body/classes/FakeBluetoothDevice.html",[3,0.352,4,0.352,5,0.312,6,1.297,7,0.518,9,0.312,10,1.31,11,0.774,13,1.331,14,0.807,15,0.035,30,0.577,32,1.093,40,0.189,50,0.02,51,0.02,69,1.026,138,0.922,140,1.331,142,0.774,145,1.05,147,0.908,192,1.308,196,2.122,200,0.845,204,1.809,212,1.452,213,0.845,218,0.851,220,1.428,223,1.781,232,1.209,233,1.331,250,1.589,264,1.706,281,2.25,282,1.331,306,2.61,324,2.49,329,2.25,382,1.473,409,1.918,410,1.473,411,2.49,412,3.042,413,3.042,414,3.092,415,2.89,416,2.58,417,2.58,418,2.124,419,2.58,420,3.719,421,3.042,422,2.58,423,2.779,424,3.36,425,3.36,426,2.58,427,2.58,428,2.58,429,3.042,430,2.37,431,2.37,432,2.37,433,1.644,434,2.37,435,1.918,436,1.644,437,2.37,438,1.644,439,2.37,440,1.331,441,1.589,442,1.644,443,1.644,444,2.37,445,1.644,446,1.644,447,1.644,448,1.644,449,1.644,450,1.331,451,1.473,452,1.644,453,1.644,454,1.644,455,1.644,456,1.331,457,2.37,458,1.473,459,3.042,460,2.779,461,1.644,462,1.644,463,2.37,464,1.644,465,1.644,466,1.644,467,1.644]],["title/classes/FakeBluetoothRemoteGATTCharacteristic.html",[40,0.125,456,1.632]],["body/classes/FakeBluetoothRemoteGATTCharacteristic.html",[3,0.343,4,0.343,5,0.304,6,1.309,7,0.523,9,0.304,10,1.48,11,0.895,13,1.297,14,0.825,15,0.035,30,0.57,32,1.079,40,0.187,50,0.02,51,0.02,69,0.89,138,0.899,140,1.297,142,0.76,145,1.063,147,0.982,192,1.567,196,1.678,200,0.823,204,1.305,212,1.425,213,0.823,218,0.984,220,1.407,223,1.617,232,1.178,233,1.297,250,1.56,264,2.044,281,2.217,282,1.297,306,2.781,324,2.454,329,2.217,382,1.435,409,1.297,410,1.435,411,1.435,412,1.602,413,3.006,414,3.035,415,2.86,418,1.435,421,2.739,423,2.739,424,3.33,425,3.33,429,3.006,430,2.326,431,2.326,432,2.326,433,1.602,434,2.326,435,1.883,436,1.602,437,2.326,438,1.602,439,2.326,440,1.297,441,1.56,442,1.602,443,1.602,444,2.326,445,1.602,446,1.602,447,1.602,448,1.602,449,1.602,450,1.297,451,1.435,452,1.602,453,1.602,454,1.602,455,1.602,456,1.883,457,3.192,458,2.454,459,3.52,460,3.006,461,2.326,462,1.602,463,2.326,464,3.006,465,1.602,466,2.326,467,1.602,468,3.65,469,2.514,470,2.514,471,2.514,472,2.514,473,2.514,474,2.514,475,2.514,476,2.514,477,2.514,478,2.514]],["title/classes/FakeBluetoothRemoteGATTServer.html",[40,0.125,440,1.632]],["body/classes/FakeBluetoothRemoteGATTServer.html",[3,0.364,4,0.364,5,0.322,6,1.284,7,0.513,9,0.322,10,1.33,11,0.793,13,1.375,14,0.816,15,0.035,30,0.585,32,1.109,40,0.192,50,0.02,51,0.02,69,0.839,138,0.953,140,1.375,142,0.793,145,1.036,147,0.925,192,1.332,196,2.143,200,1.247,204,1.832,212,2.001,213,0.873,218,0.871,220,0.873,223,1.537,232,1.249,233,1.375,250,1.627,264,1.732,281,2.291,282,2.291,306,2.291,324,2.536,329,2.291,382,2.767,409,1.375,410,1.522,411,1.522,412,1.698,413,2.426,415,2.174,418,1.522,421,2.83,423,2.426,424,3.088,425,3.088,429,3.088,430,2.426,431,2.426,432,2.426,433,1.698,434,2.426,435,1.964,436,1.698,437,2.426,438,1.698,439,2.426,440,1.964,441,1.898,442,3.266,443,1.698,444,2.426,445,1.698,446,2.426,447,2.83,448,1.698,449,1.698,450,1.375,451,1.522,452,1.698,453,1.698,454,1.698,455,1.698,456,1.375,457,2.426,458,1.522,459,3.088,460,2.83,461,1.698,462,1.698,463,2.426,464,1.698,465,1.698,466,1.698,467,1.698,479,3.807,480,2.215,481,3.199,482,3.807,483,3.807,484,2.665,485,2.665,486,2.665]],["title/classes/FakeBluetoothRemoteGATTService.html",[40,0.125,450,1.632]],["body/classes/FakeBluetoothRemoteGATTService.html",[3,0.386,4,0.386,5,0.342,6,1.199,7,0.479,9,0.342,10,1.366,11,0.827,13,1.458,14,0.433,15,0.035,30,0.601,32,1.139,40,0.197,50,0.021,51,0.021,69,0.866,138,1.01,140,1.458,142,0.827,145,0.939,147,0.589,192,1.19,196,2.179,200,0.926,204,1.419,212,2.046,213,0.926,218,0.908,223,1.572,233,1.458,250,1.696,264,1.778,267,1.324,281,2.366,282,1.458,306,2.366,324,2.619,329,2.366,382,1.614,409,1.458,410,1.614,411,1.614,412,1.801,413,2.529,415,2.266,418,1.614,421,2.923,423,2.529,424,3.17,425,3.17,429,3.17,430,2.529,431,2.529,432,2.529,433,1.801,434,2.529,435,2.047,436,1.801,437,2.529,438,1.801,439,2.529,440,1.458,441,1.696,442,1.801,443,1.801,444,2.529,445,1.801,446,1.801,447,1.801,448,1.801,449,1.801,450,2.047,451,2.992,452,1.801,453,2.529,454,2.923,455,1.801,456,1.458,457,2.529,458,1.614,459,3.17,460,2.923,461,1.801,462,1.801,463,2.529,464,1.801,465,1.801,466,1.801,467,1.801,480,2.35,487,3.969,488,2.827,489,3.969,490,2.827]],["title/components/HumidityComponent.html",[52,0.868,76,1.131]],["body/components/HumidityComponent.html",[3,0.274,4,0.274,5,0.242,7,0.183,9,0.242,10,0.846,11,0.782,14,0.828,15,0.035,16,0.907,20,0.378,23,1.506,25,1.229,27,1.126,30,0.454,32,0.459,33,1.646,40,0.079,42,1.59,44,1.943,45,1.317,46,1.444,49,1.444,50,0.017,51,0.017,52,1.031,53,0.717,54,1.444,55,1.034,56,1.034,58,1.034,59,2.663,60,2.016,62,1.59,63,1.034,64,1.59,65,1.444,66,1.034,67,2.174,68,1.034,69,0.859,70,1.034,71,0.717,72,0.856,73,1.034,74,0.717,75,1.034,76,1.506,77,1.034,78,0.717,79,1.034,80,0.717,81,0.939,82,1.034,83,1.034,122,1.145,123,1.145,126,0.939,127,0.783,138,1.342,142,0.642,145,1.098,147,1.042,155,2.144,158,1.444,159,2.392,160,2.392,162,2.392,163,2.392,181,2.392,187,2.144,192,1.264,196,1.875,200,1.573,201,2.899,202,2.392,203,2.392,204,1.506,206,1.964,207,2.686,208,2.686,209,2.686,210,1.964,211,1.964,212,1.466,213,1.009,214,1.277,215,2.206,216,2.899,218,0.859,220,1.638,222,1.964,223,1.126,225,1.444,229,1.964,230,2.406,236,2.899,243,1.277,246,1.034,248,1.145,249,1.277,250,1.801,251,1.59,252,1.76,253,1.76,254,1.145,255,1.145,256,1.145,257,1.145,258,1.277,259,1.145,260,1.277,261,1.277,262,1.277,263,1.277,264,0.717,265,1.277,267,0.939,270,1.277,271,1.277,285,1.277,286,1.277,287,1.964,288,1.76,289,1.277,290,1.277,291,1.277,292,1.277,294,1.277,295,1.277,297,1.964,298,1.277,299,1.277,326,1.666,327,2.562,385,2.704,390,1.666,392,2.704,398,1.277,399,1.444,441,0.856,491,1.444,492,3.503,493,3.121,494,3.121,495,3.121,496,3.121,497,3.503,498,2.004,499,2.004,500,2.004,501,2.004,502,2.004,503,2.004,504,2.004,505,2.004,506,3.121,507,2.004,508,3.121,509,1.666,510,2.562,511,2.004,512,3.503,513,2.004,514,2.004,515,2.004,516,2.004,517,2.004,518,2.004,519,1.666,520,1.444,521,1.666,522,2.22,523,2.22,524,2.22,525,2.22,526,2.004,527,1.666,528,1.666,529,1.666,530,1.666,531,2.004,532,1.666,533,1.666,534,1.666,535,1.444,536,3.121,537,1.666,538,2.562,539,1.666,540,1.666,541,1.666,542,1.666,543,1.666,544,1.666,545,1.666,546,1.666,547,1.666,548,1.666,549,1.666,550,1.666,551,2.562,552,2.004,553,1.444,554,1.666,555,1.666,556,1.666,557,1.444]],["title/interfaces/Logger.html",[0,1.352,364,1.806]],["body/interfaces/Logger.html",[0,1.581,2,2.665,3,0.505,4,0.505,5,0.447,6,1.271,7,0.508,9,0.447,11,1.095,14,0.805,15,0.035,16,0.699,20,0.699,27,1.11,28,1.734,30,0.636,40,0.188,50,0.026,51,0.026,61,2.23,69,0.993,142,0.991,145,0.993,147,1.095,158,2.23,218,1.204,220,1.925,223,1.835,225,2.23,278,3.032,303,1.444,325,2.717,355,2.358,356,3.427,357,3.427,359,4.234,360,3.427,362,3.427,364,3.17,365,3.427,366,3.427,367,3.427,368,2.665,369,2.665,370,2.665,558,3.701,559,3.701,560,3.701]],["title/injectables/NoLoggerService.html",[28,1.482,303,0.868]],["body/injectables/NoLoggerService.html",[0,1.601,3,0.512,4,0.512,5,0.453,6,1.277,7,0.51,9,0.453,11,1.102,14,0.81,15,0.035,16,0.708,20,0.708,27,1.124,28,2.248,30,0.639,40,0.19,50,0.026,51,0.026,61,2.248,69,0.999,142,0.999,145,0.999,147,1.102,158,2.248,218,1.211,220,1.931,223,1.587,225,2.248,278,3.057,303,1.452,304,1.933,325,2.739,355,2.388,356,3.455,357,3.811,359,4.248,360,3.811,362,3.811,364,3.021,365,2.699,366,2.699,367,2.699,368,2.699,369,2.699,370,2.699,561,3.748,562,3.748,563,3.748]],["title/injectables/ServerWebBluetooth.html",[303,0.868,564,2.279]],["body/injectables/ServerWebBluetooth.html",[3,0.611,4,0.611,5,0.541,6,1.226,7,0.49,9,0.541,15,0.034,16,0.845,20,0.845,30,0.541,32,1.025,40,0.177,42,2.956,50,0.029,51,0.029,142,1.115,145,0.845,147,0.932,259,3.391,303,1.47,304,2.31,564,3.857,565,3.722,566,4.477,567,4.477,568,3.722,569,4.477]],["title/components/StepCounterComponent.html",[52,0.868,78,1.131]],["body/components/StepCounterComponent.html",[3,0.268,4,0.268,5,0.237,7,0.18,9,0.237,10,0.833,11,0.772,14,0.823,15,0.035,16,0.851,20,0.371,23,1.491,25,1.214,27,1.112,30,0.448,32,0.694,33,1.185,40,0.078,44,1.926,45,1.296,46,1.422,49,1.422,50,0.016,51,0.016,52,1.018,53,0.702,54,1.422,55,1.013,56,1.013,58,1.013,59,2.646,60,2.003,62,1.565,63,1.013,64,1.565,65,1.422,66,1.013,67,2.151,68,1.013,69,0.851,70,1.013,71,0.702,72,0.839,73,1.013,74,0.702,75,1.013,76,0.702,77,1.013,78,1.491,79,1.013,80,0.702,81,0.92,82,1.013,83,1.013,122,1.122,123,1.122,126,0.92,127,0.767,138,1.085,142,0.632,145,1.062,147,0.992,155,2.117,158,1.422,159,2.362,160,2.362,162,2.362,163,3.036,166,2.67,169,2.67,170,2.67,171,3.082,172,3.96,173,3.96,174,3.082,175,2.67,176,2.67,177,2.67,179,3.431,180,3.082,181,3.036,184,2.67,187,2.117,189,2.67,192,1.613,193,3.082,196,1.86,200,1.56,201,2.872,202,2.362,203,2.362,204,1.491,206,1.934,207,2.657,208,2.657,209,2.657,210,1.934,211,1.934,212,1.448,213,0.994,214,1.252,215,2.191,216,2.872,218,0.848,220,1.56,222,1.934,223,1.112,225,1.737,229,1.934,230,2.573,232,0.92,236,2.872,243,1.252,246,1.013,248,1.122,249,1.252,250,1.926,251,1.565,252,1.733,253,1.733,254,1.122,255,1.122,256,1.122,257,1.122,258,1.252,259,1.122,260,1.252,261,1.252,262,1.252,263,1.252,264,0.702,267,0.92,270,1.252,271,1.252,281,1.013,284,1.415,285,1.252,286,1.252,287,1.934,288,1.122,289,1.252,290,1.252,291,1.252,292,1.252,294,1.252,295,1.252,297,1.934,298,1.252,299,1.252,393,2.185,481,2.185,522,2.185,523,2.185,524,2.185,525,2.185,535,1.415,553,1.415,557,1.415,570,1.415,571,3.034,572,3.707,573,3.707,574,3.707,575,3.96,576,3.707,577,3.707,578,1.964,579,1.964,580,1.964,581,1.964,582,1.964,583,1.964,584,1.964,585,1.964,586,1.964,587,1.964,588,1.964,589,1.964,590,1.964,591,4.17,592,1.964,593,4.17,594,1.964,595,1.964,596,1.964,597,1.964,598,1.964]],["title/components/TemperatureComponent.html",[52,0.868,80,1.131]],["body/components/TemperatureComponent.html",[3,0.272,4,0.272,5,0.241,7,0.182,9,0.241,10,0.842,11,0.778,14,0.826,15,0.035,16,0.904,20,0.376,23,1.501,25,1.224,27,1.121,30,0.452,32,0.702,33,1.64,40,0.079,42,1.581,44,1.937,45,1.31,46,1.437,49,1.437,50,0.016,51,0.016,52,1.026,53,0.712,54,1.437,55,1.027,56,1.027,58,1.027,59,2.657,60,2.012,62,1.581,63,1.027,64,1.581,65,1.437,66,1.027,67,2.166,68,1.027,69,0.856,70,1.027,71,0.712,72,0.851,73,1.027,74,0.712,75,1.027,76,0.712,77,1.027,78,0.712,79,1.027,80,1.501,81,1.968,82,1.027,83,1.027,122,1.137,123,1.137,126,0.933,127,0.777,138,1.336,142,0.638,145,1.097,147,1.039,155,2.135,158,1.437,159,2.382,160,2.382,162,2.382,163,2.382,181,2.382,187,2.135,192,1.259,196,1.87,200,1.568,201,2.89,202,2.382,203,2.382,204,1.501,206,1.954,207,2.676,208,2.676,209,2.676,210,1.954,211,1.954,212,1.46,213,1.004,214,1.269,215,2.201,216,2.89,218,0.856,220,1.634,222,1.954,223,1.121,225,1.752,229,1.954,230,2.398,236,2.89,243,1.269,246,1.027,248,1.137,249,1.269,250,2.046,251,1.581,252,1.751,253,1.751,254,1.137,255,1.137,256,1.137,257,1.137,258,1.269,259,1.137,260,1.269,261,1.269,262,1.269,263,1.269,264,0.712,265,1.269,267,0.933,270,1.269,271,1.269,284,1.434,285,1.269,286,1.269,287,1.954,288,1.137,289,1.269,290,1.269,291,1.269,292,1.269,294,1.269,295,1.269,297,1.954,298,1.269,299,1.269,392,2.693,398,1.269,399,1.434,441,0.851,492,3.491,493,3.108,494,3.108,495,3.108,496,3.108,497,3.491,506,3.108,508,3.108,509,1.655,510,2.549,512,3.491,519,1.655,520,1.434,521,1.655,522,2.208,523,2.208,524,2.208,525,2.208,527,1.655,528,1.655,529,1.655,530,1.655,532,1.655,533,1.655,534,1.655,535,1.434,536,3.108,537,1.655,538,2.549,539,1.655,540,1.655,541,1.655,542,1.655,543,1.655,544,1.655,545,1.655,546,1.655,547,1.655,548,1.655,549,1.655,550,1.655,551,2.549,553,1.434,554,1.655,555,1.655,556,1.655,557,1.434,575,1.655,599,1.434,600,1.991,601,1.991,602,1.991,603,1.991,604,1.991,605,1.991,606,1.991,607,1.991,608,1.991,609,1.991,610,1.991,611,1.991,612,1.991,613,1.991,614,1.991,615,1.991,616,1.991,617,3.066,618,3.066,619,1.991]],["title/modules/WebBluetoothModule.html",[41,1.482,84,2.279]],["body/modules/WebBluetoothModule.html",[0,1.518,1,3.237,3,0.485,4,0.485,5,0.429,6,1.061,7,0.424,8,2.264,11,0.965,12,2.264,13,1.832,14,0.544,15,0.035,16,1.07,17,3.287,18,4.288,19,2.953,20,0.671,21,3.852,22,2.558,23,1.657,24,2.953,25,1.857,26,2.953,27,1.547,28,2.171,29,2.953,30,0.685,31,3.715,32,1.298,33,2.135,34,2.558,35,2.945,36,2.953,37,3.287,38,2.953,39,2.264,40,0.141,41,2.417,42,2.39,43,3.852,44,1.518,45,2.204,46,2.171,47,2.953,48,2.264,49,1.665,50,0.025,51,0.025,69,0.671,86,2.028,142,0.74,145,0.671,147,0.74,192,1.065,218,0.813,232,1.665,620,3.552,621,3.552]],["title/coverage.html",[622,3.567]],["body/coverage.html",[0,1.696,1,1.614,5,0.342,6,1.406,7,0.562,8,3.17,14,0.433,15,0.035,23,1.01,25,1.3,27,0.848,28,1.324,31,3.304,33,1.104,37,1.801,40,0.207,44,2.125,48,1.801,50,0.021,51,0.021,52,1.491,53,1.01,57,2.35,71,1.01,74,1.01,76,1.01,78,1.01,80,1.01,139,2.036,141,2.35,156,3.583,157,3.583,215,2.239,251,2.566,303,1.491,305,2.036,328,5.106,339,2.35,355,2.923,364,1.614,371,2.35,393,4.629,409,1.458,410,2.841,440,1.458,450,1.458,456,1.458,491,3.583,564,2.036,565,2.35,570,3.583,599,3.583,622,2.35,623,2.036,624,2.827,625,2.827,626,2.827,627,4.587,628,6.239,629,2.35,630,2.827,631,2.827,632,3.3,633,3.3,634,2.35,635,2.35,636,4.975,637,3.969,638,2.827,639,2.827,640,2.827,641,2.827,642,3.969,643,2.827,644,2.35,645,3.3,646,2.35,647,2.827,648,2.827]],["title/dependencies.html",[87,2.42,649,1.913]],["body/dependencies.html",[15,0.035,20,0.814,22,3.107,50,0.028,51,0.028,87,2.749,103,4.354,127,1.685,136,2.701,248,2.463,520,3.107,650,4.314,651,6.238,652,4.314,653,5.237,654,4.314,655,4.314,656,4.314,657,4.314,658,4.314,659,4.314,660,4.314,661,4.314,662,4.314,663,3.586,664,4.314,665,4.314,666,4.314,667,4.314,668,4.314,669,4.314,670,4.314,671,4.314,672,4.314,673,4.314]],["title/miscellaneous/functions.html",[674,1.37,675,3.157]],["body/miscellaneous/functions.html",[1,3.144,6,1.074,7,0.429,8,2.989,9,0.567,11,0.977,14,0.718,15,0.031,25,1.913,34,3.378,35,2.678,37,3.724,48,3.508,50,0.03,51,0.03,69,0.886,218,1.074,674,2.42,675,3.9,676,5.844]],["title/index.html",[9,0.321,677,1.913,678,1.913]],["body/index.html",[7,0.451,12,1.37,15,0.035,16,1.02,17,2.072,20,0.74,23,1.765,30,0.474,32,1.281,39,1.37,40,0.155,41,1.524,42,1.677,45,0.919,50,0.017,51,0.017,60,1.27,61,1.524,72,1.675,84,2.342,85,1.228,94,1.37,126,2.048,127,2.061,136,1.109,137,1.788,138,1.162,161,2.498,192,1.537,197,1.788,200,1.728,204,0.769,212,1.928,246,1.677,256,1.228,257,1.228,264,1.678,265,1.37,266,2.703,267,2.199,268,2.703,282,1.677,303,1.2,309,2.703,310,3.633,321,2.703,322,2.703,325,1.857,329,1.677,331,2.703,332,1.788,334,2.342,337,1.788,338,2.703,378,1.788,398,2.072,404,1.788,411,1.228,415,1.228,418,1.228,435,1.109,441,0.919,451,1.228,458,1.228,623,2.824,649,1.549,663,2.703,677,1.549,678,1.549,679,2.15,680,3.252,681,3.252,682,2.15,683,2.15,684,2.15,685,2.15,686,2.15,687,2.15,688,2.15,689,2.15,690,2.15,691,3.902,692,3.252,693,2.15,694,3.252,695,4.37,696,3.252,697,3.252,698,3.252,699,3.252,700,4.936,701,5.126,702,3.252,703,3.252,704,2.15,705,3.252,706,2.15,707,2.15,708,2.15,709,3.252,710,2.15,711,2.15,712,2.15,713,2.15,714,2.15,715,2.15,716,3.252,717,2.15,718,3.252,719,2.15,720,2.15,721,2.15,722,2.15,723,2.703,724,2.15,725,2.15,726,2.15,727,2.15,728,3.252,729,2.15,730,2.15,731,2.15,732,2.15,733,2.15,734,3.252,735,1.788,736,2.15,737,2.15,738,2.15,739,2.15,740,2.15,741,2.15,742,2.15,743,2.15,744,2.15,745,2.15,746,2.15,747,2.15,748,1.788,749,3.252,750,2.15,751,2.15,752,3.252,753,3.252,754,2.15,755,2.15,756,2.15,757,2.703,758,2.15,759,2.15,760,3.252,761,2.15,762,2.15,763,2.15,764,2.15,765,2.15,766,2.15,767,2.15,768,2.15,769,2.15,770,2.15,771,2.15,772,2.15,773,2.342,774,2.703,775,3.259,776,1.788,777,1.788,778,1.788,779,1.788,780,2.703,781,1.788,782,1.788,783,1.788,784,1.788,785,1.788,786,2.703,787,4.492,788,1.788,789,1.788,790,1.788,791,3.259,792,1.788,793,2.703,794,1.788,795,1.788,796,1.788,797,1.788,798,1.788,799,1.788,800,1.788,801,1.788,802,1.788,803,2.703,804,1.788,805,1.788,806,1.788,807,1.788,808,1.788,809,1.788,810,2.703,811,2.703,812,1.788,813,1.788,814,1.788,815,1.788,816,1.788,817,1.788,818,1.788,819,1.788,820,1.788,821,1.788,822,1.788,823,1.788,824,1.788,825,1.788,826,1.788,827,1.788,828,1.788,829,1.788,830,1.788,831,1.788,832,1.788,833,1.788,834,1.788,835,1.788,836,1.788,837,1.788,838,1.788,839,1.788,840,1.788]],["title/license.html",[677,1.913,678,1.913,773,1.913]],["body/license.html",[15,0.027,50,0.027,51,0.027,94,2.533,435,2.05,623,2.863,691,4.139,723,3.304,757,3.304,773,2.863,774,4.139,775,4.52,776,3.304,777,3.304,778,3.304,779,3.304,780,4.139,781,3.304,782,3.304,783,3.304,784,3.304,785,3.304,786,4.139,787,5.152,788,3.304,789,3.304,790,3.304,791,4.52,792,3.304,793,4.139,794,3.304,795,3.304,796,3.304,797,3.304,798,3.304,799,3.304,800,3.304,801,3.304,802,3.304,803,4.139,804,3.304,805,3.304,806,3.304,807,3.304,808,3.304,809,3.304,810,4.139,811,4.139,812,3.304,813,3.304,814,3.304,815,3.304,816,3.304,817,3.304,818,3.304,819,3.304,820,3.304,821,3.304,822,3.304,823,3.304,824,3.304,825,3.304,826,3.304,827,3.304,828,3.304,829,3.304,830,3.304,831,3.304,832,3.304,833,3.304,834,3.304,835,3.304,836,3.304,837,3.304,838,3.304,839,3.304,840,3.304]],["title/modules.html",[86,2.45]],["body/modules.html",[15,0.03,41,2.295,50,0.03,51,0.03,85,2.797,86,2.797,136,2.527,348,4.072,841,4.898,842,5.646,843,4.898,844,4.072]],["title/overview.html",[845,3.567]],["body/overview.html",[2,3.019,15,0.034,41,2.609,50,0.028,51,0.028,53,2.197,54,1.964,71,1.99,74,1.99,76,1.99,78,1.99,80,1.99,85,3.677,86,2.393,87,3.279,88,3.484,89,3.484,90,3.484,91,3.484,92,4.278,93,3.484,94,2.671,140,2.162,304,2.162,735,4.278,748,3.484,845,3.484,846,5.146]],["title/properties.html",[10,1.042,649,1.913]],["body/properties.html",[10,1.367,15,0.032,50,0.031,51,0.031,847,4.981,848,4.981]],["title/miscellaneous/typealiases.html",[674,1.37,849,3.798]],["body/miscellaneous/typealiases.html",[6,1.097,7,0.438,9,0.579,14,0.902,15,0.03,50,0.03,51,0.03,305,3.452,314,4.635,481,4.015,629,3.984,674,2.472,850,4.792,851,5.575,852,4.792,853,4.792]],["title/miscellaneous/variables.html",[674,1.37,854,3.157]],["body/miscellaneous/variables.html",[6,0.353,7,0.141,9,0.186,14,0.692,15,0.035,23,1.866,25,1.542,27,1.412,33,1.839,44,2.012,45,2.012,46,2.207,49,2.207,50,0.013,51,0.013,72,0.659,81,0.723,138,0.552,156,1.112,157,2.623,161,0.983,192,1.655,200,1.842,215,2.358,232,2.586,251,2.693,252,2.689,253,2.689,254,2.08,255,2.08,308,1.283,385,1.112,441,0.659,491,1.112,568,2.63,570,1.112,599,1.112,632,1.283,633,2.63,634,2.083,635,2.083,644,1.283,645,3.028,646,1.283,674,0.796,844,2.63,854,1.283,855,3.164,856,3.164,857,3.164,858,3.164,859,1.543,860,1.543,861,2.506,862,2.506,863,1.543,864,1.543,865,1.543,866,1.543,867,6.324,868,6.324,869,6.324,870,6.324,871,1.543,872,1.543,873,1.543,874,1.543,875,1.543,876,1.543,877,1.543,878,1.543,879,1.543,880,1.543,881,1.543,882,1.543,883,1.543,884,1.543,885,1.543,886,1.543,887,1.543,888,1.543,889,1.543,890,1.543,891,1.543,892,5.003,893,1.543,894,4.71,895,1.543,896,4.71,897,1.543,898,1.543,899,1.543,900,1.543,901,1.543,902,1.543,903,1.543,904,1.543,905,1.543,906,1.543,907,3.164,908,3.164,909,1.543,910,1.543,911,1.543,912,1.543,913,1.543,914,1.543,915,1.543,916,1.543,917,1.543,918,1.543,919,1.543,920,1.543,921,1.543,922,1.543,923,1.543,924,1.543,925,1.543,926,1.543,927,1.543,928,1.543,929,1.543,930,1.543,931,1.543,932,1.543,933,1.543,934,1.543,935,1.543,936,1.543,937,1.543,938,1.543,939,1.543,940,1.543,941,1.543,942,1.543,943,1.543,944,1.543,945,1.543,946,1.543,947,1.543,948,1.543,949,1.543,950,1.543,951,1.543,952,1.543,953,1.543,954,1.543,955,1.543,956,1.543,957,1.543,958,1.543,959,1.543,960,1.543,961,1.543,962,1.543,963,1.543,964,1.543,965,1.543,966,1.543]]],"invertedIndex":[["",{"_index":15,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["0",{"_index":393,"title":{},"body":{"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{},"coverage.html":{}}}],["0.0.6",{"_index":664,"title":{},"body":{"dependencies.html":{}}}],["0.13.3",{"_index":673,"title":{},"body":{"dependencies.html":{}}}],["0/1",{"_index":628,"title":{},"body":{"coverage.html":{}}}],["0/10",{"_index":638,"title":{},"body":{"coverage.html":{}}}],["0/13",{"_index":643,"title":{},"body":{"coverage.html":{}}}],["0/16",{"_index":642,"title":{},"body":{"coverage.html":{}}}],["0/18",{"_index":641,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":627,"title":{},"body":{"coverage.html":{}}}],["0/3",{"_index":626,"title":{},"body":{"coverage.html":{}}}],["0/4",{"_index":636,"title":{},"body":{"coverage.html":{}}}],["0/5",{"_index":640,"title":{},"body":{"coverage.html":{}}}],["0/8",{"_index":639,"title":{},"body":{"coverage.html":{}}}],["0/9",{"_index":637,"title":{},"body":{"coverage.html":{}}}],["000",{"_index":193,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["000000",{"_index":542,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["000000000000",{"_index":870,"title":{},"body":{"miscellaneous/variables.html":{}}}],["0451",{"_index":867,"title":{},"body":{"miscellaneous/variables.html":{}}}],["1",{"_index":398,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["1.35.0",{"_index":666,"title":{},"body":{"dependencies.html":{}}}],["100",{"_index":575,"title":{},"body":{"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["10px",{"_index":406,"title":{},"body":{"components/DashboardComponent.html":{}}}],["112px",{"_index":572,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["11em",{"_index":574,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["120px",{"_index":180,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["15.0.0",{"_index":848,"title":{},"body":{"properties.html":{}}}],["15px",{"_index":403,"title":{},"body":{"components/DashboardComponent.html":{}}}],["16.2.12",{"_index":651,"title":{},"body":{"dependencies.html":{}}}],["16.2.14",{"_index":653,"title":{},"body":{"dependencies.html":{}}}],["16px",{"_index":493,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["17",{"_index":544,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["2",{"_index":735,"title":{},"body":{"index.html":{},"overview.html":{}}}],["2.3.0",{"_index":671,"title":{},"body":{"dependencies.html":{}}}],["2.a",{"_index":690,"title":{},"body":{"index.html":{}}}],["2.b",{"_index":710,"title":{},"body":{"index.html":{}}}],["2017",{"_index":777,"title":{},"body":{"index.html":{},"license.html":{}}}],["20px",{"_index":401,"title":{},"body":{"components/DashboardComponent.html":{}}}],["21/31",{"_index":631,"title":{},"body":{"coverage.html":{}}}],["214px",{"_index":573,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["222px",{"_index":178,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["24px",{"_index":183,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["255px",{"_index":191,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["29.0.5",{"_index":669,"title":{},"body":{"dependencies.html":{}}}],["3",{"_index":738,"title":{},"body":{"index.html":{}}}],["32px",{"_index":408,"title":{},"body":{"components/DashboardComponent.html":{}}}],["4",{"_index":743,"title":{},"body":{"index.html":{}}}],["4000",{"_index":868,"title":{},"body":{"miscellaneous/variables.html":{}}}],["40px",{"_index":389,"title":{},"body":{"components/DashboardComponent.html":{}}}],["4933",{"_index":523,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["5",{"_index":748,"title":{},"body":{"index.html":{},"overview.html":{}}}],["5.1.1",{"_index":662,"title":{},"body":{"dependencies.html":{}}}],["52ffa9740042",{"_index":525,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["5em",{"_index":174,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["5px",{"_index":188,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{}}}],["6",{"_index":846,"title":{},"body":{"overview.html":{}}}],["67",{"_index":630,"title":{},"body":{"coverage.html":{}}}],["7.8.0",{"_index":665,"title":{},"body":{"dependencies.html":{}}}],["700px",{"_index":391,"title":{},"body":{"components/DashboardComponent.html":{}}}],["90px",{"_index":186,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["9b10",{"_index":524,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["9b35",{"_index":522,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["__register__",{"_index":938,"title":{},"body":{"miscellaneous/variables.html":{}}}],["_config",{"_index":307,"title":{},"body":{"injectables/BleService.html":{}}}],["above",{"_index":809,"title":{},"body":{"index.html":{},"license.html":{}}}],["absolute",{"_index":176,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["abstract",{"_index":720,"title":{},"body":{"index.html":{}}}],["accelerometer",{"_index":909,"title":{},"body":{"miscellaneous/variables.html":{}}}],["acceptalldevices",{"_index":732,"title":{},"body":{"index.html":{}}}],["accessors",{"_index":211,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["action",{"_index":834,"title":{},"body":{"index.html":{},"license.html":{}}}],["actual_component",{"_index":83,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["addeventlistener",{"_index":414,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["addeventlistener(type",{"_index":423,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["address",{"_index":941,"title":{},"body":{"miscellaneous/variables.html":{}}}],["advanced",{"_index":711,"title":{},"body":{"index.html":{}}}],["aliases",{"_index":850,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["align",{"_index":170,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["and/or",{"_index":801,"title":{},"body":{"index.html":{},"license.html":{}}}],["angular",{"_index":378,"title":{},"body":{"components/DashboardComponent.html":{},"index.html":{}}}],["angular/animations",{"_index":650,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk",{"_index":652,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk/layout",{"_index":99,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/common",{"_index":22,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"dependencies.html":{}}}],["angular/compiler",{"_index":654,"title":{},"body":{"dependencies.html":{}}}],["angular/core",{"_index":20,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"dependencies.html":{},"index.html":{}}}],["angular/forms",{"_index":655,"title":{},"body":{"dependencies.html":{}}}],["angular/material",{"_index":656,"title":{},"body":{"dependencies.html":{}}}],["angular/material/button",{"_index":101,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/card",{"_index":106,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/expansion",{"_index":108,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/grid",{"_index":110,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/icon",{"_index":113,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/list",{"_index":115,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/menu",{"_index":117,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/progress",{"_index":119,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/snack",{"_index":122,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["angular/material/toolbar",{"_index":125,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/platform",{"_index":103,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["angular/router",{"_index":658,"title":{},"body":{"dependencies.html":{}}}],["annotated",{"_index":696,"title":{},"body":{"index.html":{}}}],["api",{"_index":749,"title":{},"body":{"index.html":{}}}],["app",{"_index":765,"title":{},"body":{"index.html":{}}}],["app.component",{"_index":128,"title":{},"body":{"modules/AppModule.html":{}}}],["appcomponent",{"_index":53,"title":{"components/AppComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["appmodule",{"_index":85,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"index.html":{},"modules.html":{},"overview.html":{}}}],["apppage",{"_index":139,"title":{"classes/AppPage.html":{}},"body":{"classes/AppPage.html":{},"coverage.html":{}}}],["args",{"_index":359,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["arising",{"_index":838,"title":{},"body":{"index.html":{},"license.html":{}}}],["ask",{"_index":744,"title":{},"body":{"index.html":{}}}],["associated",{"_index":788,"title":{},"body":{"index.html":{},"license.html":{}}}],["authors",{"_index":827,"title":{},"body":{"index.html":{},"license.html":{}}}],["auto",{"_index":394,"title":{},"body":{"components/DashboardComponent.html":{}}}],["available",{"_index":844,"title":{},"body":{"modules.html":{},"miscellaneous/variables.html":{}}}],["awboptions",{"_index":1,"title":{"interfaces/AWBOptions.html":{}},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["b",{"_index":252,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["b000",{"_index":869,"title":{},"body":{"miscellaneous/variables.html":{}}}],["bar",{"_index":123,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["barometer",{"_index":902,"title":{},"body":{"miscellaneous/variables.html":{}}}],["battery",{"_index":72,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["battery_charging_full",{"_index":194,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["battery_level",{"_index":268,"title":{},"body":{"components/BatteryLevelComponent.html":{},"index.html":{}}}],["battery_service",{"_index":266,"title":{},"body":{"components/BatteryLevelComponent.html":{},"index.html":{}}}],["batterylevelcomponent",{"_index":71,"title":{"components/BatteryLevelComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["batterylevelservice",{"_index":699,"title":{},"body":{"index.html":{}}}],["batterylevelservice.gatt_characteristic_battery_level",{"_index":742,"title":{},"body":{"index.html":{}}}],["batterylevelservice.gatt_primary_service",{"_index":734,"title":{},"body":{"index.html":{}}}],["ble",{"_index":60,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["ble.service",{"_index":249,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["blecore",{"_index":251,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["bleservice",{"_index":215,"title":{"injectables/BleService.html":{}},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["bleservice(b",{"_index":255,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["block",{"_index":181,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["blog",{"_index":763,"title":{},"body":{"index.html":{}}}],["bluetooth",{"_index":127,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"dependencies.html":{},"index.html":{}}}],["bluetooth.service",{"_index":24,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["bluetooth/src/lib/bluetooth.module.ts",{"_index":8,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["bluetooth/src/lib/bluetooth.module.ts:32",{"_index":621,"title":{},"body":{"modules/WebBluetoothModule.html":{}}}],["bluetooth/src/lib/bluetooth.service.ts",{"_index":629,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["bluetooth/src/lib/lang/uuids/ti",{"_index":632,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["bluetooth/src/lib/logger.service.ts",{"_index":355,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"coverage.html":{}}}],["bluetooth/src/lib/logger.service.ts:13",{"_index":361,"title":{},"body":{"injectables/ConsoleLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:16",{"_index":358,"title":{},"body":{"injectables/ConsoleLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:19",{"_index":363,"title":{},"body":{"injectables/ConsoleLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:28",{"_index":562,"title":{},"body":{"injectables/NoLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:29",{"_index":561,"title":{},"body":{"injectables/NoLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:30",{"_index":563,"title":{},"body":{"injectables/NoLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:4",{"_index":559,"title":{},"body":{"interfaces/Logger.html":{}}}],["bluetooth/src/lib/logger.service.ts:5",{"_index":558,"title":{},"body":{"interfaces/Logger.html":{}}}],["bluetooth/src/lib/logger.service.ts:6",{"_index":560,"title":{},"body":{"interfaces/Logger.html":{}}}],["bluetooth/src/lib/platform/browser.ts",{"_index":339,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{},"coverage.html":{}}}],["bluetooth/src/lib/platform/browser.ts:14",{"_index":344,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["bluetooth/src/lib/platform/browser.ts:5",{"_index":341,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["bluetooth/src/lib/platform/server.ts",{"_index":565,"title":{},"body":{"injectables/ServerWebBluetooth.html":{},"coverage.html":{}}}],["bluetooth/src/lib/platform/server.ts:5",{"_index":566,"title":{},"body":{"injectables/ServerWebBluetooth.html":{}}}],["bluetooth/src/lib/test.utils.ts",{"_index":410,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["bluetooth/src/lib/test.utils.ts:103",{"_index":477,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:12",{"_index":417,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:14",{"_index":420,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:17",{"_index":426,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:24",{"_index":428,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:29",{"_index":427,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:39",{"_index":482,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:41",{"_index":483,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:45",{"_index":484,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:50",{"_index":486,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:54",{"_index":485,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:60",{"_index":488,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetooth/src/lib/test.utils.ts:61",{"_index":489,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetooth/src/lib/test.utils.ts:65",{"_index":490,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetooth/src/lib/test.utils.ts:7",{"_index":419,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:71",{"_index":474,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:72",{"_index":473,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:73",{"_index":471,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:74",{"_index":472,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:78",{"_index":469,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:8",{"_index":422,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:86",{"_index":478,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:90",{"_index":475,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:97",{"_index":476,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth_disabled",{"_index":383,"title":{},"body":{"components/DashboardComponent.html":{}}}],["bluetooth_searching",{"_index":381,"title":{},"body":{"components/DashboardComponent.html":{}}}],["bluetoothcharacteristicproperties",{"_index":457,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetoothcharacteristicuuid",{"_index":454,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetoothcore",{"_index":23,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["bluetoothcore(b",{"_index":254,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["bluetoothremotegattcharacteristic",{"_index":746,"title":{},"body":{"index.html":{}}}],["bluetoothremotegattserver",{"_index":418,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["bluetoothremotegattservice",{"_index":740,"title":{},"body":{"index.html":{}}}],["bluetoothserviceuuid",{"_index":447,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["boolean",{"_index":13,"title":{},"body":{"interfaces/AWBOptions.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"modules/WebBluetoothModule.html":{}}}],["bootstrap",{"_index":97,"title":{},"body":{"modules/AppModule.html":{}}}],["bordervisible",{"_index":540,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["bottom",{"_index":190,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{}}}],["browse",{"_index":842,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":136,"title":{},"body":{"modules/AppModule.html":{},"classes/AppPage.html":{},"injectables/BrowserWebBluetooth.html":{},"dependencies.html":{},"index.html":{},"modules.html":{}}}],["browser's",{"_index":689,"title":{},"body":{"index.html":{}}}],["browser.get(browser.baseurl",{"_index":151,"title":{},"body":{"classes/AppPage.html":{}}}],["browser/animations",{"_index":104,"title":{},"body":{"modules/AppModule.html":{}}}],["browseranimationsmodule",{"_index":102,"title":{},"body":{"modules/AppModule.html":{}}}],["browsermodule",{"_index":135,"title":{},"body":{"modules/AppModule.html":{}}}],["browserwebbluetooth",{"_index":25,"title":{"injectables/BrowserWebBluetooth.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BrowserWebBluetooth.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["button",{"_index":405,"title":{},"body":{"components/DashboardComponent.html":{}}}],["c",{"_index":776,"title":{},"body":{"index.html":{},"license.html":{}}}],["call",{"_index":700,"title":{},"body":{"index.html":{}}}],["can't",{"_index":719,"title":{},"body":{"index.html":{}}}],["canvas",{"_index":492,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["card",{"_index":402,"title":{},"body":{"components/DashboardComponent.html":{}}}],["cc2650",{"_index":908,"title":{},"body":{"miscellaneous/variables.html":{}}}],["center",{"_index":166,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["changelog",{"_index":661,"title":{},"body":{"dependencies.html":{}}}],["changevalue",{"_index":468,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["changevalue(value",{"_index":466,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["characteristic",{"_index":267,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["characteristics",{"_index":451,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["characteristicvaluechanged",{"_index":460,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["charge",{"_index":783,"title":{},"body":{"index.html":{},"license.html":{}}}],["chart",{"_index":494,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["chartref",{"_index":495,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["checkout",{"_index":761,"title":{},"body":{"index.html":{}}}],["chegham",{"_index":779,"title":{},"body":{"index.html":{},"license.html":{}}}],["claim",{"_index":830,"title":{},"body":{"index.html":{},"license.html":{}}}],["class",{"_index":40,"title":{"classes/AppPage.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"index.html":{}}}],["classes",{"_index":140,"title":{},"body":{"classes/AppPage.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"overview.html":{}}}],["clear",{"_index":415,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["close",{"_index":299,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["cluster_appmodule",{"_index":88,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_bootstrap",{"_index":89,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_declarations",{"_index":91,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":90,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["color",{"_index":195,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["command",{"_index":758,"title":{},"body":{"index.html":{}}}],["commonmodule",{"_index":21,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["component",{"_index":52,"title":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{}}}],["component_template",{"_index":68,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["components",{"_index":54,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"overview.html":{}}}],["conditions",{"_index":808,"title":{},"body":{"index.html":{},"license.html":{}}}],["config",{"_index":308,"title":{},"body":{"injectables/BleService.html":{},"miscellaneous/variables.html":{}}}],["config(options",{"_index":313,"title":{},"body":{"injectables/BleService.html":{}}}],["configuration",{"_index":894,"title":{},"body":{"miscellaneous/variables.html":{}}}],["connect",{"_index":382,"title":{},"body":{"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["connected",{"_index":282,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["connection",{"_index":839,"title":{},"body":{"index.html":{},"license.html":{}}}],["console",{"_index":197,"title":{},"body":{"components/BatteryLevelComponent.html":{},"index.html":{}}}],["console.error.apply(console",{"_index":369,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["console.log('getting",{"_index":709,"title":{},"body":{"index.html":{}}}],["console.log('reading",{"_index":553,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["console.log.apply(console",{"_index":368,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["console.warn.apply(console",{"_index":370,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["consoleloggerservice",{"_index":27,"title":{"injectables/ConsoleLoggerService.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["consoleloggerserviceconfig",{"_index":48,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["consoleloggerserviceconfig(options",{"_index":34,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["const",{"_index":250,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["constructor",{"_index":213,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["constructor(ble",{"_index":311,"title":{},"body":{"injectables/BleService.html":{}}}],["constructor(device",{"_index":480,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["constructor(id",{"_index":416,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["constructor(properties",{"_index":461,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["constructor(public",{"_index":329,"title":{},"body":{"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["constructor(service",{"_index":214,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["container",{"_index":400,"title":{},"body":{"components/DashboardComponent.html":{}}}],["content",{"_index":153,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{}}}],["contract",{"_index":835,"title":{},"body":{"index.html":{},"license.html":{}}}],["contributions",{"_index":767,"title":{},"body":{"index.html":{}}}],["control",{"_index":945,"title":{},"body":{"miscellaneous/variables.html":{}}}],["copies",{"_index":803,"title":{},"body":{"index.html":{},"license.html":{}}}],["copy",{"_index":786,"title":{},"body":{"index.html":{},"license.html":{}}}],["copyright",{"_index":775,"title":{},"body":{"index.html":{},"license.html":{}}}],["correctly",{"_index":685,"title":{},"body":{"index.html":{}}}],["count",{"_index":591,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["counter",{"_index":597,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["coverage",{"_index":622,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["current_used_parameters",{"_index":947,"title":{},"body":{"miscellaneous/variables.html":{}}}],["d",{"_index":294,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["damages",{"_index":831,"title":{},"body":{"index.html":{},"license.html":{}}}],["dashboard",{"_index":372,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dashboard'},{'name",{"_index":75,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["dashboard.component.css",{"_index":374,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dashboard.component.html",{"_index":376,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dashboard/dashboard.component",{"_index":131,"title":{},"body":{"modules/AppModule.html":{}}}],["dashboardcomponent",{"_index":74,"title":{"components/DashboardComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["data",{"_index":892,"title":{},"body":{"miscellaneous/variables.html":{}}}],["dataview",{"_index":264,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["deal",{"_index":790,"title":{},"body":{"index.html":{},"license.html":{}}}],["dealings",{"_index":840,"title":{},"body":{"index.html":{},"license.html":{}}}],["decimal",{"_index":618,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["declarations",{"_index":96,"title":{},"body":{"modules/AppModule.html":{}}}],["decoder",{"_index":263,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["decoder(value",{"_index":323,"title":{},"body":{"injectables/BleService.html":{}}}],["decorators",{"_index":509,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["default",{"_index":232,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"components/StepCounterComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/variables.html":{}}}],["defined",{"_index":145,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["demo",{"_index":379,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dependencies",{"_index":87,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"dependencies.html":{},"overview.html":{}}}],["deps",{"_index":49,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/variables.html":{}}}],["details",{"_index":353,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["determinate",{"_index":238,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["dev.to",{"_index":764,"title":{},"body":{"index.html":{}}}],["developer",{"_index":722,"title":{},"body":{"index.html":{}}}],["device",{"_index":212,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["device.gatt",{"_index":443,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["device.name",{"_index":384,"title":{},"body":{"components/DashboardComponent.html":{}}}],["device_id",{"_index":943,"title":{},"body":{"miscellaneous/variables.html":{}}}],["device_information",{"_index":865,"title":{},"body":{"miscellaneous/variables.html":{}}}],["devicesubscription",{"_index":198,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["direction",{"_index":167,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["directions_walk",{"_index":577,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["directive",{"_index":66,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["directives",{"_index":82,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["disconnect",{"_index":204,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["disconnect_request",{"_index":951,"title":{},"body":{"miscellaneous/variables.html":{}}}],["disconnectdevice",{"_index":309,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["disconnected",{"_index":283,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["discover",{"_index":728,"title":{},"body":{"index.html":{}}}],["discovery",{"_index":730,"title":{},"body":{"index.html":{}}}],["display",{"_index":163,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["distribute",{"_index":799,"title":{},"body":{"index.html":{},"license.html":{}}}],["documentation",{"_index":623,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["dom",{"_index":55,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["dynamic",{"_index":657,"title":{},"body":{"dependencies.html":{}}}],["e2e/src/app.po.ts",{"_index":141,"title":{},"body":{"classes/AppPage.html":{},"coverage.html":{}}}],["e2e/src/app.po.ts:4",{"_index":149,"title":{},"body":{"classes/AppPage.html":{}}}],["e2e/src/app.po.ts:8",{"_index":146,"title":{},"body":{"classes/AppPage.html":{}}}],["each",{"_index":260,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["easiest",{"_index":693,"title":{},"body":{"index.html":{}}}],["ef680200",{"_index":521,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["ef680201",{"_index":616,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["ef680203",{"_index":526,"title":{},"body":{"components/HumidityComponent.html":{}}}],["ef680400",{"_index":595,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["ef680405",{"_index":596,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["element",{"_index":65,"title":{},"body":{"components/AppComponent.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["element(by.css('app",{"_index":152,"title":{},"body":{"classes/AppPage.html":{}}}],["elementref",{"_index":508,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["elsewhere",{"_index":721,"title":{},"body":{"index.html":{}}}],["emites",{"_index":725,"title":{},"body":{"index.html":{}}}],["emitted",{"_index":703,"title":{},"body":{"index.html":{}}}],["enable",{"_index":687,"title":{},"body":{"index.html":{}}}],["enabletracing",{"_index":12,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["environment",{"_index":645,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["err",{"_index":291,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["error",{"_index":225,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["error('your",{"_index":347,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["error(...args",{"_index":357,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["error(args",{"_index":366,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["event",{"_index":435,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{},"license.html":{}}}],["eventlistener",{"_index":425,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["example",{"_index":697,"title":{},"body":{"index.html":{}}}],["export",{"_index":30,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["express",{"_index":818,"title":{},"body":{"index.html":{},"license.html":{}}}],["f000180a",{"_index":866,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000180f",{"_index":889,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a19",{"_index":890,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a23",{"_index":872,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a24",{"_index":874,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a25",{"_index":876,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a26",{"_index":878,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a27",{"_index":880,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a28",{"_index":882,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a29",{"_index":884,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a2a",{"_index":886,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a50",{"_index":888,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa00",{"_index":891,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa01",{"_index":893,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa02",{"_index":895,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa03",{"_index":897,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa10",{"_index":910,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa11",{"_index":911,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa12",{"_index":912,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa13",{"_index":913,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa20",{"_index":898,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa21",{"_index":899,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa22",{"_index":900,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa23",{"_index":901,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa30",{"_index":915,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa31",{"_index":916,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa32",{"_index":917,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa33",{"_index":918,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa40",{"_index":903,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa41",{"_index":904,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa42",{"_index":905,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa44",{"_index":906,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa50",{"_index":920,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa51",{"_index":921,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa52",{"_index":922,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa53",{"_index":923,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa64",{"_index":964,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa65",{"_index":965,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa66",{"_index":966,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa70",{"_index":930,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa71",{"_index":931,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa72",{"_index":932,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa73",{"_index":933,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa80",{"_index":925,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa81",{"_index":926,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa82",{"_index":927,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa83",{"_index":928,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac00",{"_index":939,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac01",{"_index":940,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac02",{"_index":942,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac03",{"_index":944,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc0",{"_index":946,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc1",{"_index":948,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc2",{"_index":950,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc3",{"_index":952,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc0",{"_index":954,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc1",{"_index":956,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc2",{"_index":958,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc3",{"_index":960,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc4",{"_index":962,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffe0",{"_index":935,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffe1",{"_index":937,"title":{},"body":{"miscellaneous/variables.html":{}}}],["fakebluetoothdevice",{"_index":409,"title":{"classes/FakeBluetoothDevice.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["fakebluetoothremotegattcharacteristic",{"_index":456,"title":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["fakebluetoothremotegattserver",{"_index":440,"title":{"classes/FakeBluetoothRemoteGATTServer.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["fakebluetoothremotegattservice",{"_index":450,"title":{"classes/FakeBluetoothRemoteGATTService.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["false",{"_index":441,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["few",{"_index":769,"title":{},"body":{"index.html":{}}}],["ff0000",{"_index":548,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["ffffff",{"_index":537,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["file",{"_index":5,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["files",{"_index":789,"title":{},"body":{"index.html":{},"license.html":{}}}],["fillstyle",{"_index":536,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["firmware_rev",{"_index":877,"title":{},"body":{"miscellaneous/variables.html":{}}}],["fitness",{"_index":823,"title":{},"body":{"index.html":{},"license.html":{}}}],["flex",{"_index":164,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["following",{"_index":757,"title":{},"body":{"index.html":{},"license.html":{}}}],["font",{"_index":172,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["fontsize",{"_index":543,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["forroot",{"_index":620,"title":{},"body":{"modules/WebBluetoothModule.html":{}}}],["forroot(options",{"_index":43,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["found",{"_index":750,"title":{},"body":{"index.html":{}}}],["free",{"_index":723,"title":{},"body":{"index.html":{},"license.html":{}}}],["full",{"_index":762,"title":{},"body":{"index.html":{}}}],["function",{"_index":31,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["functions",{"_index":675,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["furnished",{"_index":806,"title":{},"body":{"index.html":{},"license.html":{}}}],["gatt",{"_index":411,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["gatt_characteristic_battery_level",{"_index":713,"title":{},"body":{"index.html":{}}}],["gatt_primary_service",{"_index":714,"title":{},"body":{"index.html":{}}}],["gattserverdisconnected",{"_index":421,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getcharacteristic",{"_index":487,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getcharacteristic(characteristic",{"_index":453,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getdevice",{"_index":246,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["getdevicestatus",{"_index":205,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["getprimaryservice",{"_index":479,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["getprimaryservice(service",{"_index":446,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getting",{"_index":677,"title":{"index.html":{},"license.html":{}},"body":{"index.html":{}}}],["gettitletext",{"_index":143,"title":{},"body":{"classes/AppPage.html":{}}}],["given",{"_index":704,"title":{},"body":{"index.html":{}}}],["granted",{"_index":782,"title":{},"body":{"index.html":{},"license.html":{}}}],["graph",{"_index":843,"title":{},"body":{"modules.html":{}}}],["grid",{"_index":399,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["gyroscope",{"_index":919,"title":{},"body":{"miscellaneous/variables.html":{}}}],["hardware_rev",{"_index":879,"title":{},"body":{"miscellaneous/variables.html":{}}}],["haserror",{"_index":206,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["haserror(error",{"_index":222,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["height",{"_index":576,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["help",{"_index":772,"title":{},"body":{"index.html":{}}}],["here",{"_index":695,"title":{},"body":{"index.html":{}}}],["hereby",{"_index":781,"title":{},"body":{"index.html":{},"license.html":{}}}],["holders",{"_index":828,"title":{},"body":{"index.html":{},"license.html":{}}}],["host",{"_index":162,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["html",{"_index":64,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["http://caniuse.com/#search=bluetooth",{"_index":351,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["https://manekinekko.github.io/angular",{"_index":751,"title":{},"body":{"index.html":{}}}],["humidity",{"_index":385,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"miscellaneous/variables.html":{}}}],["humidity'},{'name",{"_index":77,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["humiditycomponent",{"_index":76,"title":{"components/HumidityComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["icon",{"_index":189,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["id",{"_index":412,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["identifier",{"_index":624,"title":{},"body":{"coverage.html":{}}}],["ieee11073",{"_index":885,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_block_request",{"_index":957,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_count",{"_index":959,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_notify",{"_index":955,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_status",{"_index":961,"title":{},"body":{"miscellaneous/variables.html":{}}}],["img",{"_index":407,"title":{},"body":{"components/DashboardComponent.html":{}}}],["implements",{"_index":158,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["implied",{"_index":819,"title":{},"body":{"index.html":{},"license.html":{}}}],["import",{"_index":16,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["imports",{"_index":39,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["included",{"_index":812,"title":{},"body":{"index.html":{},"license.html":{}}}],["including",{"_index":793,"title":{},"body":{"index.html":{},"license.html":{}}}],["indeterminate",{"_index":280,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["index",{"_index":9,"title":{"index.html":{}},"body":{"interfaces/AWBOptions.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["info",{"_index":3,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["initchart",{"_index":497,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["initialvalue",{"_index":459,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["injectable",{"_index":303,"title":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{}},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"coverage.html":{},"index.html":{}}}],["injectables",{"_index":304,"title":{},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"overview.html":{}}}],["injectiontoken",{"_index":19,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["injectiontoken('awboptions",{"_index":38,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["install",{"_index":680,"title":{},"body":{"index.html":{}}}],["installed",{"_index":684,"title":{},"body":{"index.html":{}}}],["instance",{"_index":259,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["integer",{"_index":617,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["interface",{"_index":0,"title":{"interfaces/AWBOptions.html":{},"interfaces/Logger.html":{}},"body":{"interfaces/AWBOptions.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["interfaces",{"_index":2,"title":{},"body":{"interfaces/AWBOptions.html":{},"interfaces/Logger.html":{},"overview.html":{}}}],["interpolation",{"_index":534,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["io",{"_index":963,"title":{},"body":{"miscellaneous/variables.html":{}}}],["issues",{"_index":771,"title":{},"body":{"index.html":{}}}],["it/conventional",{"_index":660,"title":{},"body":{"dependencies.html":{}}}],["jest",{"_index":668,"title":{},"body":{"dependencies.html":{}}}],["justify",{"_index":165,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["key",{"_index":324,"title":{},"body":{"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["keypress",{"_index":934,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":817,"title":{},"body":{"index.html":{},"license.html":{}}}],["l",{"_index":253,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["labels",{"_index":541,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["layoutmodule",{"_index":98,"title":{},"body":{"modules/AppModule.html":{}}}],["left",{"_index":187,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["legend",{"_index":63,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["length",{"_index":531,"title":{},"body":{"components/HumidityComponent.html":{}}}],["level",{"_index":161,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["level'},{'name",{"_index":73,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["level.component",{"_index":130,"title":{},"body":{"modules/AppModule.html":{}}}],["level.component.ts",{"_index":157,"title":{},"body":{"components/BatteryLevelComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["level.component.ts:115",{"_index":228,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:123",{"_index":231,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:129",{"_index":219,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:135",{"_index":224,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:139",{"_index":226,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:66",{"_index":244,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:67",{"_index":239,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:68",{"_index":234,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:69",{"_index":245,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:70",{"_index":242,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:71",{"_index":237,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:73",{"_index":247,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:75",{"_index":217,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:78",{"_index":240,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:79",{"_index":241,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:80",{"_index":235,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:89",{"_index":227,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:99",{"_index":221,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["liability",{"_index":832,"title":{},"body":{"index.html":{},"license.html":{}}}],["liable",{"_index":829,"title":{},"body":{"index.html":{},"license.html":{}}}],["license",{"_index":773,"title":{"license.html":{}},"body":{"index.html":{},"license.html":{}}}],["light",{"_index":929,"title":{},"body":{"miscellaneous/variables.html":{}}}],["limitation",{"_index":794,"title":{},"body":{"index.html":{},"license.html":{}}}],["limited",{"_index":820,"title":{},"body":{"index.html":{},"license.html":{}}}],["line",{"_index":327,"title":{},"body":{"injectables/BleService.html":{},"components/HumidityComponent.html":{}}}],["linewidth",{"_index":547,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["list",{"_index":111,"title":{},"body":{"modules/AppModule.html":{}}}],["listener",{"_index":424,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["listener(mockedevent",{"_index":434,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["listeners",{"_index":413,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["literal",{"_index":481,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{},"components/StepCounterComponent.html":{},"miscellaneous/typealiases.html":{}}}],["log",{"_index":356,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["log(...args",{"_index":360,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["log(args",{"_index":365,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["logger",{"_index":364,"title":{"interfaces/Logger.html":{}},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"coverage.html":{}}}],["logger.service",{"_index":29,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["logic",{"_index":717,"title":{},"body":{"index.html":{}}}],["logs",{"_index":688,"title":{},"body":{"index.html":{}}}],["magnetometer",{"_index":914,"title":{},"body":{"miscellaneous/variables.html":{}}}],["make",{"_index":256,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["makemetokeninjector",{"_index":37,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["manekinekko/angular",{"_index":126,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["manifacturer",{"_index":883,"title":{},"body":{"miscellaneous/variables.html":{}}}],["map",{"_index":321,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["map((value",{"_index":705,"title":{},"body":{"index.html":{}}}],["map(this._config.decoder",{"_index":333,"title":{},"body":{"injectables/BleService.html":{}}}],["margin",{"_index":392,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["mat",{"_index":184,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["matbuttonmodule",{"_index":100,"title":{},"body":{"modules/AppModule.html":{}}}],["matcardmodule",{"_index":105,"title":{},"body":{"modules/AppModule.html":{}}}],["matching",{"_index":51,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["matexpansionmodule",{"_index":107,"title":{},"body":{"modules/AppModule.html":{}}}],["matgridlistmodule",{"_index":109,"title":{},"body":{"modules/AppModule.html":{}}}],["maticonmodule",{"_index":112,"title":{},"body":{"modules/AppModule.html":{}}}],["matlistmodule",{"_index":114,"title":{},"body":{"modules/AppModule.html":{}}}],["matmenumodule",{"_index":116,"title":{},"body":{"modules/AppModule.html":{}}}],["matprogressspinnermodule",{"_index":118,"title":{},"body":{"modules/AppModule.html":{}}}],["matsnackbar",{"_index":216,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["matsnackbarmodule",{"_index":121,"title":{},"body":{"modules/AppModule.html":{}}}],["mattoolbarmodule",{"_index":124,"title":{},"body":{"modules/AppModule.html":{}}}],["max",{"_index":390,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{}}}],["merchantability",{"_index":822,"title":{},"body":{"index.html":{},"license.html":{}}}],["merge",{"_index":797,"title":{},"body":{"index.html":{},"license.html":{}}}],["mergemap",{"_index":712,"title":{},"body":{"index.html":{}}}],["mergemap((characteristic",{"_index":745,"title":{},"body":{"index.html":{}}}],["mergemap((gatt",{"_index":736,"title":{},"body":{"index.html":{}}}],["mergemap((primaryservice",{"_index":739,"title":{},"body":{"index.html":{}}}],["metadata",{"_index":58,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["method",{"_index":701,"title":{},"body":{"index.html":{}}}],["methods",{"_index":142,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["miscellaneous",{"_index":674,"title":{"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["missing",{"_index":679,"title":{},"body":{"index.html":{}}}],["mit",{"_index":774,"title":{},"body":{"index.html":{},"license.html":{}}}],["mocked",{"_index":567,"title":{},"body":{"injectables/ServerWebBluetooth.html":{}}}],["mockedevent",{"_index":430,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["mode",{"_index":199,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["model",{"_index":907,"title":{},"body":{"miscellaneous/variables.html":{}}}],["model_number",{"_index":873,"title":{},"body":{"miscellaneous/variables.html":{}}}],["modify",{"_index":796,"title":{},"body":{"index.html":{},"license.html":{}}}],["module",{"_index":84,"title":{"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{}},"body":{"index.html":{}}}],["modules",{"_index":86,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"modules.html":{},"overview.html":{}}}],["modulewithproviders",{"_index":18,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["more",{"_index":352,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{},"components/DashboardComponent.html":{}}}],["more_vert",{"_index":380,"title":{},"body":{"components/DashboardComponent.html":{}}}],["movement",{"_index":924,"title":{},"body":{"miscellaneous/variables.html":{}}}],["name",{"_index":69,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["navigateto",{"_index":144,"title":{},"body":{"classes/AppPage.html":{}}}],["navigator.bluetooth",{"_index":345,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["need",{"_index":752,"title":{},"body":{"index.html":{}}}],["new",{"_index":33,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BrowserWebBluetooth.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["next",{"_index":288,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["ngmodule",{"_index":17,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["ngondestroy",{"_index":207,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["ngoninit",{"_index":208,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["node_modules",{"_index":686,"title":{},"body":{"index.html":{}}}],["nologgerservice",{"_index":28,"title":{"injectables/NoLoggerService.html":{}},"body":{"interfaces/AWBOptions.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["noninfringement",{"_index":826,"title":{},"body":{"index.html":{},"license.html":{}}}],["note",{"_index":683,"title":{},"body":{"index.html":{}}}],["notice",{"_index":810,"title":{},"body":{"index.html":{},"license.html":{}}}],["notifications",{"_index":708,"title":{},"body":{"index.html":{}}}],["now",{"_index":569,"title":{},"body":{"injectables/ServerWebBluetooth.html":{}}}],["npm",{"_index":681,"title":{},"body":{"index.html":{}}}],["null",{"_index":243,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["number",{"_index":230,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["oad",{"_index":953,"title":{},"body":{"miscellaneous/variables.html":{}}}],["object",{"_index":568,"title":{},"body":{"injectables/ServerWebBluetooth.html":{},"miscellaneous/variables.html":{}}}],["object.keys(titag).map(key",{"_index":863,"title":{},"body":{"miscellaneous/variables.html":{}}}],["obtaining",{"_index":785,"title":{},"body":{"index.html":{},"license.html":{}}}],["of(this.haserror.bind(this",{"_index":552,"title":{},"body":{"components/HumidityComponent.html":{}}}],["ondestroy",{"_index":160,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["oninit",{"_index":159,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["open",{"_index":770,"title":{},"body":{"index.html":{}}}],["optional",{"_index":11,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["optionalservices",{"_index":733,"title":{},"body":{"index.html":{}}}],["options",{"_index":35,"title":{},"body":{"interfaces/AWBOptions.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["options.enabletracing",{"_index":36,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["otherwise",{"_index":837,"title":{},"body":{"index.html":{},"license.html":{}}}],["out",{"_index":94,"title":{},"body":{"modules/AppModule.html":{},"index.html":{},"license.html":{},"overview.html":{}}}],["overview",{"_index":845,"title":{"overview.html":{}},"body":{"overview.html":{}}}],["package",{"_index":649,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["padding",{"_index":388,"title":{},"body":{"components/DashboardComponent.html":{}}}],["parameters",{"_index":218,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["particular",{"_index":824,"title":{},"body":{"index.html":{},"license.html":{}}}],["period",{"_index":896,"title":{},"body":{"miscellaneous/variables.html":{}}}],["permission",{"_index":780,"title":{},"body":{"index.html":{},"license.html":{}}}],["permit",{"_index":804,"title":{},"body":{"index.html":{},"license.html":{}}}],["person",{"_index":784,"title":{},"body":{"index.html":{},"license.html":{}}}],["persons",{"_index":805,"title":{},"body":{"index.html":{},"license.html":{}}}],["pipe",{"_index":337,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["platform/browser",{"_index":26,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["pnp_id",{"_index":887,"title":{},"body":{"miscellaneous/variables.html":{}}}],["portions",{"_index":814,"title":{},"body":{"index.html":{},"license.html":{}}}],["position",{"_index":175,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["post",{"_index":760,"title":{},"body":{"index.html":{}}}],["pr",{"_index":766,"title":{},"body":{"index.html":{}}}],["primary",{"_index":233,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["private",{"_index":306,"title":{},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["process",{"_index":731,"title":{},"body":{"index.html":{}}}],["production",{"_index":862,"title":{},"body":{"miscellaneous/variables.html":{}}}],["progress",{"_index":185,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["project",{"_index":754,"title":{},"body":{"index.html":{}}}],["projects/.../bluetooth.module.ts",{"_index":676,"title":{},"body":{"miscellaneous/functions.html":{}}}],["projects/.../bluetooth.service.ts",{"_index":852,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../ti",{"_index":861,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/manekinekko/angular",{"_index":6,"title":{},"body":{"interfaces/AWBOptions.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["promise",{"_index":148,"title":{},"body":{"classes/AppPage.html":{},"injectables/BrowserWebBluetooth.html":{}}}],["promise.resolve(this",{"_index":445,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["promise.resolve(this.characteristics[characteristic",{"_index":455,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["promise.resolve(this.services[service].service",{"_index":448,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["promise.resolve(this.value",{"_index":465,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["properties",{"_index":10,"title":{"properties.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"properties.html":{}}}],["protractor",{"_index":150,"title":{},"body":{"classes/AppPage.html":{}}}],["provide",{"_index":45,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["provided",{"_index":815,"title":{},"body":{"index.html":{},"license.html":{}}}],["providedin",{"_index":325,"title":{},"body":{"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"index.html":{}}}],["providers",{"_index":44,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["public",{"_index":196,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["publish",{"_index":798,"title":{},"body":{"index.html":{},"license.html":{}}}],["purpose",{"_index":825,"title":{},"body":{"index.html":{},"license.html":{}}}],["read",{"_index":727,"title":{},"body":{"index.html":{}}}],["readonly",{"_index":458,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["readvalue",{"_index":464,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["readvalueoptions",{"_index":851,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["release",{"_index":659,"title":{},"body":{"dependencies.html":{}}}],["request_new_parameters",{"_index":949,"title":{},"body":{"miscellaneous/variables.html":{}}}],["requestdevice",{"_index":340,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["requestdevice(options",{"_index":342,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["requestdeviceoptions",{"_index":343,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["requested",{"_index":726,"title":{},"body":{"index.html":{}}}],["requestvalue",{"_index":209,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["reset",{"_index":93,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["restriction",{"_index":792,"title":{},"body":{"index.html":{},"license.html":{}}}],["results",{"_index":50,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["return",{"_index":32,"title":{},"body":{"interfaces/AWBOptions.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["returns",{"_index":147,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["rgba(119,119,119,0.18",{"_index":539,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["rgba(255,161,161,0.30",{"_index":549,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["right",{"_index":404,"title":{},"body":{"components/DashboardComponent.html":{},"index.html":{}}}],["rights",{"_index":795,"title":{},"body":{"index.html":{},"license.html":{}}}],["root",{"_index":61,"title":{},"body":{"components/AppComponent.html":{},"classes/AppPage.html":{},"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"index.html":{}}}],["root'},{'name",{"_index":70,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["row",{"_index":168,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["run",{"_index":756,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":248,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":322,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["s",{"_index":682,"title":{},"body":{"index.html":{}}}],["section",{"_index":387,"title":{},"body":{"components/DashboardComponent.html":{}}}],["see",{"_index":350,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["selector",{"_index":59,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["sell",{"_index":802,"title":{},"body":{"index.html":{},"license.html":{}}}],["sensortag2.ts",{"_index":633,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["serial_number",{"_index":875,"title":{},"body":{"miscellaneous/variables.html":{}}}],["series",{"_index":496,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["serverwebbluetooth",{"_index":564,"title":{"injectables/ServerWebBluetooth.html":{}},"body":{"injectables/ServerWebBluetooth.html":{},"coverage.html":{}}}],["serves",{"_index":755,"title":{},"body":{"index.html":{}}}],["service",{"_index":200,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["service.config",{"_index":262,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["service/component",{"_index":692,"title":{},"body":{"index.html":{}}}],["serviceoptions",{"_index":314,"title":{},"body":{"injectables/BleService.html":{},"miscellaneous/typealiases.html":{}}}],["services",{"_index":442,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["shall",{"_index":811,"title":{},"body":{"index.html":{},"license.html":{}}}],["singleton",{"_index":258,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["size",{"_index":173,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["smart",{"_index":349,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["smoothie",{"_index":520,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"dependencies.html":{}}}],["smoothiechart",{"_index":506,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["snackbar",{"_index":201,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["software",{"_index":787,"title":{},"body":{"index.html":{},"license.html":{}}}],["software_rev",{"_index":881,"title":{},"body":{"miscellaneous/variables.html":{}}}],["source",{"_index":4,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["span",{"_index":171,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["span')).gettext",{"_index":154,"title":{},"body":{"classes/AppPage.html":{}}}],["specific",{"_index":718,"title":{},"body":{"index.html":{}}}],["spinner",{"_index":120,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{}}}],["src/.../battery",{"_index":855,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../ble.service.ts",{"_index":853,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["src/.../environment.prod.ts",{"_index":859,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../environment.ts",{"_index":860,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../humidity.component.ts",{"_index":856,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../stepcounter.component.ts",{"_index":857,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../temperature.component.ts",{"_index":858,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/app/app.component.ts",{"_index":57,"title":{},"body":{"components/AppComponent.html":{},"coverage.html":{}}}],["src/app/app.module.ts",{"_index":95,"title":{},"body":{"modules/AppModule.html":{}}}],["src/app/ble.service.ts",{"_index":305,"title":{},"body":{"injectables/BleService.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["src/app/ble.service.ts:17",{"_index":312,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:19",{"_index":320,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:21",{"_index":315,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:25",{"_index":317,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:29",{"_index":318,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:35",{"_index":319,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:46",{"_index":316,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/dashboard/dashboard.component.ts",{"_index":371,"title":{},"body":{"components/DashboardComponent.html":{},"coverage.html":{}}}],["src/app/dashboard/dashboard.component.ts:8",{"_index":377,"title":{},"body":{"components/DashboardComponent.html":{}}}],["src/app/thingy52/battery",{"_index":156,"title":{},"body":{"components/BatteryLevelComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/humidity.component.ts",{"_index":491,"title":{},"body":{"components/HumidityComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/humidity.component.ts:104",{"_index":500,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:108",{"_index":502,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:38",{"_index":513,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:39",{"_index":507,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:40",{"_index":517,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:41",{"_index":516,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:44",{"_index":511,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:46",{"_index":518,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:48",{"_index":498,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:51",{"_index":514,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:52",{"_index":515,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:61",{"_index":503,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:71",{"_index":501,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:81",{"_index":504,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:90",{"_index":505,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:97",{"_index":499,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts",{"_index":570,"title":{},"body":{"components/StepCounterComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/stepcounter.component.ts:101",{"_index":581,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:49",{"_index":589,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:50",{"_index":587,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:51",{"_index":588,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:53",{"_index":590,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:55",{"_index":578,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:58",{"_index":585,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:59",{"_index":586,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:74",{"_index":582,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:82",{"_index":583,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:87",{"_index":584,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:92",{"_index":579,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:97",{"_index":580,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/temperature.component.ts",{"_index":599,"title":{},"body":{"components/TemperatureComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/temperature.component.ts:102",{"_index":607,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:108",{"_index":601,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:115",{"_index":602,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:119",{"_index":604,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:38",{"_index":610,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:39",{"_index":608,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:40",{"_index":614,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:41",{"_index":613,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:44",{"_index":609,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:46",{"_index":615,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:48",{"_index":600,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:51",{"_index":611,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:52",{"_index":612,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:66",{"_index":605,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:76",{"_index":603,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:97",{"_index":606,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/environments/environment.prod.ts",{"_index":644,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/environments/environment.ts",{"_index":646,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["startblog",{"_index":759,"title":{},"body":{"index.html":{}}}],["started",{"_index":678,"title":{"index.html":{},"license.html":{}},"body":{"index.html":{}}}],["starter",{"_index":753,"title":{},"body":{"index.html":{}}}],["state",{"_index":936,"title":{},"body":{"miscellaneous/variables.html":{}}}],["statements",{"_index":625,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":42,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/HumidityComponent.html":{},"injectables/ServerWebBluetooth.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["step",{"_index":535,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["stepcounter",{"_index":571,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["stepcounter'},{'name",{"_index":79,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["stepcountercomponent",{"_index":78,"title":{"components/StepCounterComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["stepper",{"_index":386,"title":{},"body":{"components/DashboardComponent.html":{}}}],["sticky",{"_index":396,"title":{},"body":{"components/DashboardComponent.html":{}}}],["stop",{"_index":706,"title":{},"body":{"index.html":{}}}],["stream",{"_index":310,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["streamsubscription",{"_index":202,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["string",{"_index":223,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["strokestyle",{"_index":538,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["styles",{"_index":155,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["styleurls",{"_index":373,"title":{},"body":{"components/DashboardComponent.html":{}}}],["subject",{"_index":807,"title":{},"body":{"index.html":{},"license.html":{}}}],["sublicense",{"_index":800,"title":{},"body":{"index.html":{},"license.html":{}}}],["subscribe",{"_index":287,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["subscribe((value",{"_index":272,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["subscribe(device",{"_index":276,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["subscribed",{"_index":707,"title":{},"body":{"index.html":{}}}],["subscription",{"_index":236,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["substantial",{"_index":813,"title":{},"body":{"index.html":{},"license.html":{}}}],["sup",{"_index":182,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["support",{"_index":348,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{},"modules.html":{}}}],["sure",{"_index":257,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["svg",{"_index":841,"title":{},"body":{"modules.html":{}}}],["system_id",{"_index":871,"title":{},"body":{"miscellaneous/variables.html":{}}}],["table",{"_index":648,"title":{},"body":{"coverage.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":647,"title":{},"body":{"coverage.html":{}}}],["target",{"_index":431,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["temperature",{"_index":81,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["temperaturecomponent",{"_index":80,"title":{"components/TemperatureComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["template",{"_index":62,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["templateurl",{"_index":375,"title":{},"body":{"components/DashboardComponent.html":{}}}],["text",{"_index":169,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["thingy52/battery",{"_index":129,"title":{},"body":{"modules/AppModule.html":{}}}],["thingy52/humidity.component",{"_index":132,"title":{},"body":{"modules/AppModule.html":{}}}],["thingy52/stepcounter.component",{"_index":133,"title":{},"body":{"modules/AppModule.html":{}}}],["thingy52/temperature.component",{"_index":134,"title":{},"body":{"modules/AppModule.html":{}}}],["this._config",{"_index":330,"title":{},"body":{"injectables/BleService.html":{}}}],["this._config.characteristic",{"_index":336,"title":{},"body":{"injectables/BleService.html":{}}}],["this._config.service",{"_index":335,"title":{},"body":{"injectables/BleService.html":{}}}],["this.ble",{"_index":334,"title":{},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"index.html":{}}}],["this.ble.disconnectdevice",{"_index":338,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["this.ble.getcharacteristic$(primaryservice",{"_index":741,"title":{},"body":{"index.html":{}}}],["this.ble.getdevice",{"_index":331,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["this.ble.getprimaryservice$(gatt",{"_index":737,"title":{},"body":{"index.html":{}}}],["this.ble.readvalue$(characteristic",{"_index":747,"title":{},"body":{"index.html":{}}}],["this.ble.requestdevice(options",{"_index":354,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["this.ble.streamvalues$().pipe",{"_index":332,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["this.ble.streamvalues$().pipe(map((value",{"_index":715,"title":{},"body":{"index.html":{}}}],["this.characteristics.service",{"_index":452,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.chart",{"_index":532,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.addtimeseries(this.series",{"_index":546,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.start",{"_index":555,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.stop",{"_index":551,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.streamto(canvas",{"_index":550,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chartref.nativeelement",{"_index":530,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.color",{"_index":277,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.connected",{"_index":444,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.console.log('reading",{"_index":293,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.device.disconnect",{"_index":449,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.devicesubscription",{"_index":275,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.devicesubscription.unsubscribe",{"_index":296,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.devicesubscription?.unsubscribe",{"_index":301,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.getdevicestatus",{"_index":269,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.haserror(err",{"_index":292,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.haserror(error",{"_index":274,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.haserror.bind(this",{"_index":284,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.id",{"_index":436,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.initchart",{"_index":527,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.initialvalue",{"_index":463,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners",{"_index":439,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners.characteristicvaluechanged.foreach(listener",{"_index":467,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners.gattserverdisconnected.foreach(listener",{"_index":433,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners[type",{"_index":429,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.mode",{"_index":279,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.name",{"_index":438,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.properties",{"_index":462,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.series",{"_index":528,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.series.append(date.now",{"_index":554,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.series.clear",{"_index":556,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.disconnectdevice",{"_index":295,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.getdevice",{"_index":261,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.stream",{"_index":271,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.value",{"_index":286,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.snackbar.open(error",{"_index":298,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.streamsubscription",{"_index":270,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.streamsubscription.unsubscribe",{"_index":557,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.streamsubscription?.unsubscribe",{"_index":302,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.updatevalue(val",{"_index":290,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.updatevalue(value",{"_index":273,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.value",{"_index":281,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/StepCounterComponent.html":{}}}],["this.valuessubscription",{"_index":285,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.valuessubscription.unsubscribe",{"_index":297,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.valuessubscription?.unsubscribe",{"_index":300,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["throw",{"_index":346,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["ti_sensorag_services",{"_index":634,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["time",{"_index":593,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["timeseries",{"_index":512,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["titag",{"_index":635,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["titag[key].service",{"_index":864,"title":{},"body":{"miscellaneous/variables.html":{}}}],["toolbar.mat",{"_index":395,"title":{},"body":{"components/DashboardComponent.html":{}}}],["tooltip",{"_index":545,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["top",{"_index":177,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["tort",{"_index":836,"title":{},"body":{"index.html":{},"license.html":{}}}],["tree",{"_index":56,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["trigger",{"_index":729,"title":{},"body":{"index.html":{}}}],["true",{"_index":138,"title":{},"body":{"modules/AppModule.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["ts",{"_index":667,"title":{},"body":{"dependencies.html":{}}}],["tslib",{"_index":670,"title":{},"body":{"dependencies.html":{}}}],["tslint:disable",{"_index":326,"title":{},"body":{"injectables/BleService.html":{},"components/HumidityComponent.html":{}}}],["type",{"_index":14,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["typealiases",{"_index":849,"title":{"miscellaneous/typealiases.html":{}},"body":{}}],["types/web",{"_index":663,"title":{},"body":{"dependencies.html":{},"index.html":{}}}],["undefined",{"_index":437,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["unknown",{"_index":432,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["updatevalue",{"_index":210,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["updatevalue(value",{"_index":229,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["use",{"_index":691,"title":{},"body":{"index.html":{},"license.html":{}}}],["usefactory",{"_index":46,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/variables.html":{}}}],["usevalue",{"_index":47,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["using",{"_index":698,"title":{},"body":{"index.html":{}}}],["val",{"_index":289,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["value",{"_index":192,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["value.count",{"_index":598,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["value.getint8(0",{"_index":265,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["value.getuint32(0",{"_index":592,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["value.getuint32(4",{"_index":594,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["value.getuint8(0",{"_index":716,"title":{},"body":{"index.html":{}}}],["value.getuint8(1",{"_index":619,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["values",{"_index":702,"title":{},"body":{"index.html":{}}}],["valuessubscription",{"_index":203,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["var",{"_index":67,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["variable",{"_index":328,"title":{},"body":{"injectables/BleService.html":{},"coverage.html":{}}}],["variables",{"_index":854,"title":{"miscellaneous/variables.html":{}},"body":{"miscellaneous/variables.html":{}}}],["version",{"_index":847,"title":{},"body":{"properties.html":{}}}],["viewchild",{"_index":519,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["viewchild('chart",{"_index":510,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["void",{"_index":220,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["want",{"_index":724,"title":{},"body":{"index.html":{}}}],["warn",{"_index":278,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["warn(...args",{"_index":362,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["warn(args",{"_index":367,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["warranties",{"_index":821,"title":{},"body":{"index.html":{},"license.html":{}}}],["warranty",{"_index":816,"title":{},"body":{"index.html":{},"license.html":{}}}],["wassim",{"_index":778,"title":{},"body":{"index.html":{},"license.html":{}}}],["way",{"_index":694,"title":{},"body":{"index.html":{}}}],["web",{"_index":7,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["webbluetoothmodule",{"_index":41,"title":{"modules/WebBluetoothModule.html":{}},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{},"modules.html":{},"overview.html":{}}}],["webbluetoothmodule.forroot",{"_index":137,"title":{},"body":{"modules/AppModule.html":{},"index.html":{}}}],["welcome",{"_index":768,"title":{},"body":{"index.html":{}}}],["whether",{"_index":833,"title":{},"body":{"index.html":{},"license.html":{}}}],["width",{"_index":179,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["window.smoothiechart",{"_index":533,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["window.timeseries",{"_index":529,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["without",{"_index":791,"title":{},"body":{"index.html":{},"license.html":{}}}],["yes",{"_index":470,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["z",{"_index":397,"title":{},"body":{"components/DashboardComponent.html":{}}}],["zone.js",{"_index":672,"title":{},"body":{"dependencies.html":{}}}],["zoom",{"_index":92,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]}, - "store": {"interfaces/AWBOptions.html":{"url":"interfaces/AWBOptions.html","title":"interface - AWBOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n AWBOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n enableTracing\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n enableTracing\n \n \n \n \n \n \n \n \n enableTracing: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { NgModule, ModuleWithProviders, InjectionToken, Optional } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { BluetoothCore } from './bluetooth.service';\nimport { BrowserWebBluetooth } from './platform/browser';\n\nimport { ConsoleLoggerService, NoLoggerService } from './logger.service';\n\nexport interface AWBOptions {\n enableTracing?: boolean;\n}\n\nexport function browserWebBluetooth() {\n return new BrowserWebBluetooth();\n}\n\nexport function consoleLoggerServiceConfig(options: AWBOptions) {\n if (options && options.enableTracing) {\n return new ConsoleLoggerService();\n } else {\n return new NoLoggerService();\n }\n}\nexport function makeMeTokenInjector() {\n return new InjectionToken('AWBOptions');\n}\n\n@NgModule({\n imports: [CommonModule]\n})\nexport class WebBluetoothModule {\n static forRoot(options: AWBOptions = {}): ModuleWithProviders {\n return {\n ngModule: WebBluetoothModule,\n providers: [\n BluetoothCore,\n {\n provide: BrowserWebBluetooth,\n useFactory: browserWebBluetooth\n },\n {\n provide: makeMeTokenInjector,\n useValue: options\n },\n {\n provide: ConsoleLoggerService,\n useFactory: consoleLoggerServiceConfig,\n deps: [makeMeTokenInjector]\n }\n ]\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/AppComponent.html":{"url":"components/AppComponent.html","title":"component - AppComponent","body":"\n \n\n\n\n\n\n Components\n \n AppComponent\n\n\n\n \n Info\n \n \n Source\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/app.component.ts\n\n\n\n\n\n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n selector\n ble-root\n \n\n\n\n \n template\n \n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n import { Component } from '@angular/core';\n\n@Component({\n selector: 'ble-root',\n template: `\n \n `\n})\nexport class AppComponent {}\n\n \n\n\n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'AppComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_bootstrap\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_AppModule_declarations\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nBatteryLevelComponent\n\nBatteryLevelComponent\n\nAppModule -->\n\nBatteryLevelComponent->AppModule\n\n\n\n\n\nDashboardComponent\n\nDashboardComponent\n\nAppModule -->\n\nDashboardComponent->AppModule\n\n\n\n\n\nHumidityComponent\n\nHumidityComponent\n\nAppModule -->\n\nHumidityComponent->AppModule\n\n\n\n\n\nStepCounterComponent\n\nStepCounterComponent\n\nAppModule -->\n\nStepCounterComponent->AppModule\n\n\n\n\n\nTemperatureComponent\n\nTemperatureComponent\n\nAppModule -->\n\nTemperatureComponent->AppModule\n\n\n\n\n\nAppComponent \n\nAppComponent \n\nAppComponent -->\n\nAppModule->AppComponent \n\n\n\n\n\nWebBluetoothModule\n\nWebBluetoothModule\n\nAppModule -->\n\nWebBluetoothModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/app/app.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n AppComponent\n \n \n BatteryLevelComponent\n \n \n DashboardComponent\n \n \n HumidityComponent\n \n \n StepCounterComponent\n \n \n TemperatureComponent\n \n \n \n \n Imports\n \n \n WebBluetoothModule\n \n \n \n \n Bootstrap\n \n \n AppComponent\n \n \n \n \n \n\n\n \n\n\n \n import { LayoutModule } from '@angular/cdk/layout';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatToolbarModule } from '@angular/material/toolbar';\n\nimport { WebBluetoothModule } from '@manekinekko/angular-web-bluetooth';\nimport { AppComponent } from './app.component';\nimport { BatteryLevelComponent } from './thingy52/battery-level.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { HumidityComponent } from './thingy52/humidity.component';\nimport { StepCounterComponent } from './thingy52/stepcounter.component';\nimport { TemperatureComponent } from './thingy52/temperature.component';\nimport { BrowserModule } from '@angular/platform-browser';\n\n@NgModule({\n declarations: [\n AppComponent,\n BatteryLevelComponent,\n TemperatureComponent,\n HumidityComponent,\n StepCounterComponent,\n DashboardComponent\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n WebBluetoothModule.forRoot({\n enableTracing: true\n }),\n LayoutModule,\n MatToolbarModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n MatExpansionModule,\n MatSnackBarModule,\n MatProgressSpinnerModule,\n MatGridListModule,\n MatCardModule,\n MatMenuModule\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/AppPage.html":{"url":"classes/AppPage.html","title":"class - AppPage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n AppPage\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n e2e/src/app.po.ts\n \n\n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getTitleText\n \n \n navigateTo\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getTitleText\n \n \n \n \n \n \ngetTitleText()\n \n \n\n\n \n \n Defined in e2e/src/app.po.ts:8\n \n \n\n\n \n \n\n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n navigateTo\n \n \n \n \n \n \nnavigateTo()\n \n \n\n\n \n \n Defined in e2e/src/app.po.ts:4\n \n \n\n\n \n \n\n \n Returns : Promise<>\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { browser, by, element } from 'protractor';\n\nexport class AppPage {\n navigateTo(): Promise {\n return browser.get(browser.baseUrl) as Promise;\n }\n\n getTitleText(): Promise {\n return element(by.css('app-root .content span')).getText() as Promise;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/BatteryLevelComponent.html":{"url":"components/BatteryLevelComponent.html","title":"component - BatteryLevelComponent","body":"\n \n\n\n\n\n\n Components\n \n BatteryLevelComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/battery-level.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-battery-level\n \n\n\n \n styles\n \n :host {\n display: flex;\n justify-content: center;\n flex-direction: row;\n text-align: center;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 222px;\n width: 120px;\n display: block;\n text-align: center;\n }\n sup {\n font-size: 24px;\n }\n mat-progress-spinner {\n top: 90px;\n left: 5px;\n }\n mat-icon {\n position: absolute;\n bottom: 255px;\n }\n \n \n\n \n template\n {{ value || \"000\" }}%\n\n\nbattery_charging_full\n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n color\n \n \n Public\n console\n \n \n deviceSubscription\n \n \n mode\n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n value\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n getDeviceStatus\n \n \n hasError\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar, console: ConsoleLoggerService)\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:75\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n console\n \n \n ConsoleLoggerService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:129\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n getDeviceStatus\n \n \n \n \n \n \ngetDeviceStatus()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:99\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:135\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:139\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:89\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:115\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: number)\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:123\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n color\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'primary'\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:68\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n console\n \n \n \n \n \n \n Type : ConsoleLoggerService\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:80\n \n \n\n\n \n \n \n \n \n \n \n \n deviceSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:71\n \n \n\n\n \n \n \n \n \n \n \n \n mode\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'determinate'\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:67\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:78\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:79\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:70\n \n \n\n\n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \n Type : null\n\n \n \n \n \n Default value : null\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:66\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:69\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:73\n \n \n\n \n \n\n\n\n\n \n import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { Subscription } from 'rxjs';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n\n@Component({\n selector: 'ble-battery-level',\n template: `\n {{ value || \"000\" }}%\n \n \n battery_charging_full\n `,\n styles: [`\n :host {\n display: flex;\n justify-content: center;\n flex-direction: row;\n text-align: center;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 222px;\n width: 120px;\n display: block;\n text-align: center;\n }\n sup {\n font-size: 24px;\n }\n mat-progress-spinner {\n top: 90px;\n left: 5px;\n }\n mat-icon {\n position: absolute;\n bottom: 255px;\n }\n `],\n providers: PROVIDERS\n})\nexport class BatteryLevelComponent implements OnInit, OnDestroy {\n value = null;\n mode = 'determinate';\n color = 'primary';\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n deviceSubscription: Subscription;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar,\n public console: ConsoleLoggerService) {\n\n service.config({\n decoder: (value: DataView) => value.getInt8(0),\n service: 'battery_service',\n characteristic: 'battery_level'\n });\n }\n\n ngOnInit() {\n this.getDeviceStatus();\n\n this.streamSubscription = this.service.stream()\n .subscribe((value: number) => {\n this.updateValue(value);\n }, error => this.hasError(error));\n\n }\n\n getDeviceStatus() {\n this.deviceSubscription = this.service.getDevice()\n .subscribe(device => {\n if (device) {\n this.color = 'warn';\n this.mode = 'indeterminate';\n this.value = null;\n } else {\n // device not connected or disconnected\n this.value = null;\n this.mode = 'determinate';\n this.color = 'primary';\n }\n }, this.hasError.bind(this));\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe({\n next: (val: number) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n updateValue(value: number) {\n this.console.log('Reading battery level %d', value);\n this.value = value;\n this.mode = 'determinate';\n }\n\n disconnect() {\n this.service.disconnectDevice();\n this.deviceSubscription.unsubscribe();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription?.unsubscribe();\n this.deviceSubscription?.unsubscribe();\n this.streamSubscription?.unsubscribe();\n }\n}\n\n\n \n\n\n \n \n :host {\n display: flex;\n justify-content: center;\n flex-direction: row;\n text-align: center;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 222px;\n width: 120px;\n display: block;\n text-align: center;\n }\n sup {\n font-size: 24px;\n }\n mat-progress-spinner {\n top: 90px;\n left: 5px;\n }\n mat-icon {\n position: absolute;\n bottom: 255px;\n }\n \n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '{{ value || \"000\" }}%battery_charging_full'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'BatteryLevelComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/BleService.html":{"url":"injectables/BleService.html","title":"injectable - BleService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n BleService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/app/ble.service.ts\n \n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n _config\n \n \n Public\n ble\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n config\n \n \n disconnectDevice\n \n \n getDevice\n \n \n stream\n \n \n value\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ble: BluetoothCore)\n \n \n \n \n Defined in src/app/ble.service.ts:17\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n ble\n \n \n BluetoothCore\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n config\n \n \n \n \n \n \nconfig(options: ServiceOptions)\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:21\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n options\n \n ServiceOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n disconnectDevice\n \n \n \n \n \n \ndisconnectDevice()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:46\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n getDevice\n \n \n \n \n \n \ngetDevice()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:25\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n \n \n \n \n \n \n stream\n \n \n \n \n \n \nstream()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:29\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \nvalue()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:35\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n _config\n \n \n \n \n \n \n Type : ServiceOptions\n\n \n \n \n \n Defined in src/app/ble.service.ts:17\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n ble\n \n \n \n \n \n \n Type : BluetoothCore\n\n \n \n \n \n Defined in src/app/ble.service.ts:19\n \n \n\n\n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\nimport { BluetoothCore } from '@manekinekko/angular-web-bluetooth';\nimport { map } from 'rxjs/operators';\n\ntype ServiceOptions = {\n characteristic: string;\n service: string,\n decoder(value: DataView): number | {[key: string]: number}\n};\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BleService {\n\n // tslint:disable-next-line: variable-name\n private _config: ServiceOptions;\n\n constructor(public ble: BluetoothCore) {}\n\n config(options: ServiceOptions) {\n this._config = options;\n }\n\n getDevice() {\n return this.ble.getDevice$();\n }\n\n stream() {\n return this.ble.streamValues$().pipe(\n map(this._config.decoder)\n );\n }\n\n value() {\n return this.ble\n .value$({\n service: this._config.service,\n characteristic: this._config.characteristic\n })\n .pipe(\n map(this._config.decoder)\n );\n }\n\n disconnectDevice() {\n this.ble.disconnectDevice();\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/BrowserWebBluetooth.html":{"url":"injectables/BrowserWebBluetooth.html","title":"injectable - BrowserWebBluetooth","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n BrowserWebBluetooth\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts\n \n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n ble\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n requestDevice\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts:5\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n requestDevice\n \n \n \n \n \n \nrequestDevice(options: RequestDeviceOptions)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts:14\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n options\n \n RequestDeviceOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n ble\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts:5\n \n \n\n\n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class BrowserWebBluetooth {\n private ble;\n\n constructor() {\n this.ble = navigator.bluetooth;\n if (!this.ble) {\n throw new Error('Your browser does not support Smart Bluetooth. See http://caniuse.com/#search=Bluetooth for more details.');\n }\n }\n\n requestDevice(options: RequestDeviceOptions): Promise {\n return this.ble.requestDevice(options);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ConsoleLoggerService.html":{"url":"injectables/ConsoleLoggerService.html","title":"injectable - ConsoleLoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n ConsoleLoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n error\n \n \n log\n \n \n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n \n \nerror(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:16\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n log\n \n \n \n \n \n \nlog(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:13\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n warn\n \n \n \n \n \n \nwarn(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:19\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\nexport interface Logger {\n log(args: string[]): void;\n error(args: string[]): void;\n warn(args: string[]): void;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleLoggerService implements Logger {\n log(...args) {\n console.log.apply(console, args);\n }\n error(...args) {\n console.error.apply(console, args);\n }\n warn(...args) {\n console.warn.apply(console, args);\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NoLoggerService implements Logger {\n log(...args) {}\n error(...args) {}\n warn(...args) {}\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DashboardComponent.html":{"url":"components/DashboardComponent.html","title":"component - DashboardComponent","body":"\n \n\n\n\n\n\n Components\n \n DashboardComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/dashboard/dashboard.component.ts\n\n\n\n\n\n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n selector\n ble-dashboard\n \n\n \n styleUrls\n ./dashboard.component.css\n \n\n\n\n \n templateUrl\n ./dashboard.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/app/dashboard/dashboard.component.ts:8\n \n \n\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n import { Component } from '@angular/core';\n\n@Component({\n selector: 'ble-dashboard',\n templateUrl: './dashboard.component.html',\n styleUrls: ['./dashboard.component.css'],\n})\nexport class DashboardComponent {\n\n constructor() {}\n}\n\n \n\n \n \n \n Angular Web BLE Demo\n\n\n\n \n\n \n\n \n \n \n \n Battery Level\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n \n \n \n \n Humidity Level\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n \n \n \n \n Temperature\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n \n \n \n \n Stepper\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n\n \n\n \n \n ./dashboard.component.css\n \n section {\n padding: 40px;\n max-width: 700px;\n margin: 0 auto;\n}\n\n.mat-toolbar.mat-primary {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.grid-container {\n margin: 20px;\n}\n\n.dashboard-card {\n position: absolute;\n top: 15px;\n left: 15px;\n right: 15px;\n bottom: 15px;\n}\n\n.more-button {\n position: absolute;\n top: 5px;\n right: 10px;\n}\n\n.dashboard-card-content {\n text-align: center;\n}\n\n\nimg {\n width: 32px;\n margin: 0 10px;\n}\n\n.mat-icon {\n margin: 0 10px 0 0;\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' Angular Web BLE Demo Battery Level more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} Humidity Level more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} Temperature more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} Stepper more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DashboardComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothDevice.html":{"url":"classes/FakeBluetoothDevice.html","title":"class - FakeBluetoothDevice","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothDevice\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n gatt\n \n \n Public\n id\n \n \n Private\n listeners\n \n \n Public\n name\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n addEventListener\n \n \n clear\n \n \n disconnect\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(id: string, name: string)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:12\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n id\n \n \n string\n \n \n \n No\n \n \n \n \n name\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n gatt\n \n \n \n \n \n \n Type : BluetoothRemoteGATTServer\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:7\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:14\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n listeners\n \n \n \n \n \n \n Default value : {\n gattserverdisconnected: []\n }\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:8\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n name\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:14\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n addEventListener\n \n \n \n \n \n \naddEventListener(type: string, listener: EventListener)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:17\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n type\n \n string\n \n\n \n No\n \n\n\n \n \n listener\n \n EventListener\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n clear\n \n \n \n \n \n \nclear()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:29\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:24\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{"url":"classes/FakeBluetoothRemoteGATTCharacteristic.html","title":"class - FakeBluetoothRemoteGATTCharacteristic","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothRemoteGATTCharacteristic\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n initialValue\n \n \n Private\n listeners\n \n \n properties\n \n \n value\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n addEventListener\n \n \n changeValue\n \n \n clear\n \n \n readValue\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:78\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n properties\n \n \n BluetoothCharacteristicProperties\n \n \n \n No\n \n \n \n \n initialValue\n \n \n DataView\n \n \n \n Yes\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n initialValue\n \n \n \n \n \n \n Type : DataView\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:73\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n listeners\n \n \n \n \n \n \n Default value : {\n characteristicvaluechanged: []\n }\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:74\n \n \n\n\n \n \n \n \n \n \n \n \n properties\n \n \n \n \n \n \n Type : BluetoothCharacteristicProperties\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:72\n \n \n\n\n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \n Type : DataView\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:71\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n addEventListener\n \n \n \n \n \n \naddEventListener(type: string, listener: EventListener)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:90\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n type\n \n string\n \n\n \n No\n \n\n\n \n \n listener\n \n EventListener\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n changeValue\n \n \n \n \n \n \nchangeValue(value: DataView)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:97\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n DataView\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n clear\n \n \n \n \n \n \nclear()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:103\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n readValue\n \n \n \n \n \n \nreadValue()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:86\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothRemoteGATTServer.html":{"url":"classes/FakeBluetoothRemoteGATTServer.html","title":"class - FakeBluetoothRemoteGATTServer","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothRemoteGATTServer\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n connected\n \n \n Public\n device\n \n \n Public\n services\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n connect\n \n \n disconnect\n \n \n getPrimaryService\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(device, services: literal type)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:39\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n device\n \n \n \n \n \n No\n \n \n \n \n services\n \n \n literal type\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n connected\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:39\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n device\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:41\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n services\n \n \n \n \n \n \n Type : literal type\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:41\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n connect\n \n \n \n \n \n \nconnect()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:45\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:54\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n getPrimaryService\n \n \n \n \n \n \ngetPrimaryService(service: BluetoothServiceUUID)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:50\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n BluetoothServiceUUID\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : any\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothRemoteGATTService.html":{"url":"classes/FakeBluetoothRemoteGATTService.html","title":"class - FakeBluetoothRemoteGATTService","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothRemoteGATTService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n characteristics\n \n \n Public\n device\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n getCharacteristic\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(device, characteristics)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:60\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Optional\n \n \n \n \n device\n \n \n \n No\n \n \n \n \n characteristics\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n characteristics\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:61\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n device\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:61\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getCharacteristic\n \n \n \n \n \n \ngetCharacteristic(characteristic: BluetoothCharacteristicUUID)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:65\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n characteristic\n \n BluetoothCharacteristicUUID\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : any\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/HumidityComponent.html":{"url":"components/HumidityComponent.html","title":"component - HumidityComponent","body":"\n \n\n\n\n\n\n Components\n \n HumidityComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/humidity.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-humidity\n \n\n\n \n styles\n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n \n\n \n template\n \n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n chart\n \n \n chartRef\n \n \n series\n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n hasError\n \n \n initChart\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar)\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:48\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:97\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:104\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n initChart\n \n \n \n \n \n \ninitChart()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:71\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:108\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:61\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:81\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: number)\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:90\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n chart\n \n \n \n \n \n \n Type : SmoothieChart\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:39\n \n \n\n\n \n \n \n \n \n \n \n \n chartRef\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Decorators : \n \n \n @ViewChild('chart', {static: true})\n \n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:44\n \n \n\n\n \n \n \n \n \n \n \n \n series\n \n \n \n \n \n \n Type : TimeSeries\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:38\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:51\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:52\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:41\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:40\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:46\n \n \n\n \n \n\n\n\n\n \n import { Component, ElementRef, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { of, Subscription } from 'rxjs';\nimport { SmoothieChart, TimeSeries } from 'smoothie';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n@Component({\n selector: 'ble-humidity',\n template: `\n \n `,\n styles: [`\n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }`],\n providers: PROVIDERS\n})\nexport class HumidityComponent implements OnInit, OnDestroy {\n series: TimeSeries;\n chart: SmoothieChart;\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n\n @ViewChild('chart', { static: true })\n chartRef: ElementRef;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar) {\n\n service.config({\n decoder: (value: DataView) => value.getInt8(0),\n service: 'ef680200-9b35-4933-9b10-52ffa9740042',\n characteristic: 'ef680203-9b35-4933-9b10-52ffa9740042'\n });\n }\n\n ngOnInit() {\n this.initChart();\n\n this.streamSubscription = this.service.stream()\n .subscribe({\n next: (val: number) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n initChart() {\n this.series = new window.TimeSeries() as TimeSeries;\n const canvas = this.chartRef.nativeElement;\n // tslint:disable-next-line: max-line-length\n this.chart = new window.SmoothieChart({ interpolation: 'step', grid: { fillStyle: '#ffffff', strokeStyle: 'rgba(119,119,119,0.18)', borderVisible: false }, labels: { fillStyle: '#000000', fontSize: 17 }, tooltip: true });\n this.chart.addTimeSeries(this.series, { lineWidth: 1, strokeStyle: '#ff0000', fillStyle: 'rgba(255,161,161,0.30)' });\n this.chart.streamTo(canvas);\n this.chart.stop();\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe(\n () => null,\n () => of(this.hasError.bind(this)),\n );\n }\n\n\n updateValue(value: number) {\n console.log('Reading humidity %d', value);\n this.series.append(Date.now(), value);\n this.chart.start();\n }\n\n\n disconnect() {\n this.service.disconnectDevice();\n this.series.clear();\n this.chart.stop();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription.unsubscribe();\n this.streamSubscription.unsubscribe();\n }\n}\n\n \n\n\n \n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'HumidityComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/Logger.html":{"url":"interfaces/Logger.html","title":"interface - Logger","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n Logger\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n log\n \n \n \n \n warn\n \n \n \n \n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n \n \nerror(args: string[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:5\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n string[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n log\n \n \n \n \n \n \nlog(args: string[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:4\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n string[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n warn\n \n \n \n \n \n \nwarn(args: string[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:6\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n string[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\nexport interface Logger {\n log(args: string[]): void;\n error(args: string[]): void;\n warn(args: string[]): void;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleLoggerService implements Logger {\n log(...args) {\n console.log.apply(console, args);\n }\n error(...args) {\n console.error.apply(console, args);\n }\n warn(...args) {\n console.warn.apply(console, args);\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NoLoggerService implements Logger {\n log(...args) {}\n error(...args) {}\n warn(...args) {}\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/NoLoggerService.html":{"url":"injectables/NoLoggerService.html","title":"injectable - NoLoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n NoLoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n error\n \n \n log\n \n \n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n \n \nerror(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:29\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n log\n \n \n \n \n \n \nlog(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:28\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n warn\n \n \n \n \n \n \nwarn(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:30\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\nexport interface Logger {\n log(args: string[]): void;\n error(args: string[]): void;\n warn(args: string[]): void;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleLoggerService implements Logger {\n log(...args) {\n console.log.apply(console, args);\n }\n error(...args) {\n console.error.apply(console, args);\n }\n warn(...args) {\n console.warn.apply(console, args);\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NoLoggerService implements Logger {\n log(...args) {}\n error(...args) {}\n warn(...args) {}\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ServerWebBluetooth.html":{"url":"injectables/ServerWebBluetooth.html","title":"injectable - ServerWebBluetooth","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n ServerWebBluetooth\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/server.ts\n \n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n instance\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n instance\n \n \n \n \n \n \n \n instance()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/server.ts:5\n \n \n\n\n \n \n\n \n Returns : {}\n\n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class ServerWebBluetooth {\n static instance() {\n // mocked object for now\n return {};\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/StepCounterComponent.html":{"url":"components/StepCounterComponent.html","title":"component - StepCounterComponent","body":"\n \n\n\n\n\n\n Components\n \n StepCounterComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/stepcounter.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-stepcounter\n \n\n\n \n styles\n \n :host {\n display: block;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 112px;\n left: 214px;\n width: 120px;\n display: block;\n text-align: center;\n }\n mat-icon {\n font-size: 11em;\n width: 100%;\n height: 100%;\n }\n \n\n \n template\n {{ value || \"000\" }}\ndirections_walk\n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n value\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n hasError\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar)\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:55\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:92\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:97\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:101\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:74\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:82\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: literal type)\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:87\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n literal type\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:58\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:59\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:50\n \n \n\n\n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:51\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:49\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:53\n \n \n\n \n \n\n\n\n\n \n import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { Subscription } from 'rxjs';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n@Component({\n selector: 'ble-stepcounter',\n template: `\n {{ value || \"000\" }}\n directions_walk\n `,\n styles: [`\n :host {\n display: block;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 112px;\n left: 214px;\n width: 120px;\n display: block;\n text-align: center;\n }\n mat-icon {\n font-size: 11em;\n width: 100%;\n height: 100%;\n }`],\n providers: PROVIDERS\n})\nexport class StepCounterComponent implements OnInit, OnDestroy {\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n value = 0;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar) {\n\n service.config({\n decoder: (value: DataView) => {\n const count = value.getUint32(0, true);\n const time = value.getUint32(4, true);\n return {\n count, time\n };\n },\n service: 'ef680400-9b35-4933-9b10-52ffa9740042',\n characteristic: 'ef680405-9b35-4933-9b10-52ffa9740042'\n });\n }\n\n ngOnInit() {\n this.streamSubscription = this.service.stream()\n .subscribe({\n next: (val: { time: number, count: number }) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe(() => null, error => this.hasError.bind(this));\n }\n\n updateValue(value: { time: number, count: number }) {\n console.log('Reading step counter %d', value);\n this.value = value.count;\n }\n\n disconnect() {\n this.service.disconnectDevice();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription.unsubscribe();\n this.streamSubscription.unsubscribe();\n }\n}\n\n\n\n \n\n\n \n \n :host {\n display: block;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 112px;\n left: 214px;\n width: 120px;\n display: block;\n text-align: center;\n }\n mat-icon {\n font-size: 11em;\n width: 100%;\n height: 100%;\n }\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '{{ value || \"000\" }}directions_walk'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'StepCounterComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/TemperatureComponent.html":{"url":"components/TemperatureComponent.html","title":"component - TemperatureComponent","body":"\n \n\n\n\n\n\n Components\n \n TemperatureComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/temperature.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-temperature\n \n\n\n \n styles\n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n \n\n \n template\n \n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n chart\n \n \n chartRef\n \n \n series\n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n hasError\n \n \n initChart\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar)\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:48\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:108\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:115\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n initChart\n \n \n \n \n \n \ninitChart()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:76\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:119\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:66\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:97\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: number)\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:102\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n chart\n \n \n \n \n \n \n Type : SmoothieChart\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:39\n \n \n\n\n \n \n \n \n \n \n \n \n chartRef\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Decorators : \n \n \n @ViewChild('chart', {static: true})\n \n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:44\n \n \n\n\n \n \n \n \n \n \n \n \n series\n \n \n \n \n \n \n Type : TimeSeries\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:38\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:51\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:52\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:41\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:40\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:46\n \n \n\n \n \n\n\n\n\n \n import { Component, ElementRef, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { Subscription } from 'rxjs';\nimport { SmoothieChart, TimeSeries } from 'smoothie';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n@Component({\n selector: 'ble-temperature',\n template: `\n \n `,\n styles: [`\n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }`],\n providers: PROVIDERS\n})\nexport class TemperatureComponent implements OnInit, OnDestroy {\n series: TimeSeries;\n chart: SmoothieChart;\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n\n @ViewChild('chart', { static: true })\n chartRef: ElementRef;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar) {\n\n service.config({\n characteristic: 'ef680201-9b35-4933-9b10-52ffa9740042',\n service: 'ef680200-9b35-4933-9b10-52ffa9740042',\n decoder: (value: DataView) => {\n const integer = value.getInt8(0);\n const decimal = value.getUint8(1);\n return integer + decimal / 100;\n }\n });\n\n }\n\n ngOnInit() {\n this.initChart();\n\n this.streamSubscription = this.service.stream()\n .subscribe({\n next: (val: number) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n initChart() {\n this.series = new window.TimeSeries() as TimeSeries;\n const canvas = this.chartRef.nativeElement;\n this.chart = new window.SmoothieChart({\n interpolation: 'step',\n grid: {\n fillStyle: '#ffffff',\n strokeStyle: 'rgba(119,119,119,0.18)',\n borderVisible: false\n },\n labels: {\n fillStyle: '#000000',\n fontSize: 17\n },\n tooltip: true\n });\n this.chart.addTimeSeries(this.series, { lineWidth: 1, strokeStyle: '#ff0000', fillStyle: 'rgba(255,161,161,0.30)' });\n this.chart.streamTo(canvas);\n this.chart.stop();\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe(() => null, error => this.hasError.bind(this));\n }\n\n updateValue(value: number) {\n console.log('Reading temperature %d', value);\n this.series.append(Date.now(), value);\n this.chart.start();\n }\n\n disconnect() {\n this.service.disconnectDevice();\n this.series.clear();\n this.chart.stop();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription.unsubscribe();\n this.streamSubscription.unsubscribe();\n }\n}\n\n\n\n \n\n\n \n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'TemperatureComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/WebBluetoothModule.html":{"url":"modules/WebBluetoothModule.html","title":"module - WebBluetoothModule","body":"\n \n\n\n\n\n Modules\n WebBluetoothModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n\n\n\n\n\n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n forRoot\n \n \n \n \n \n \n \n forRoot(options: AWBOptions)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts:32\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n \n \n \n \n options\n \n AWBOptions\n \n\n \n No\n \n\n \n {}\n \n\n \n \n \n \n \n \n \n Returns : ModuleWithProviders\n\n \n \n \n \n \n \n \n \n\n \n\n\n \n import { NgModule, ModuleWithProviders, InjectionToken, Optional } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { BluetoothCore } from './bluetooth.service';\nimport { BrowserWebBluetooth } from './platform/browser';\n\nimport { ConsoleLoggerService, NoLoggerService } from './logger.service';\n\nexport interface AWBOptions {\n enableTracing?: boolean;\n}\n\nexport function browserWebBluetooth() {\n return new BrowserWebBluetooth();\n}\n\nexport function consoleLoggerServiceConfig(options: AWBOptions) {\n if (options && options.enableTracing) {\n return new ConsoleLoggerService();\n } else {\n return new NoLoggerService();\n }\n}\nexport function makeMeTokenInjector() {\n return new InjectionToken('AWBOptions');\n}\n\n@NgModule({\n imports: [CommonModule]\n})\nexport class WebBluetoothModule {\n static forRoot(options: AWBOptions = {}): ModuleWithProviders {\n return {\n ngModule: WebBluetoothModule,\n providers: [\n BluetoothCore,\n {\n provide: BrowserWebBluetooth,\n useFactory: browserWebBluetooth\n },\n {\n provide: makeMeTokenInjector,\n useValue: options\n },\n {\n provide: ConsoleLoggerService,\n useFactory: consoleLoggerServiceConfig,\n deps: [makeMeTokenInjector]\n }\n ]\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n e2e/src/app.po.ts\n \n class\n AppPage\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n interface\n AWBOptions\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n function\n browserWebBluetooth\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n function\n consoleLoggerServiceConfig\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n function\n makeMeTokenInjector\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.service.ts\n \n injectable\n BluetoothCore\n \n 67 %\n (21/31)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/lang/uuids/ti-sensortag2.ts\n \n variable\n TI_SENSORAG_SERVICES\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/lang/uuids/ti-sensortag2.ts\n \n variable\n TiTag\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n injectable\n ConsoleLoggerService\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n injectable\n NoLoggerService\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n interface\n Logger\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts\n \n injectable\n BrowserWebBluetooth\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/server.ts\n \n injectable\n ServerWebBluetooth\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothDevice\n \n 0 %\n (0/9)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothRemoteGATTCharacteristic\n \n 0 %\n (0/10)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothRemoteGATTServer\n \n 0 %\n (0/8)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothRemoteGATTService\n \n 0 %\n (0/5)\n \n \n \n \n \n src/app/app.component.ts\n \n component\n AppComponent\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/ble.service.ts\n \n injectable\n BleService\n \n 0 %\n (0/9)\n \n \n \n \n \n src/app/dashboard/dashboard.component.ts\n \n component\n DashboardComponent\n \n 0 %\n (0/2)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n component\n BatteryLevelComponent\n \n 0 %\n (0/18)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n component\n HumidityComponent\n \n 0 %\n (0/16)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n component\n StepCounterComponent\n \n 0 %\n (0/13)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n component\n TemperatureComponent\n \n 0 %\n (0/16)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/environments/environment.prod.ts\n \n variable\n environment\n \n 0 %\n (0/1)\n \n \n \n \n \n src/environments/environment.ts\n \n variable\n environment\n \n 0 %\n (0/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @angular/animations : ^16.2.12\n \n @angular/cdk : ^16.2.14\n \n @angular/common : ^16.2.12\n \n @angular/compiler : ^16.2.12\n \n @angular/core : ^16.2.12\n \n @angular/forms : ^16.2.12\n \n @angular/material : ^16.2.14\n \n @angular/platform-browser : ^16.2.12\n \n @angular/platform-browser-dynamic : ^16.2.12\n \n @angular/router : ^16.2.12\n \n @release-it/conventional-changelog : ^5.1.1\n \n @types/web-bluetooth : 0.0.6\n \n rxjs : ~7.8.0\n \n smoothie : ^1.35.0\n \n ts-jest : ^29.0.5\n \n tslib : ^2.3.0\n \n zone.js : ~0.13.3\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n browserWebBluetooth   (projects/.../bluetooth.module.ts)\n \n \n consoleLoggerServiceConfig   (projects/.../bluetooth.module.ts)\n \n \n makeMeTokenInjector   (projects/.../bluetooth.module.ts)\n \n \n \n \n \n \n\n\n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n \n \n \n \n \n \n browserWebBluetooth\n \n \n \n \n \n \nbrowserWebBluetooth()\n \n \n\n\n\n\n \n \n \n \n \n \n \n \n consoleLoggerServiceConfig\n \n \n \n \n \n \nconsoleLoggerServiceConfig(options: AWBOptions)\n \n \n\n\n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n options\n \n AWBOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n makeMeTokenInjector\n \n \n \n \n \n \nmakeMeTokenInjector()\n \n \n\n\n\n\n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\n\n \n\nThe missing Web Bluetooth module for Angular\n\n\nInstall\nnpm install -S @manekinekko/angular-web-bluetooth @types/web-bluetooth\nNote: Make also sure the @types/web-bluetooth is installed correctly in your node_modules.\n\nGetting started\n1) import the WebBluetoothModule module\nimport { NgModule } from '@angular/core';\nimport { WebBluetoothModule } from '@manekinekko/angular-web-bluetooth';\n\n@NgModule({\n imports: [\n //...,\n WebBluetoothModule.forRoot({\n enableTracing: true // or false, this will enable logs in the browser's console\n })\n ]\n //...\n})\nexport class AppModule {}2.a) use it in your service/component (the easiest way)\nHere is an annotated example using the BluetoothCore service:\nimport { Injectable } from '@angular/core';\nimport { BluetoothCore } from '@manekinekko/angular-web-bluetooth';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BatteryLevelService {\n\n constructor(public readonly ble: BluetoothCore) {}\n\n getDevice() {\n // call this method to get the connected device\n return this.ble.getDevice$();\n }\n\n stream() {\n // call this method to get a stream of values emitted by the device for a given characteristic\n return this.ble.streamValues$().pipe(\n map((value: DataView) => value.getInt8(0))\n );\n }\n\n disconnectDevice() {\n // call this method to disconnect from the device. This method will also stop clear all subscribed notifications\n this.ble.disconnectDevice();\n }\n\n value() {\n console.log('Getting Battery level...');\n\n return this.ble\n .value$({\n service: 'battery_service',\n characteristic: 'battery_level'\n });\n }\n\n}2.b) use it in your service/component (the advanced way)\nHere is an annotated example using the BluetoothCore service:\nimport { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { BluetoothCore } from '@manekinekko/angular-web-bluetooth';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BatteryLevelService {\n static GATT_CHARACTERISTIC_BATTERY_LEVEL = 'battery_level';\n static GATT_PRIMARY_SERVICE = 'battery_service';\n\n constructor(public ble: BluetoothCore) {}\n\n getDevice() {\n // call this method to get the connected device\n return this.ble.getDevice$();\n }\n\n stream() {\n // call this method to get a stream of values emitted by the device\n return this.ble.streamValues$().pipe(map((value: DataView) => value.getUint8(0)));\n }\n\n disconnectDevice() {\n this.ble.disconnectDevice();\n }\n\n /**\n * Get Battery Level GATT Characteristic value.\n * This logic is specific to this service, this is why we can't abstract it elsewhere.\n * The developer is free to provide any service, and characteristics they want.\n *\n * @return Emites the value of the requested service read from the device\n */\n value() {\n console.log('Getting Battery level...');\n\n return this.ble\n\n // 1) call the discover method will trigger the discovery process (by the browser)\n .discover$({\n acceptAllDevices: true,\n optionalServices: [BatteryLevelService.GATT_PRIMARY_SERVICE]\n })\n .pipe(\n\n // 2) get that service\n mergeMap((gatt: BluetoothRemoteGATTServer) => {\n return this.ble.getPrimaryService$(gatt, BatteryLevelService.GATT_PRIMARY_SERVICE);\n }),\n\n // 3) get a specific characteristic on that service\n mergeMap((primaryService: BluetoothRemoteGATTService) => {\n return this.ble.getCharacteristic$(primaryService, BatteryLevelService.GATT_CHARACTERISTIC_BATTERY_LEVEL);\n }),\n\n // 4) ask for the value of that characteristic (will return a DataView)\n mergeMap((characteristic: BluetoothRemoteGATTCharacteristic) => {\n return this.ble.readValue$(characteristic);\n }),\n\n // 5) on that DataView, get the right value\n map((value: DataView) => value.getUint8(0))\n )\n }\n}API documentation\nThe API documentation can be found here: https://manekinekko.github.io/angular-web-bluetooth/\nNeed a starter?\n\n\nThis project serves also as a starter. Run the following command:\nnpm startBlog post\nCheckout my full blog post on dev.to about how to use this package in your app.\nHave a PR?\nAll contributions are welcome. Here are few open issues that I need help with ;)\nLicense\nThe MIT License (MIT) Copyright (c) 2017 - Wassim CHEGHAM\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\nThe MIT License (MIT) Copyright (c) 2017 - Wassim CHEGHAM\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n WebBluetoothModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_declarations\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_AppModule_bootstrap\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nBatteryLevelComponent\n\nBatteryLevelComponent\n\nAppModule -->\n\nBatteryLevelComponent->AppModule\n\n\n\n\n\nDashboardComponent\n\nDashboardComponent\n\nAppModule -->\n\nDashboardComponent->AppModule\n\n\n\n\n\nHumidityComponent\n\nHumidityComponent\n\nAppModule -->\n\nHumidityComponent->AppModule\n\n\n\n\n\nStepCounterComponent\n\nStepCounterComponent\n\nAppModule -->\n\nStepCounterComponent->AppModule\n\n\n\n\n\nTemperatureComponent\n\nTemperatureComponent\n\nAppModule -->\n\nTemperatureComponent->AppModule\n\n\n\n\n\nAppComponent \n\nAppComponent \n\nAppComponent -->\n\nAppModule->AppComponent \n\n\n\n\n\nWebBluetoothModule\n\nWebBluetoothModule\n\nAppModule -->\n\nWebBluetoothModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 2 Modules\n \n \n \n \n \n \n \n \n 6 Components\n \n \n \n \n \n \n \n 6 Injectables\n \n \n \n \n \n \n \n 5 Classes\n \n \n \n \n \n \n \n 2 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 15.0.0\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/typealiases.html":{"url":"miscellaneous/typealiases.html","title":"miscellaneous-typealiases - typealiases","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Type aliases\n\n\n\n Index\n \n \n \n \n \n \n ReadValueOptions   (projects/.../bluetooth.service.ts)\n \n \n ServiceOptions   (src/.../ble.service.ts)\n \n \n \n \n \n \n\n\n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.service.ts\n \n \n \n \n \n \n ReadValueOptions\n \n \n \n \n literal type\n\n \n \n \n \n src/app/ble.service.ts\n \n \n \n \n \n \n ServiceOptions\n \n \n \n \n literal type\n\n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n bleCore   (src/.../battery-level.component.ts)\n \n \n bleCore   (src/.../humidity.component.ts)\n \n \n bleCore   (src/.../stepcounter.component.ts)\n \n \n bleCore   (src/.../temperature.component.ts)\n \n \n bleService   (src/.../battery-level.component.ts)\n \n \n bleService   (src/.../humidity.component.ts)\n \n \n bleService   (src/.../stepcounter.component.ts)\n \n \n bleService   (src/.../temperature.component.ts)\n \n \n environment   (src/.../environment.prod.ts)\n \n \n environment   (src/.../environment.ts)\n \n \n PROVIDERS   (src/.../battery-level.component.ts)\n \n \n PROVIDERS   (src/.../humidity.component.ts)\n \n \n PROVIDERS   (src/.../stepcounter.component.ts)\n \n \n PROVIDERS   (src/.../temperature.component.ts)\n \n \n TI_SENSORAG_SERVICES   (projects/.../ti-sensortag2.ts)\n \n \n TiTag   (projects/.../ti-sensortag2.ts)\n \n \n \n \n \n \n\n\n src/app/thingy52/battery-level.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/app/thingy52/humidity.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/app/thingy52/stepcounter.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/app/thingy52/temperature.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/environments/environment.prod.ts\n \n \n \n \n \n \n \n environment\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n production: true\n}\n \n \n\n\n \n \n\n src/environments/environment.ts\n \n \n \n \n \n \n \n environment\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n production: false\n}\n \n \n\n\n \n \n\n projects/manekinekko/angular-web-bluetooth/src/lib/lang/uuids/ti-sensortag2.ts\n \n \n \n \n \n \n \n TI_SENSORAG_SERVICES\n \n \n \n \n \n \n Default value : Object.keys(TiTag).map(key => TiTag[key].SERVICE)\n \n \n\n\n \n \n \n \n \n \n \n \n TiTag\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n\n DEVICE_INFORMATION : {\n SERVICE : 'f000180a-0451-4000-b000-000000000000',\n SYSTEM_ID : 'f0002a23-0451-4000-b000-000000000000',\n MODEL_NUMBER : 'f0002a24-0451-4000-b000-000000000000',\n SERIAL_NUMBER : 'f0002a25-0451-4000-b000-000000000000',\n FIRMWARE_REV : 'f0002a26-0451-4000-b000-000000000000',\n HARDWARE_REV : 'f0002a27-0451-4000-b000-000000000000',\n SOFTWARE_REV : 'f0002a28-0451-4000-b000-000000000000',\n MANIFACTURER : 'f0002a29-0451-4000-b000-000000000000',\n IEEE11073 : 'f0002a2a-0451-4000-b000-000000000000',\n PNP_ID : 'f0002a50-0451-4000-b000-000000000000'\n },\n\n BATTERY : {\n SERVICE : 'f000180f-0451-4000-b000-000000000000',\n LEVEL : 'f0002a19-0451-4000-b000-000000000000'\n },\n\n TEMPERATURE : {\n SERVICE : 'f000aa00-0451-4000-b000-000000000000',\n DATA : 'f000aa01-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa02-0451-4000-b000-000000000000',\n PERIOD : 'f000aa03-0451-4000-b000-000000000000'\n },\n\n HUMIDITY : {\n SERVICE : 'f000aa20-0451-4000-b000-000000000000',\n DATA : 'f000aa21-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa22-0451-4000-b000-000000000000',\n PERIOD : 'f000aa23-0451-4000-b000-000000000000'\n },\n\n BAROMETER : {\n SERVICE : 'f000aa40-0451-4000-b000-000000000000',\n DATA : 'f000aa41-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa42-0451-4000-b000-000000000000',\n PERIOD : 'f000aa44-0451-4000-b000-000000000000'\n },\n\n // service not available in model CC2650\n // ACCELEROMETER : {\n // SERVICE : 'f000aa10-0451-4000-b000-000000000000',\n // DATA : 'f000aa11-0451-4000-b000-000000000000',\n // CONFIGURATION : 'f000aa12-0451-4000-b000-000000000000',\n // PERIOD : 'f000aa13-0451-4000-b000-000000000000'\n // },\n\n // service not available in model CC2650\n // MAGNETOMETER : {\n // SERVICE : 'f000aa30-0451-4000-b000-000000000000',\n // DATA : 'f000aa31-0451-4000-b000-000000000000',\n // CONFIGURATION : 'f000aa32-0451-4000-b000-000000000000',\n // PERIOD : 'f000aa33-0451-4000-b000-000000000000'\n // },\n\n // service not available in model CC2650\n // GYROSCOPE : {\n // SERVICE : 'f000aa50-0451-4000-b000-000000000000',\n // DATA : 'f000aa51-0451-4000-b000-000000000000',\n // CONFIGURATION : 'f000aa52-0451-4000-b000-000000000000',\n // PERIOD : 'f000aa53-0451-4000-b000-000000000000'\n // },\n\n MOVEMENT : {\n SERVICE : 'f000aa80-0451-4000-b000-000000000000',\n DATA : 'f000aa81-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa82-0451-4000-b000-000000000000',\n PERIOD : 'f000aa83-0451-4000-b000-000000000000'\n },\n\n LIGHT : {\n SERVICE : 'f000aa70-0451-4000-b000-000000000000',\n DATA : 'f000aa71-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa72-0451-4000-b000-000000000000',\n PERIOD : 'f000aa73-0451-4000-b000-000000000000'\n },\n\n KEYPRESS : {\n SERVICE : 'f000ffe0-0451-4000-b000-000000000000',\n STATE : 'f000ffe1-0451-4000-b000-000000000000'\n },\n\n __REGISTER__ : {\n SERVICE : 'f000ac00-0451-4000-b000-000000000000',\n DATA : 'f000ac01-0451-4000-b000-000000000000',\n ADDRESS : 'f000ac02-0451-4000-b000-000000000000',\n DEVICE_ID : 'f000ac03-0451-4000-b000-000000000000'\n },\n\n CONTROL : {\n SERVICE : 'f000ccc0-0451-4000-b000-000000000000',\n CURRENT_USED_PARAMETERS : 'f000ccc1-0451-4000-b000-000000000000',\n REQUEST_NEW_PARAMETERS : 'f000ccc2-0451-4000-b000-000000000000',\n DISCONNECT_REQUEST : 'f000ccc3-0451-4000-b000-000000000000'\n },\n\n OAD : {\n SERVICE : 'f000ffc0-0451-4000-b000-000000000000',\n IMAGE_NOTIFY : 'f000ffc1-0451-4000-b000-000000000000',\n IMAGE_BLOCK_REQUEST : 'f000ffc2-0451-4000-b000-000000000000',\n IMAGE_COUNT : 'f000ffc3-0451-4000-b000-000000000000',\n IMAGE_STATUS : 'f000ffc4-0451-4000-b000-000000000000'\n },\n\n IO : {\n SERVICE : 'f000aa64-0451-4000-b000-000000000000',\n DATA : 'f000aa65-0451-4000-b000-000000000000',\n CONFIG : 'f000aa66-0451-4000-b000-000000000000'\n }\n}\n \n \n\n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}} + "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/interfaces/AWBOptions.html",[0,1.352,1,1.806]],["body/interfaces/AWBOptions.html",[0,1.549,1,3.145,2,2.611,3,0.495,4,0.495,5,0.438,6,0.83,7,0.332,8,2.31,9,0.438,10,1.289,11,1.084,12,3.51,13,2.686,14,0.555,15,0.035,16,1.077,17,3.319,18,3.903,19,3.014,20,0.684,21,3.903,22,2.611,23,1.678,24,3.014,25,1.868,26,3.014,27,1.562,28,2.2,29,3.014,30,0.689,31,3.751,32,1.306,33,2.151,34,2.611,35,2.681,36,3.014,37,3.319,38,3.014,39,2.31,40,0.143,41,2.2,42,1.87,43,3.014,44,1.549,45,2.225,46,2.2,47,3.014,48,2.31,49,1.699,50,0.025,51,0.025]],["title/components/AppComponent.html",[52,0.868,53,1.131]],["body/components/AppComponent.html",[3,0.562,4,0.562,5,0.497,15,0.034,16,0.777,20,0.777,30,0.497,40,0.163,50,0.027,51,0.027,52,1.516,53,2.062,54,2.383,55,2.122,56,2.122,57,3.42,58,2.122,59,3.19,60,2.415,61,2.383,62,2.624,63,2.122,64,2.624,65,2.383,66,2.122,67,2.976,68,2.122,69,0.96,70,2.122,71,1.47,72,1.757,73,2.122,74,1.47,75,2.122,76,1.47,77,2.122,78,1.47,79,2.122,80,1.47,81,1.927,82,2.122,83,2.122]],["title/modules/AppModule.html",[84,2.279,85,1.806]],["body/modules/AppModule.html",[3,0.418,4,0.418,5,0.37,7,0.28,12,1.951,15,0.035,16,1.191,17,2.673,20,0.578,30,0.37,39,2.673,40,0.121,41,2.527,50,0.023,51,0.023,53,2.169,71,1.991,74,1.991,76,1.991,78,1.991,80,1.991,85,3.582,86,1.748,87,2.673,88,2.545,89,2.545,90,2.545,91,2.545,92,3.487,93,2.545,94,1.951,95,3.061,96,4.195,97,4.195,98,4.195,99,3.061,100,4.195,101,3.061,102,4.195,103,3.487,104,3.061,105,4.195,106,3.061,107,4.195,108,3.061,109,4.195,110,3.061,111,3.061,112,4.195,113,3.061,114,4.195,115,3.061,116,4.195,117,3.061,118,4.195,119,3.061,120,2.545,121,4.195,122,1.748,123,1.748,124,4.195,125,3.061,126,1.434,127,1.195,128,3.061,129,3.061,130,3.061,131,3.061,132,3.061,133,3.061,134,3.061,135,4.195,136,1.579,137,2.545,138,1.094]],["title/classes/AppPage.html",[40,0.125,139,2.279]],["body/classes/AppPage.html",[3,0.598,4,0.598,5,0.529,9,0.529,15,0.034,16,0.827,30,0.529,32,1.209,40,0.173,50,0.028,51,0.028,61,2.051,65,2.051,136,2.258,139,3.806,140,2.258,141,3.639,142,1.1,143,5.894,144,5.894,145,0.998,146,4.378,147,1.1,148,5.096,149,4.378,150,4.378,151,4.378,152,4.378,153,3.153,154,4.378]],["title/components/BatteryLevelComponent.html",[52,0.868,71,1.131]],["body/components/BatteryLevelComponent.html",[3,0.23,4,0.23,5,0.203,7,0.154,9,0.203,10,0.737,11,0.698,14,0.818,15,0.035,16,0.79,20,0.318,23,1.369,25,1.098,27,1.404,30,0.405,32,0.385,33,1.049,40,0.067,44,1.788,45,1.148,46,1.259,49,1.259,50,0.014,51,0.014,52,0.921,53,0.601,54,1.259,55,0.868,56,0.868,58,0.868,59,2.509,60,1.899,62,1.386,63,0.868,64,1.386,65,1.259,66,0.868,67,1.975,68,0.868,69,0.79,70,0.868,71,1.369,72,1.636,73,0.868,74,0.601,75,0.868,76,0.601,77,0.868,78,0.601,79,0.868,80,0.601,81,0.788,82,0.868,83,0.868,120,2.788,122,0.961,123,0.961,126,0.788,127,0.657,142,0.559,145,1.08,147,0.975,153,2.416,155,1.915,156,4.152,157,1.212,158,1.259,159,2.137,160,2.137,161,2.137,162,2.137,163,2.843,164,4.462,165,3.354,166,3.611,167,3.354,168,3.354,169,3.214,170,3.214,171,2.788,172,3.709,173,3.709,174,2.788,175,3.214,176,3.214,177,3.214,178,3.354,179,2.416,180,2.788,181,2.137,182,3.354,183,3.354,184,3.214,185,3.354,186,3.354,187,1.915,188,2.788,189,2.416,190,2.788,191,3.354,192,1.628,193,2.788,194,3.354,195,3.354,196,1.958,197,3.479,198,3.354,199,3.354,200,1.461,201,2.667,202,2.137,203,2.137,204,1.369,205,3.829,206,1.712,207,2.44,208,2.44,209,2.44,210,1.712,211,1.712,212,1.634,213,0.88,214,1.072,215,2.078,216,2.667,217,1.683,218,0.768,219,1.683,220,1.533,221,1.683,222,1.712,223,1.255,224,1.683,225,1.572,226,1.683,227,1.683,228,1.683,229,1.712,230,2.39,231,1.683,232,1.572,233,1.73,234,1.683,235,1.683,236,2.984,237,1.683,238,3.829,239,1.683,240,1.683,241,1.683,242,1.683,243,2.667,244,1.683,245,1.683,246,0.868,247,1.683,248,0.961,249,1.072,250,1.433,251,1.386,252,1.534,253,1.534,254,0.961,255,0.961,256,0.961,257,0.961,258,1.072,259,0.961,260,1.072,261,1.712,262,1.072,263,1.072,264,0.601,265,1.072,266,1.399,267,0.788,268,1.399,269,1.683,270,1.072,271,1.072,272,1.683,273,1.683,274,1.683,275,1.683,276,1.683,277,2.687,278,1.072,279,3.354,280,1.683,281,1.73,282,0.868,283,1.683,284,1.212,285,1.072,286,1.072,287,1.072,288,0.961,289,1.072,290,1.072,291,1.072,292,1.072,293,1.683,294,1.072,295,1.072,296,1.683,297,1.072,298,1.072,299,1.072,300,1.683,301,1.683,302,1.683]],["title/injectables/BleService.html",[215,1.352,303,0.868]],["body/injectables/BleService.html",[3,0.457,4,0.457,5,0.404,7,0.306,9,0.404,10,1.222,11,0.927,14,0.851,15,0.035,16,0.945,20,0.631,23,1.987,30,0.404,32,1.146,35,2.543,40,0.132,50,0.024,51,0.024,60,2.085,61,1.567,69,0.945,126,1.567,127,1.306,142,0.927,145,1.119,147,1.158,192,1.667,196,1.739,200,1.458,213,1.095,215,1.903,218,1.019,220,1.458,223,1.502,230,2.543,246,2.754,264,1.196,267,2.087,288,1.91,303,1.222,304,1.725,305,2.409,306,2.583,307,5.007,308,3.702,309,4.438,310,4.438,311,3.344,312,4.453,313,4.453,314,4.753,315,3.344,316,3.344,317,3.344,318,3.344,319,3.344,320,3.344,321,2.78,322,2.78,323,3.344,324,1.91,325,1.91,326,2.78,327,2.78,328,2.78,329,1.725,330,3.344,331,2.78,332,2.78,333,4.453,334,2.409,335,3.344,336,3.344,337,2.78,338,2.78]],["title/injectables/BrowserWebBluetooth.html",[25,1.036,303,0.868]],["body/injectables/BrowserWebBluetooth.html",[3,0.554,4,0.554,5,0.49,6,1.314,7,0.525,9,0.49,10,1.384,11,0.845,14,0.621,15,0.034,16,0.766,20,0.766,25,1.651,30,0.49,32,0.929,33,1.584,35,2.316,40,0.16,50,0.027,51,0.027,60,2.143,69,0.766,127,1.584,136,2.093,142,1.05,145,1.036,147,0.845,148,4.192,213,1.797,218,0.929,303,1.384,304,2.093,306,2.831,334,3.632,339,3.373,340,5.043,341,5.043,342,5.043,343,5.488,344,4.057,345,4.057,346,4.057,347,4.057,348,3.373,349,4.057,350,4.057,351,4.057,352,3.373,353,4.057,354,4.057]],["title/injectables/ConsoleLoggerService.html",[27,0.949,303,0.868]],["body/injectables/ConsoleLoggerService.html",[0,1.601,3,0.512,4,0.512,5,0.453,6,1.277,7,0.51,9,0.453,11,1.102,14,0.81,15,0.035,16,0.708,20,0.708,27,1.439,28,1.756,30,0.639,40,0.19,50,0.026,51,0.026,61,2.248,69,0.999,142,0.999,145,0.999,147,1.102,158,2.248,218,1.211,220,1.931,223,1.587,225,2.248,278,3.057,303,1.452,304,1.933,325,2.739,355,2.388,356,3.455,357,3.811,358,3.748,359,4.248,360,3.811,361,3.748,362,3.811,363,3.748,364,3.021,365,2.699,366,2.699,367,2.699,368,2.699,369,2.699,370,2.699]],["title/components/DashboardComponent.html",[52,0.868,74,1.131]],["body/components/DashboardComponent.html",[3,0.398,4,0.398,5,0.352,7,0.371,9,0.352,15,0.035,16,0.55,20,0.55,30,0.352,40,0.115,50,0.022,51,0.022,52,1.28,53,1.042,54,1.9,55,1.504,56,1.504,58,1.504,59,2.961,60,2.306,62,1.504,63,1.504,64,2.092,65,1.9,66,1.504,67,2.601,68,1.504,69,0.766,70,1.504,71,1.042,72,1.993,73,1.504,74,1.802,75,1.504,76,1.042,77,1.504,78,1.042,79,1.504,80,1.042,81,2.185,82,1.504,83,1.504,145,0.55,153,2.099,155,1.664,161,3.213,166,2.099,169,2.099,170,2.099,175,3.359,176,2.921,177,3.359,179,2.921,184,2.921,187,1.664,188,2.423,189,2.099,190,2.423,204,2.052,213,1.527,233,1.504,352,2.423,371,2.423,372,5.042,373,4.056,374,4.664,375,4.056,376,4.056,377,2.915,378,3.372,379,4.056,380,5.74,381,5.74,382,3.278,383,5.74,384,5.74,385,2.921,386,4.056,387,2.915,388,2.915,389,2.915,390,2.423,391,2.915,392,3.631,393,3.952,394,2.915,395,2.915,396,2.915,397,2.915,398,1.858,399,2.099,400,2.915,401,2.915,402,4.056,403,5.042,404,3.372,405,2.915,406,4.664,407,2.915,408,2.915]],["title/classes/FakeBluetoothDevice.html",[40,0.125,409,1.632]],["body/classes/FakeBluetoothDevice.html",[3,0.352,4,0.352,5,0.312,6,1.297,7,0.518,9,0.312,10,1.31,11,0.774,13,1.331,14,0.807,15,0.035,30,0.577,32,1.093,40,0.189,50,0.02,51,0.02,69,1.026,138,0.922,140,1.331,142,0.774,145,1.05,147,0.908,192,1.308,196,2.122,200,0.845,204,1.809,212,1.452,213,0.845,218,0.851,220,1.428,223,1.781,232,1.209,233,1.331,250,1.589,264,1.706,281,2.25,282,1.331,306,2.61,324,2.49,329,2.25,382,1.473,409,1.918,410,1.473,411,2.49,412,3.042,413,3.042,414,3.092,415,2.89,416,2.58,417,2.58,418,2.124,419,2.58,420,3.719,421,3.042,422,2.58,423,2.779,424,3.36,425,3.36,426,2.58,427,2.58,428,2.58,429,3.042,430,2.37,431,2.37,432,2.37,433,1.644,434,2.37,435,1.918,436,1.644,437,2.37,438,1.644,439,2.37,440,1.331,441,1.589,442,1.644,443,1.644,444,2.37,445,1.644,446,1.644,447,1.644,448,1.644,449,1.644,450,1.331,451,1.473,452,1.644,453,1.644,454,1.644,455,1.644,456,1.331,457,2.37,458,1.473,459,3.042,460,2.779,461,1.644,462,1.644,463,2.37,464,1.644,465,1.644,466,1.644,467,1.644]],["title/classes/FakeBluetoothRemoteGATTCharacteristic.html",[40,0.125,456,1.632]],["body/classes/FakeBluetoothRemoteGATTCharacteristic.html",[3,0.343,4,0.343,5,0.304,6,1.309,7,0.523,9,0.304,10,1.48,11,0.895,13,1.297,14,0.825,15,0.035,30,0.57,32,1.079,40,0.187,50,0.02,51,0.02,69,0.89,138,0.899,140,1.297,142,0.76,145,1.063,147,0.982,192,1.567,196,1.678,200,0.823,204,1.305,212,1.425,213,0.823,218,0.984,220,1.407,223,1.617,232,1.178,233,1.297,250,1.56,264,2.044,281,2.217,282,1.297,306,2.781,324,2.454,329,2.217,382,1.435,409,1.297,410,1.435,411,1.435,412,1.602,413,3.006,414,3.035,415,2.86,418,1.435,421,2.739,423,2.739,424,3.33,425,3.33,429,3.006,430,2.326,431,2.326,432,2.326,433,1.602,434,2.326,435,1.883,436,1.602,437,2.326,438,1.602,439,2.326,440,1.297,441,1.56,442,1.602,443,1.602,444,2.326,445,1.602,446,1.602,447,1.602,448,1.602,449,1.602,450,1.297,451,1.435,452,1.602,453,1.602,454,1.602,455,1.602,456,1.883,457,3.192,458,2.454,459,3.52,460,3.006,461,2.326,462,1.602,463,2.326,464,3.006,465,1.602,466,2.326,467,1.602,468,3.65,469,2.514,470,2.514,471,2.514,472,2.514,473,2.514,474,2.514,475,2.514,476,2.514,477,2.514,478,2.514]],["title/classes/FakeBluetoothRemoteGATTServer.html",[40,0.125,440,1.632]],["body/classes/FakeBluetoothRemoteGATTServer.html",[3,0.364,4,0.364,5,0.322,6,1.284,7,0.513,9,0.322,10,1.33,11,0.793,13,1.375,14,0.816,15,0.035,30,0.585,32,1.109,40,0.192,50,0.02,51,0.02,69,0.839,138,0.953,140,1.375,142,0.793,145,1.036,147,0.925,192,1.332,196,2.143,200,1.247,204,1.832,212,2.001,213,0.873,218,0.871,220,0.873,223,1.537,232,1.249,233,1.375,250,1.627,264,1.732,281,2.291,282,2.291,306,2.291,324,2.536,329,2.291,382,2.767,409,1.375,410,1.522,411,1.522,412,1.698,413,2.426,415,2.174,418,1.522,421,2.83,423,2.426,424,3.088,425,3.088,429,3.088,430,2.426,431,2.426,432,2.426,433,1.698,434,2.426,435,1.964,436,1.698,437,2.426,438,1.698,439,2.426,440,1.964,441,1.898,442,3.266,443,1.698,444,2.426,445,1.698,446,2.426,447,2.83,448,1.698,449,1.698,450,1.375,451,1.522,452,1.698,453,1.698,454,1.698,455,1.698,456,1.375,457,2.426,458,1.522,459,3.088,460,2.83,461,1.698,462,1.698,463,2.426,464,1.698,465,1.698,466,1.698,467,1.698,479,3.807,480,2.215,481,3.199,482,3.807,483,3.807,484,2.665,485,2.665,486,2.665]],["title/classes/FakeBluetoothRemoteGATTService.html",[40,0.125,450,1.632]],["body/classes/FakeBluetoothRemoteGATTService.html",[3,0.386,4,0.386,5,0.342,6,1.199,7,0.479,9,0.342,10,1.366,11,0.827,13,1.458,14,0.433,15,0.035,30,0.601,32,1.139,40,0.197,50,0.021,51,0.021,69,0.866,138,1.01,140,1.458,142,0.827,145,0.939,147,0.589,192,1.19,196,2.179,200,0.926,204,1.419,212,2.046,213,0.926,218,0.908,223,1.572,233,1.458,250,1.696,264,1.778,267,1.324,281,2.366,282,1.458,306,2.366,324,2.619,329,2.366,382,1.614,409,1.458,410,1.614,411,1.614,412,1.801,413,2.529,415,2.266,418,1.614,421,2.923,423,2.529,424,3.17,425,3.17,429,3.17,430,2.529,431,2.529,432,2.529,433,1.801,434,2.529,435,2.047,436,1.801,437,2.529,438,1.801,439,2.529,440,1.458,441,1.696,442,1.801,443,1.801,444,2.529,445,1.801,446,1.801,447,1.801,448,1.801,449,1.801,450,2.047,451,2.992,452,1.801,453,2.529,454,2.923,455,1.801,456,1.458,457,2.529,458,1.614,459,3.17,460,2.923,461,1.801,462,1.801,463,2.529,464,1.801,465,1.801,466,1.801,467,1.801,480,2.35,487,3.969,488,2.827,489,3.969,490,2.827]],["title/components/HumidityComponent.html",[52,0.868,76,1.131]],["body/components/HumidityComponent.html",[3,0.274,4,0.274,5,0.242,7,0.183,9,0.242,10,0.846,11,0.782,14,0.828,15,0.035,16,0.907,20,0.378,23,1.506,25,1.229,27,1.126,30,0.454,32,0.459,33,1.646,40,0.079,42,1.59,44,1.943,45,1.317,46,1.444,49,1.444,50,0.017,51,0.017,52,1.031,53,0.717,54,1.444,55,1.034,56,1.034,58,1.034,59,2.663,60,2.016,62,1.59,63,1.034,64,1.59,65,1.444,66,1.034,67,2.174,68,1.034,69,0.859,70,1.034,71,0.717,72,0.856,73,1.034,74,0.717,75,1.034,76,1.506,77,1.034,78,0.717,79,1.034,80,0.717,81,0.939,82,1.034,83,1.034,122,1.145,123,1.145,126,0.939,127,0.783,138,1.342,142,0.642,145,1.098,147,1.042,155,2.144,158,1.444,159,2.392,160,2.392,162,2.392,163,2.392,181,2.392,187,2.144,192,1.264,196,1.875,200,1.573,201,2.899,202,2.392,203,2.392,204,1.506,206,1.964,207,2.686,208,2.686,209,2.686,210,1.964,211,1.964,212,1.466,213,1.009,214,1.277,215,2.206,216,2.899,218,0.859,220,1.638,222,1.964,223,1.126,225,1.444,229,1.964,230,2.406,236,2.899,243,1.277,246,1.034,248,1.145,249,1.277,250,1.801,251,1.59,252,1.76,253,1.76,254,1.145,255,1.145,256,1.145,257,1.145,258,1.277,259,1.145,260,1.277,261,1.277,262,1.277,263,1.277,264,0.717,265,1.277,267,0.939,270,1.277,271,1.277,285,1.277,286,1.277,287,1.964,288,1.76,289,1.277,290,1.277,291,1.277,292,1.277,294,1.277,295,1.277,297,1.964,298,1.277,299,1.277,326,1.666,327,2.562,385,2.704,390,1.666,392,2.704,398,1.277,399,1.444,441,0.856,491,1.444,492,3.503,493,3.121,494,3.121,495,3.121,496,3.121,497,3.503,498,2.004,499,2.004,500,2.004,501,2.004,502,2.004,503,2.004,504,2.004,505,2.004,506,3.121,507,2.004,508,3.121,509,1.666,510,2.562,511,2.004,512,3.503,513,2.004,514,2.004,515,2.004,516,2.004,517,2.004,518,2.004,519,1.666,520,1.444,521,1.666,522,2.22,523,2.22,524,2.22,525,2.22,526,2.004,527,1.666,528,1.666,529,1.666,530,1.666,531,2.004,532,1.666,533,1.666,534,1.666,535,1.444,536,3.121,537,1.666,538,2.562,539,1.666,540,1.666,541,1.666,542,1.666,543,1.666,544,1.666,545,1.666,546,1.666,547,1.666,548,1.666,549,1.666,550,1.666,551,2.562,552,2.004,553,1.444,554,1.666,555,1.666,556,1.666,557,1.444]],["title/interfaces/Logger.html",[0,1.352,364,1.806]],["body/interfaces/Logger.html",[0,1.581,2,2.665,3,0.505,4,0.505,5,0.447,6,1.271,7,0.508,9,0.447,11,1.095,14,0.805,15,0.035,16,0.699,20,0.699,27,1.11,28,1.734,30,0.636,40,0.188,50,0.026,51,0.026,61,2.23,69,0.993,142,0.991,145,0.993,147,1.095,158,2.23,218,1.204,220,1.925,223,1.835,225,2.23,278,3.032,303,1.444,325,2.717,355,2.358,356,3.427,357,3.427,359,4.234,360,3.427,362,3.427,364,3.17,365,3.427,366,3.427,367,3.427,368,2.665,369,2.665,370,2.665,558,3.701,559,3.701,560,3.701]],["title/injectables/NoLoggerService.html",[28,1.482,303,0.868]],["body/injectables/NoLoggerService.html",[0,1.601,3,0.512,4,0.512,5,0.453,6,1.277,7,0.51,9,0.453,11,1.102,14,0.81,15,0.035,16,0.708,20,0.708,27,1.124,28,2.248,30,0.639,40,0.19,50,0.026,51,0.026,61,2.248,69,0.999,142,0.999,145,0.999,147,1.102,158,2.248,218,1.211,220,1.931,223,1.587,225,2.248,278,3.057,303,1.452,304,1.933,325,2.739,355,2.388,356,3.455,357,3.811,359,4.248,360,3.811,362,3.811,364,3.021,365,2.699,366,2.699,367,2.699,368,2.699,369,2.699,370,2.699,561,3.748,562,3.748,563,3.748]],["title/injectables/ServerWebBluetooth.html",[303,0.868,564,2.279]],["body/injectables/ServerWebBluetooth.html",[3,0.611,4,0.611,5,0.541,6,1.226,7,0.49,9,0.541,15,0.034,16,0.845,20,0.845,30,0.541,32,1.025,40,0.177,42,2.956,50,0.029,51,0.029,142,1.115,145,0.845,147,0.932,259,3.391,303,1.47,304,2.31,564,3.857,565,3.722,566,4.477,567,4.477,568,3.722,569,4.477]],["title/components/StepCounterComponent.html",[52,0.868,78,1.131]],["body/components/StepCounterComponent.html",[3,0.268,4,0.268,5,0.237,7,0.18,9,0.237,10,0.833,11,0.772,14,0.823,15,0.035,16,0.851,20,0.371,23,1.491,25,1.214,27,1.112,30,0.448,32,0.694,33,1.185,40,0.078,44,1.926,45,1.296,46,1.422,49,1.422,50,0.016,51,0.016,52,1.018,53,0.702,54,1.422,55,1.013,56,1.013,58,1.013,59,2.646,60,2.003,62,1.565,63,1.013,64,1.565,65,1.422,66,1.013,67,2.151,68,1.013,69,0.851,70,1.013,71,0.702,72,0.839,73,1.013,74,0.702,75,1.013,76,0.702,77,1.013,78,1.491,79,1.013,80,0.702,81,0.92,82,1.013,83,1.013,122,1.122,123,1.122,126,0.92,127,0.767,138,1.085,142,0.632,145,1.062,147,0.992,155,2.117,158,1.422,159,2.362,160,2.362,162,2.362,163,3.036,166,2.67,169,2.67,170,2.67,171,3.082,172,3.96,173,3.96,174,3.082,175,2.67,176,2.67,177,2.67,179,3.431,180,3.082,181,3.036,184,2.67,187,2.117,189,2.67,192,1.613,193,3.082,196,1.86,200,1.56,201,2.872,202,2.362,203,2.362,204,1.491,206,1.934,207,2.657,208,2.657,209,2.657,210,1.934,211,1.934,212,1.448,213,0.994,214,1.252,215,2.191,216,2.872,218,0.848,220,1.56,222,1.934,223,1.112,225,1.737,229,1.934,230,2.573,232,0.92,236,2.872,243,1.252,246,1.013,248,1.122,249,1.252,250,1.926,251,1.565,252,1.733,253,1.733,254,1.122,255,1.122,256,1.122,257,1.122,258,1.252,259,1.122,260,1.252,261,1.252,262,1.252,263,1.252,264,0.702,267,0.92,270,1.252,271,1.252,281,1.013,284,1.415,285,1.252,286,1.252,287,1.934,288,1.122,289,1.252,290,1.252,291,1.252,292,1.252,294,1.252,295,1.252,297,1.934,298,1.252,299,1.252,393,2.185,481,2.185,522,2.185,523,2.185,524,2.185,525,2.185,535,1.415,553,1.415,557,1.415,570,1.415,571,3.034,572,3.707,573,3.707,574,3.707,575,3.96,576,3.707,577,3.707,578,1.964,579,1.964,580,1.964,581,1.964,582,1.964,583,1.964,584,1.964,585,1.964,586,1.964,587,1.964,588,1.964,589,1.964,590,1.964,591,4.17,592,1.964,593,4.17,594,1.964,595,1.964,596,1.964,597,1.964,598,1.964]],["title/components/TemperatureComponent.html",[52,0.868,80,1.131]],["body/components/TemperatureComponent.html",[3,0.272,4,0.272,5,0.241,7,0.182,9,0.241,10,0.842,11,0.778,14,0.826,15,0.035,16,0.904,20,0.376,23,1.501,25,1.224,27,1.121,30,0.452,32,0.702,33,1.64,40,0.079,42,1.581,44,1.937,45,1.31,46,1.437,49,1.437,50,0.016,51,0.016,52,1.026,53,0.712,54,1.437,55,1.027,56,1.027,58,1.027,59,2.657,60,2.012,62,1.581,63,1.027,64,1.581,65,1.437,66,1.027,67,2.166,68,1.027,69,0.856,70,1.027,71,0.712,72,0.851,73,1.027,74,0.712,75,1.027,76,0.712,77,1.027,78,0.712,79,1.027,80,1.501,81,1.968,82,1.027,83,1.027,122,1.137,123,1.137,126,0.933,127,0.777,138,1.336,142,0.638,145,1.097,147,1.039,155,2.135,158,1.437,159,2.382,160,2.382,162,2.382,163,2.382,181,2.382,187,2.135,192,1.259,196,1.87,200,1.568,201,2.89,202,2.382,203,2.382,204,1.501,206,1.954,207,2.676,208,2.676,209,2.676,210,1.954,211,1.954,212,1.46,213,1.004,214,1.269,215,2.201,216,2.89,218,0.856,220,1.634,222,1.954,223,1.121,225,1.752,229,1.954,230,2.398,236,2.89,243,1.269,246,1.027,248,1.137,249,1.269,250,2.046,251,1.581,252,1.751,253,1.751,254,1.137,255,1.137,256,1.137,257,1.137,258,1.269,259,1.137,260,1.269,261,1.269,262,1.269,263,1.269,264,0.712,265,1.269,267,0.933,270,1.269,271,1.269,284,1.434,285,1.269,286,1.269,287,1.954,288,1.137,289,1.269,290,1.269,291,1.269,292,1.269,294,1.269,295,1.269,297,1.954,298,1.269,299,1.269,392,2.693,398,1.269,399,1.434,441,0.851,492,3.491,493,3.108,494,3.108,495,3.108,496,3.108,497,3.491,506,3.108,508,3.108,509,1.655,510,2.549,512,3.491,519,1.655,520,1.434,521,1.655,522,2.208,523,2.208,524,2.208,525,2.208,527,1.655,528,1.655,529,1.655,530,1.655,532,1.655,533,1.655,534,1.655,535,1.434,536,3.108,537,1.655,538,2.549,539,1.655,540,1.655,541,1.655,542,1.655,543,1.655,544,1.655,545,1.655,546,1.655,547,1.655,548,1.655,549,1.655,550,1.655,551,2.549,553,1.434,554,1.655,555,1.655,556,1.655,557,1.434,575,1.655,599,1.434,600,1.991,601,1.991,602,1.991,603,1.991,604,1.991,605,1.991,606,1.991,607,1.991,608,1.991,609,1.991,610,1.991,611,1.991,612,1.991,613,1.991,614,1.991,615,1.991,616,1.991,617,3.066,618,3.066,619,1.991]],["title/modules/WebBluetoothModule.html",[41,1.482,84,2.279]],["body/modules/WebBluetoothModule.html",[0,1.518,1,3.237,3,0.485,4,0.485,5,0.429,6,1.061,7,0.424,8,2.264,11,0.965,12,2.264,13,1.832,14,0.544,15,0.035,16,1.07,17,3.287,18,4.288,19,2.953,20,0.671,21,3.852,22,2.558,23,1.657,24,2.953,25,1.857,26,2.953,27,1.547,28,2.171,29,2.953,30,0.685,31,3.715,32,1.298,33,2.135,34,2.558,35,2.945,36,2.953,37,3.287,38,2.953,39,2.264,40,0.141,41,2.417,42,2.39,43,3.852,44,1.518,45,2.204,46,2.171,47,2.953,48,2.264,49,1.665,50,0.025,51,0.025,69,0.671,86,2.028,142,0.74,145,0.671,147,0.74,192,1.065,218,0.813,232,1.665,620,3.552,621,3.552]],["title/coverage.html",[622,3.567]],["body/coverage.html",[0,1.696,1,1.614,5,0.342,6,1.406,7,0.562,8,3.17,14,0.433,15,0.035,23,1.01,25,1.3,27,0.848,28,1.324,31,3.304,33,1.104,37,1.801,40,0.207,44,2.125,48,1.801,50,0.021,51,0.021,52,1.491,53,1.01,57,2.35,71,1.01,74,1.01,76,1.01,78,1.01,80,1.01,139,2.036,141,2.35,156,3.583,157,3.583,215,2.239,251,2.566,303,1.491,305,2.036,328,5.106,339,2.35,355,2.923,364,1.614,371,2.35,393,4.629,409,1.458,410,2.841,440,1.458,450,1.458,456,1.458,491,3.583,564,2.036,565,2.35,570,3.583,599,3.583,622,2.35,623,2.036,624,2.827,625,2.827,626,2.827,627,4.587,628,6.239,629,2.35,630,2.827,631,2.827,632,3.3,633,3.3,634,2.35,635,2.35,636,4.975,637,3.969,638,2.827,639,2.827,640,2.827,641,2.827,642,3.969,643,2.827,644,2.35,645,3.3,646,2.35,647,2.827,648,2.827]],["title/dependencies.html",[87,2.42,649,1.913]],["body/dependencies.html",[15,0.035,20,0.814,22,3.107,50,0.028,51,0.028,87,2.749,103,4.354,127,1.685,136,2.701,248,2.463,520,3.107,650,4.314,651,6.238,652,4.314,653,5.237,654,4.314,655,4.314,656,4.314,657,4.314,658,4.314,659,4.314,660,4.314,661,4.314,662,4.314,663,3.586,664,4.314,665,4.314,666,4.314,667,4.314,668,4.314,669,4.314,670,4.314,671,4.314,672,4.314,673,4.314]],["title/miscellaneous/functions.html",[674,1.37,675,3.157]],["body/miscellaneous/functions.html",[1,3.144,6,1.074,7,0.429,8,2.989,9,0.567,11,0.977,14,0.718,15,0.031,25,1.913,34,3.378,35,2.678,37,3.724,48,3.508,50,0.03,51,0.03,69,0.886,218,1.074,674,2.42,675,3.9,676,5.844]],["title/index.html",[9,0.321,677,1.913,678,1.913]],["body/index.html",[7,0.451,12,1.37,15,0.035,16,1.02,17,2.072,20,0.74,23,1.765,30,0.474,32,1.281,39,1.37,40,0.155,41,1.524,42,1.677,45,0.919,50,0.017,51,0.017,60,1.27,61,1.524,72,1.675,84,2.342,85,1.228,94,1.37,126,2.048,127,2.061,136,1.109,137,1.788,138,1.162,161,2.498,192,1.537,197,1.788,200,1.728,204,0.769,212,1.928,246,1.677,256,1.228,257,1.228,264,1.678,265,1.37,266,2.703,267,2.199,268,2.703,282,1.677,303,1.2,309,2.703,310,3.633,321,2.703,322,2.703,325,1.857,329,1.677,331,2.703,332,1.788,334,2.342,337,1.788,338,2.703,378,1.788,398,2.072,404,1.788,411,1.228,415,1.228,418,1.228,435,1.109,441,0.919,451,1.228,458,1.228,623,2.824,649,1.549,663,2.703,677,1.549,678,1.549,679,2.15,680,3.252,681,3.252,682,2.15,683,2.15,684,2.15,685,2.15,686,2.15,687,2.15,688,2.15,689,2.15,690,2.15,691,3.902,692,3.252,693,2.15,694,3.252,695,4.37,696,3.252,697,3.252,698,3.252,699,3.252,700,4.936,701,5.126,702,3.252,703,3.252,704,2.15,705,3.252,706,2.15,707,2.15,708,2.15,709,3.252,710,2.15,711,2.15,712,2.15,713,2.15,714,2.15,715,2.15,716,3.252,717,2.15,718,3.252,719,2.15,720,2.15,721,2.15,722,2.15,723,2.703,724,2.15,725,2.15,726,2.15,727,2.15,728,3.252,729,2.15,730,2.15,731,2.15,732,2.15,733,2.15,734,3.252,735,1.788,736,2.15,737,2.15,738,2.15,739,2.15,740,2.15,741,2.15,742,2.15,743,2.15,744,2.15,745,2.15,746,2.15,747,2.15,748,1.788,749,3.252,750,2.15,751,2.15,752,3.252,753,3.252,754,2.15,755,2.15,756,2.15,757,2.703,758,2.15,759,2.15,760,3.252,761,2.15,762,2.15,763,2.15,764,2.15,765,2.15,766,2.15,767,2.15,768,2.15,769,2.15,770,2.15,771,2.15,772,2.15,773,2.342,774,2.703,775,3.259,776,1.788,777,1.788,778,1.788,779,1.788,780,2.703,781,1.788,782,1.788,783,1.788,784,1.788,785,1.788,786,2.703,787,4.492,788,1.788,789,1.788,790,1.788,791,3.259,792,1.788,793,2.703,794,1.788,795,1.788,796,1.788,797,1.788,798,1.788,799,1.788,800,1.788,801,1.788,802,1.788,803,2.703,804,1.788,805,1.788,806,1.788,807,1.788,808,1.788,809,1.788,810,2.703,811,2.703,812,1.788,813,1.788,814,1.788,815,1.788,816,1.788,817,1.788,818,1.788,819,1.788,820,1.788,821,1.788,822,1.788,823,1.788,824,1.788,825,1.788,826,1.788,827,1.788,828,1.788,829,1.788,830,1.788,831,1.788,832,1.788,833,1.788,834,1.788,835,1.788,836,1.788,837,1.788,838,1.788,839,1.788,840,1.788]],["title/license.html",[677,1.913,678,1.913,773,1.913]],["body/license.html",[15,0.027,50,0.027,51,0.027,94,2.533,435,2.05,623,2.863,691,4.139,723,3.304,757,3.304,773,2.863,774,4.139,775,4.52,776,3.304,777,3.304,778,3.304,779,3.304,780,4.139,781,3.304,782,3.304,783,3.304,784,3.304,785,3.304,786,4.139,787,5.152,788,3.304,789,3.304,790,3.304,791,4.52,792,3.304,793,4.139,794,3.304,795,3.304,796,3.304,797,3.304,798,3.304,799,3.304,800,3.304,801,3.304,802,3.304,803,4.139,804,3.304,805,3.304,806,3.304,807,3.304,808,3.304,809,3.304,810,4.139,811,4.139,812,3.304,813,3.304,814,3.304,815,3.304,816,3.304,817,3.304,818,3.304,819,3.304,820,3.304,821,3.304,822,3.304,823,3.304,824,3.304,825,3.304,826,3.304,827,3.304,828,3.304,829,3.304,830,3.304,831,3.304,832,3.304,833,3.304,834,3.304,835,3.304,836,3.304,837,3.304,838,3.304,839,3.304,840,3.304]],["title/modules.html",[86,2.45]],["body/modules.html",[15,0.03,41,2.295,50,0.03,51,0.03,85,2.797,86,2.797,136,2.527,348,4.072,841,4.898,842,5.646,843,4.898,844,4.072]],["title/overview.html",[845,3.567]],["body/overview.html",[2,3.019,15,0.034,41,2.609,50,0.028,51,0.028,53,2.197,54,1.964,71,1.99,74,1.99,76,1.99,78,1.99,80,1.99,85,3.677,86,2.393,87,3.279,88,3.484,89,3.484,90,3.484,91,3.484,92,4.278,93,3.484,94,2.671,140,2.162,304,2.162,735,4.278,748,3.484,845,3.484,846,5.146]],["title/properties.html",[10,1.042,649,1.913]],["body/properties.html",[10,1.367,15,0.032,50,0.031,51,0.031,847,4.981,848,4.981]],["title/miscellaneous/typealiases.html",[674,1.37,849,3.798]],["body/miscellaneous/typealiases.html",[6,1.097,7,0.438,9,0.579,14,0.902,15,0.03,50,0.03,51,0.03,305,3.452,314,4.635,481,4.015,629,3.984,674,2.472,850,4.792,851,5.575,852,4.792,853,4.792]],["title/miscellaneous/variables.html",[674,1.37,854,3.157]],["body/miscellaneous/variables.html",[6,0.353,7,0.141,9,0.186,14,0.692,15,0.035,23,1.866,25,1.542,27,1.412,33,1.839,44,2.012,45,2.012,46,2.207,49,2.207,50,0.013,51,0.013,72,0.659,81,0.723,138,0.552,156,1.112,157,2.623,161,0.983,192,1.655,200,1.842,215,2.358,232,2.586,251,2.693,252,2.689,253,2.689,254,2.08,255,2.08,308,1.283,385,1.112,441,0.659,491,1.112,568,2.63,570,1.112,599,1.112,632,1.283,633,2.63,634,2.083,635,2.083,644,1.283,645,3.028,646,1.283,674,0.796,844,2.63,854,1.283,855,3.164,856,3.164,857,3.164,858,3.164,859,1.543,860,1.543,861,2.506,862,2.506,863,1.543,864,1.543,865,1.543,866,1.543,867,6.324,868,6.324,869,6.324,870,6.324,871,1.543,872,1.543,873,1.543,874,1.543,875,1.543,876,1.543,877,1.543,878,1.543,879,1.543,880,1.543,881,1.543,882,1.543,883,1.543,884,1.543,885,1.543,886,1.543,887,1.543,888,1.543,889,1.543,890,1.543,891,1.543,892,5.003,893,1.543,894,4.71,895,1.543,896,4.71,897,1.543,898,1.543,899,1.543,900,1.543,901,1.543,902,1.543,903,1.543,904,1.543,905,1.543,906,1.543,907,3.164,908,3.164,909,1.543,910,1.543,911,1.543,912,1.543,913,1.543,914,1.543,915,1.543,916,1.543,917,1.543,918,1.543,919,1.543,920,1.543,921,1.543,922,1.543,923,1.543,924,1.543,925,1.543,926,1.543,927,1.543,928,1.543,929,1.543,930,1.543,931,1.543,932,1.543,933,1.543,934,1.543,935,1.543,936,1.543,937,1.543,938,1.543,939,1.543,940,1.543,941,1.543,942,1.543,943,1.543,944,1.543,945,1.543,946,1.543,947,1.543,948,1.543,949,1.543,950,1.543,951,1.543,952,1.543,953,1.543,954,1.543,955,1.543,956,1.543,957,1.543,958,1.543,959,1.543,960,1.543,961,1.543,962,1.543,963,1.543,964,1.543,965,1.543,966,1.543]]],"invertedIndex":[["",{"_index":15,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["0",{"_index":393,"title":{},"body":{"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{},"coverage.html":{}}}],["0.0.6",{"_index":664,"title":{},"body":{"dependencies.html":{}}}],["0.14.3",{"_index":673,"title":{},"body":{"dependencies.html":{}}}],["0/1",{"_index":628,"title":{},"body":{"coverage.html":{}}}],["0/10",{"_index":638,"title":{},"body":{"coverage.html":{}}}],["0/13",{"_index":643,"title":{},"body":{"coverage.html":{}}}],["0/16",{"_index":642,"title":{},"body":{"coverage.html":{}}}],["0/18",{"_index":641,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":627,"title":{},"body":{"coverage.html":{}}}],["0/3",{"_index":626,"title":{},"body":{"coverage.html":{}}}],["0/4",{"_index":636,"title":{},"body":{"coverage.html":{}}}],["0/5",{"_index":640,"title":{},"body":{"coverage.html":{}}}],["0/8",{"_index":639,"title":{},"body":{"coverage.html":{}}}],["0/9",{"_index":637,"title":{},"body":{"coverage.html":{}}}],["000",{"_index":193,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["000000",{"_index":542,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["000000000000",{"_index":870,"title":{},"body":{"miscellaneous/variables.html":{}}}],["0451",{"_index":867,"title":{},"body":{"miscellaneous/variables.html":{}}}],["1",{"_index":398,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["1.35.0",{"_index":666,"title":{},"body":{"dependencies.html":{}}}],["100",{"_index":575,"title":{},"body":{"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["10px",{"_index":406,"title":{},"body":{"components/DashboardComponent.html":{}}}],["112px",{"_index":572,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["11em",{"_index":574,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["120px",{"_index":180,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["15px",{"_index":403,"title":{},"body":{"components/DashboardComponent.html":{}}}],["16.0.0",{"_index":848,"title":{},"body":{"properties.html":{}}}],["16px",{"_index":493,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["17",{"_index":544,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["17.1.2",{"_index":653,"title":{},"body":{"dependencies.html":{}}}],["17.1.3",{"_index":651,"title":{},"body":{"dependencies.html":{}}}],["2",{"_index":735,"title":{},"body":{"index.html":{},"overview.html":{}}}],["2.3.0",{"_index":671,"title":{},"body":{"dependencies.html":{}}}],["2.a",{"_index":690,"title":{},"body":{"index.html":{}}}],["2.b",{"_index":710,"title":{},"body":{"index.html":{}}}],["2017",{"_index":777,"title":{},"body":{"index.html":{},"license.html":{}}}],["20px",{"_index":401,"title":{},"body":{"components/DashboardComponent.html":{}}}],["21/31",{"_index":631,"title":{},"body":{"coverage.html":{}}}],["214px",{"_index":573,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["222px",{"_index":178,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["24px",{"_index":183,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["255px",{"_index":191,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["29.0.5",{"_index":669,"title":{},"body":{"dependencies.html":{}}}],["3",{"_index":738,"title":{},"body":{"index.html":{}}}],["32px",{"_index":408,"title":{},"body":{"components/DashboardComponent.html":{}}}],["4",{"_index":743,"title":{},"body":{"index.html":{}}}],["4000",{"_index":868,"title":{},"body":{"miscellaneous/variables.html":{}}}],["40px",{"_index":389,"title":{},"body":{"components/DashboardComponent.html":{}}}],["4933",{"_index":523,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["5",{"_index":748,"title":{},"body":{"index.html":{},"overview.html":{}}}],["5.1.1",{"_index":662,"title":{},"body":{"dependencies.html":{}}}],["52ffa9740042",{"_index":525,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["5em",{"_index":174,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["5px",{"_index":188,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{}}}],["6",{"_index":846,"title":{},"body":{"overview.html":{}}}],["67",{"_index":630,"title":{},"body":{"coverage.html":{}}}],["7.8.0",{"_index":665,"title":{},"body":{"dependencies.html":{}}}],["700px",{"_index":391,"title":{},"body":{"components/DashboardComponent.html":{}}}],["90px",{"_index":186,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["9b10",{"_index":524,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["9b35",{"_index":522,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["__register__",{"_index":938,"title":{},"body":{"miscellaneous/variables.html":{}}}],["_config",{"_index":307,"title":{},"body":{"injectables/BleService.html":{}}}],["above",{"_index":809,"title":{},"body":{"index.html":{},"license.html":{}}}],["absolute",{"_index":176,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["abstract",{"_index":720,"title":{},"body":{"index.html":{}}}],["accelerometer",{"_index":909,"title":{},"body":{"miscellaneous/variables.html":{}}}],["acceptalldevices",{"_index":732,"title":{},"body":{"index.html":{}}}],["accessors",{"_index":211,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["action",{"_index":834,"title":{},"body":{"index.html":{},"license.html":{}}}],["actual_component",{"_index":83,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["addeventlistener",{"_index":414,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["addeventlistener(type",{"_index":423,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["address",{"_index":941,"title":{},"body":{"miscellaneous/variables.html":{}}}],["advanced",{"_index":711,"title":{},"body":{"index.html":{}}}],["aliases",{"_index":850,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["align",{"_index":170,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["and/or",{"_index":801,"title":{},"body":{"index.html":{},"license.html":{}}}],["angular",{"_index":378,"title":{},"body":{"components/DashboardComponent.html":{},"index.html":{}}}],["angular/animations",{"_index":650,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk",{"_index":652,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk/layout",{"_index":99,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/common",{"_index":22,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"dependencies.html":{}}}],["angular/compiler",{"_index":654,"title":{},"body":{"dependencies.html":{}}}],["angular/core",{"_index":20,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"dependencies.html":{},"index.html":{}}}],["angular/forms",{"_index":655,"title":{},"body":{"dependencies.html":{}}}],["angular/material",{"_index":656,"title":{},"body":{"dependencies.html":{}}}],["angular/material/button",{"_index":101,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/card",{"_index":106,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/expansion",{"_index":108,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/grid",{"_index":110,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/icon",{"_index":113,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/list",{"_index":115,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/menu",{"_index":117,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/progress",{"_index":119,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/material/snack",{"_index":122,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["angular/material/toolbar",{"_index":125,"title":{},"body":{"modules/AppModule.html":{}}}],["angular/platform",{"_index":103,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["angular/router",{"_index":658,"title":{},"body":{"dependencies.html":{}}}],["annotated",{"_index":696,"title":{},"body":{"index.html":{}}}],["api",{"_index":749,"title":{},"body":{"index.html":{}}}],["app",{"_index":765,"title":{},"body":{"index.html":{}}}],["app.component",{"_index":128,"title":{},"body":{"modules/AppModule.html":{}}}],["appcomponent",{"_index":53,"title":{"components/AppComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["appmodule",{"_index":85,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"index.html":{},"modules.html":{},"overview.html":{}}}],["apppage",{"_index":139,"title":{"classes/AppPage.html":{}},"body":{"classes/AppPage.html":{},"coverage.html":{}}}],["args",{"_index":359,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["arising",{"_index":838,"title":{},"body":{"index.html":{},"license.html":{}}}],["ask",{"_index":744,"title":{},"body":{"index.html":{}}}],["associated",{"_index":788,"title":{},"body":{"index.html":{},"license.html":{}}}],["authors",{"_index":827,"title":{},"body":{"index.html":{},"license.html":{}}}],["auto",{"_index":394,"title":{},"body":{"components/DashboardComponent.html":{}}}],["available",{"_index":844,"title":{},"body":{"modules.html":{},"miscellaneous/variables.html":{}}}],["awboptions",{"_index":1,"title":{"interfaces/AWBOptions.html":{}},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["b",{"_index":252,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["b000",{"_index":869,"title":{},"body":{"miscellaneous/variables.html":{}}}],["bar",{"_index":123,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["barometer",{"_index":902,"title":{},"body":{"miscellaneous/variables.html":{}}}],["battery",{"_index":72,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["battery_charging_full",{"_index":194,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["battery_level",{"_index":268,"title":{},"body":{"components/BatteryLevelComponent.html":{},"index.html":{}}}],["battery_service",{"_index":266,"title":{},"body":{"components/BatteryLevelComponent.html":{},"index.html":{}}}],["batterylevelcomponent",{"_index":71,"title":{"components/BatteryLevelComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["batterylevelservice",{"_index":699,"title":{},"body":{"index.html":{}}}],["batterylevelservice.gatt_characteristic_battery_level",{"_index":742,"title":{},"body":{"index.html":{}}}],["batterylevelservice.gatt_primary_service",{"_index":734,"title":{},"body":{"index.html":{}}}],["ble",{"_index":60,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["ble.service",{"_index":249,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["blecore",{"_index":251,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["bleservice",{"_index":215,"title":{"injectables/BleService.html":{}},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["bleservice(b",{"_index":255,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["block",{"_index":181,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["blog",{"_index":763,"title":{},"body":{"index.html":{}}}],["bluetooth",{"_index":127,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"dependencies.html":{},"index.html":{}}}],["bluetooth.service",{"_index":24,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["bluetooth/src/lib/bluetooth.module.ts",{"_index":8,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["bluetooth/src/lib/bluetooth.module.ts:32",{"_index":621,"title":{},"body":{"modules/WebBluetoothModule.html":{}}}],["bluetooth/src/lib/bluetooth.service.ts",{"_index":629,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["bluetooth/src/lib/lang/uuids/ti",{"_index":632,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["bluetooth/src/lib/logger.service.ts",{"_index":355,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"coverage.html":{}}}],["bluetooth/src/lib/logger.service.ts:13",{"_index":361,"title":{},"body":{"injectables/ConsoleLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:16",{"_index":358,"title":{},"body":{"injectables/ConsoleLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:19",{"_index":363,"title":{},"body":{"injectables/ConsoleLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:28",{"_index":562,"title":{},"body":{"injectables/NoLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:29",{"_index":561,"title":{},"body":{"injectables/NoLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:30",{"_index":563,"title":{},"body":{"injectables/NoLoggerService.html":{}}}],["bluetooth/src/lib/logger.service.ts:4",{"_index":559,"title":{},"body":{"interfaces/Logger.html":{}}}],["bluetooth/src/lib/logger.service.ts:5",{"_index":558,"title":{},"body":{"interfaces/Logger.html":{}}}],["bluetooth/src/lib/logger.service.ts:6",{"_index":560,"title":{},"body":{"interfaces/Logger.html":{}}}],["bluetooth/src/lib/platform/browser.ts",{"_index":339,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{},"coverage.html":{}}}],["bluetooth/src/lib/platform/browser.ts:14",{"_index":344,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["bluetooth/src/lib/platform/browser.ts:5",{"_index":341,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["bluetooth/src/lib/platform/server.ts",{"_index":565,"title":{},"body":{"injectables/ServerWebBluetooth.html":{},"coverage.html":{}}}],["bluetooth/src/lib/platform/server.ts:5",{"_index":566,"title":{},"body":{"injectables/ServerWebBluetooth.html":{}}}],["bluetooth/src/lib/test.utils.ts",{"_index":410,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["bluetooth/src/lib/test.utils.ts:103",{"_index":477,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:12",{"_index":417,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:14",{"_index":420,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:17",{"_index":426,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:24",{"_index":428,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:29",{"_index":427,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:39",{"_index":482,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:41",{"_index":483,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:45",{"_index":484,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:50",{"_index":486,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:54",{"_index":485,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["bluetooth/src/lib/test.utils.ts:60",{"_index":488,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetooth/src/lib/test.utils.ts:61",{"_index":489,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetooth/src/lib/test.utils.ts:65",{"_index":490,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetooth/src/lib/test.utils.ts:7",{"_index":419,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:71",{"_index":474,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:72",{"_index":473,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:73",{"_index":471,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:74",{"_index":472,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:78",{"_index":469,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:8",{"_index":422,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["bluetooth/src/lib/test.utils.ts:86",{"_index":478,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:90",{"_index":475,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth/src/lib/test.utils.ts:97",{"_index":476,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["bluetooth_disabled",{"_index":383,"title":{},"body":{"components/DashboardComponent.html":{}}}],["bluetooth_searching",{"_index":381,"title":{},"body":{"components/DashboardComponent.html":{}}}],["bluetoothcharacteristicproperties",{"_index":457,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetoothcharacteristicuuid",{"_index":454,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["bluetoothcore",{"_index":23,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["bluetoothcore(b",{"_index":254,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["bluetoothremotegattcharacteristic",{"_index":746,"title":{},"body":{"index.html":{}}}],["bluetoothremotegattserver",{"_index":418,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["bluetoothremotegattservice",{"_index":740,"title":{},"body":{"index.html":{}}}],["bluetoothserviceuuid",{"_index":447,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["boolean",{"_index":13,"title":{},"body":{"interfaces/AWBOptions.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"modules/WebBluetoothModule.html":{}}}],["bootstrap",{"_index":97,"title":{},"body":{"modules/AppModule.html":{}}}],["bordervisible",{"_index":540,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["bottom",{"_index":190,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{}}}],["browse",{"_index":842,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":136,"title":{},"body":{"modules/AppModule.html":{},"classes/AppPage.html":{},"injectables/BrowserWebBluetooth.html":{},"dependencies.html":{},"index.html":{},"modules.html":{}}}],["browser's",{"_index":689,"title":{},"body":{"index.html":{}}}],["browser.get(browser.baseurl",{"_index":151,"title":{},"body":{"classes/AppPage.html":{}}}],["browser/animations",{"_index":104,"title":{},"body":{"modules/AppModule.html":{}}}],["browseranimationsmodule",{"_index":102,"title":{},"body":{"modules/AppModule.html":{}}}],["browsermodule",{"_index":135,"title":{},"body":{"modules/AppModule.html":{}}}],["browserwebbluetooth",{"_index":25,"title":{"injectables/BrowserWebBluetooth.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BrowserWebBluetooth.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["button",{"_index":405,"title":{},"body":{"components/DashboardComponent.html":{}}}],["c",{"_index":776,"title":{},"body":{"index.html":{},"license.html":{}}}],["call",{"_index":700,"title":{},"body":{"index.html":{}}}],["can't",{"_index":719,"title":{},"body":{"index.html":{}}}],["canvas",{"_index":492,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["card",{"_index":402,"title":{},"body":{"components/DashboardComponent.html":{}}}],["cc2650",{"_index":908,"title":{},"body":{"miscellaneous/variables.html":{}}}],["center",{"_index":166,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["changelog",{"_index":661,"title":{},"body":{"dependencies.html":{}}}],["changevalue",{"_index":468,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["changevalue(value",{"_index":466,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["characteristic",{"_index":267,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["characteristics",{"_index":451,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["characteristicvaluechanged",{"_index":460,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["charge",{"_index":783,"title":{},"body":{"index.html":{},"license.html":{}}}],["chart",{"_index":494,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["chartref",{"_index":495,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["checkout",{"_index":761,"title":{},"body":{"index.html":{}}}],["chegham",{"_index":779,"title":{},"body":{"index.html":{},"license.html":{}}}],["claim",{"_index":830,"title":{},"body":{"index.html":{},"license.html":{}}}],["class",{"_index":40,"title":{"classes/AppPage.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"index.html":{}}}],["classes",{"_index":140,"title":{},"body":{"classes/AppPage.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"overview.html":{}}}],["clear",{"_index":415,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["close",{"_index":299,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["cluster_appmodule",{"_index":88,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_bootstrap",{"_index":89,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_declarations",{"_index":91,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":90,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["color",{"_index":195,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["command",{"_index":758,"title":{},"body":{"index.html":{}}}],["commonmodule",{"_index":21,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["component",{"_index":52,"title":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{}}}],["component_template",{"_index":68,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["components",{"_index":54,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"overview.html":{}}}],["conditions",{"_index":808,"title":{},"body":{"index.html":{},"license.html":{}}}],["config",{"_index":308,"title":{},"body":{"injectables/BleService.html":{},"miscellaneous/variables.html":{}}}],["config(options",{"_index":313,"title":{},"body":{"injectables/BleService.html":{}}}],["configuration",{"_index":894,"title":{},"body":{"miscellaneous/variables.html":{}}}],["connect",{"_index":382,"title":{},"body":{"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["connected",{"_index":282,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["connection",{"_index":839,"title":{},"body":{"index.html":{},"license.html":{}}}],["console",{"_index":197,"title":{},"body":{"components/BatteryLevelComponent.html":{},"index.html":{}}}],["console.error.apply(console",{"_index":369,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["console.log('getting",{"_index":709,"title":{},"body":{"index.html":{}}}],["console.log('reading",{"_index":553,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["console.log.apply(console",{"_index":368,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["console.warn.apply(console",{"_index":370,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["consoleloggerservice",{"_index":27,"title":{"injectables/ConsoleLoggerService.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["consoleloggerserviceconfig",{"_index":48,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["consoleloggerserviceconfig(options",{"_index":34,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["const",{"_index":250,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["constructor",{"_index":213,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["constructor(ble",{"_index":311,"title":{},"body":{"injectables/BleService.html":{}}}],["constructor(device",{"_index":480,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["constructor(id",{"_index":416,"title":{},"body":{"classes/FakeBluetoothDevice.html":{}}}],["constructor(properties",{"_index":461,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["constructor(public",{"_index":329,"title":{},"body":{"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["constructor(service",{"_index":214,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["container",{"_index":400,"title":{},"body":{"components/DashboardComponent.html":{}}}],["content",{"_index":153,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{}}}],["contract",{"_index":835,"title":{},"body":{"index.html":{},"license.html":{}}}],["contributions",{"_index":767,"title":{},"body":{"index.html":{}}}],["control",{"_index":945,"title":{},"body":{"miscellaneous/variables.html":{}}}],["copies",{"_index":803,"title":{},"body":{"index.html":{},"license.html":{}}}],["copy",{"_index":786,"title":{},"body":{"index.html":{},"license.html":{}}}],["copyright",{"_index":775,"title":{},"body":{"index.html":{},"license.html":{}}}],["correctly",{"_index":685,"title":{},"body":{"index.html":{}}}],["count",{"_index":591,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["counter",{"_index":597,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["coverage",{"_index":622,"title":{"coverage.html":{}},"body":{"coverage.html":{}}}],["current_used_parameters",{"_index":947,"title":{},"body":{"miscellaneous/variables.html":{}}}],["d",{"_index":294,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["damages",{"_index":831,"title":{},"body":{"index.html":{},"license.html":{}}}],["dashboard",{"_index":372,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dashboard'},{'name",{"_index":75,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["dashboard.component.css",{"_index":374,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dashboard.component.html",{"_index":376,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dashboard/dashboard.component",{"_index":131,"title":{},"body":{"modules/AppModule.html":{}}}],["dashboardcomponent",{"_index":74,"title":{"components/DashboardComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["data",{"_index":892,"title":{},"body":{"miscellaneous/variables.html":{}}}],["dataview",{"_index":264,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["deal",{"_index":790,"title":{},"body":{"index.html":{},"license.html":{}}}],["dealings",{"_index":840,"title":{},"body":{"index.html":{},"license.html":{}}}],["decimal",{"_index":618,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["declarations",{"_index":96,"title":{},"body":{"modules/AppModule.html":{}}}],["decoder",{"_index":263,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["decoder(value",{"_index":323,"title":{},"body":{"injectables/BleService.html":{}}}],["decorators",{"_index":509,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["default",{"_index":232,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"components/StepCounterComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/variables.html":{}}}],["defined",{"_index":145,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["demo",{"_index":379,"title":{},"body":{"components/DashboardComponent.html":{}}}],["dependencies",{"_index":87,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"dependencies.html":{},"overview.html":{}}}],["deps",{"_index":49,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/variables.html":{}}}],["details",{"_index":353,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["determinate",{"_index":238,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["dev.to",{"_index":764,"title":{},"body":{"index.html":{}}}],["developer",{"_index":722,"title":{},"body":{"index.html":{}}}],["device",{"_index":212,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["device.gatt",{"_index":443,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["device.name",{"_index":384,"title":{},"body":{"components/DashboardComponent.html":{}}}],["device_id",{"_index":943,"title":{},"body":{"miscellaneous/variables.html":{}}}],["device_information",{"_index":865,"title":{},"body":{"miscellaneous/variables.html":{}}}],["devicesubscription",{"_index":198,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["direction",{"_index":167,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["directions_walk",{"_index":577,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["directive",{"_index":66,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["directives",{"_index":82,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["disconnect",{"_index":204,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["disconnect_request",{"_index":951,"title":{},"body":{"miscellaneous/variables.html":{}}}],["disconnectdevice",{"_index":309,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["disconnected",{"_index":283,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["discover",{"_index":728,"title":{},"body":{"index.html":{}}}],["discovery",{"_index":730,"title":{},"body":{"index.html":{}}}],["display",{"_index":163,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["distribute",{"_index":799,"title":{},"body":{"index.html":{},"license.html":{}}}],["documentation",{"_index":623,"title":{},"body":{"coverage.html":{},"index.html":{},"license.html":{}}}],["dom",{"_index":55,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["dynamic",{"_index":657,"title":{},"body":{"dependencies.html":{}}}],["e2e/src/app.po.ts",{"_index":141,"title":{},"body":{"classes/AppPage.html":{},"coverage.html":{}}}],["e2e/src/app.po.ts:4",{"_index":149,"title":{},"body":{"classes/AppPage.html":{}}}],["e2e/src/app.po.ts:8",{"_index":146,"title":{},"body":{"classes/AppPage.html":{}}}],["each",{"_index":260,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["easiest",{"_index":693,"title":{},"body":{"index.html":{}}}],["ef680200",{"_index":521,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["ef680201",{"_index":616,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["ef680203",{"_index":526,"title":{},"body":{"components/HumidityComponent.html":{}}}],["ef680400",{"_index":595,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["ef680405",{"_index":596,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["element",{"_index":65,"title":{},"body":{"components/AppComponent.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["element(by.css('app",{"_index":152,"title":{},"body":{"classes/AppPage.html":{}}}],["elementref",{"_index":508,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["elsewhere",{"_index":721,"title":{},"body":{"index.html":{}}}],["emites",{"_index":725,"title":{},"body":{"index.html":{}}}],["emitted",{"_index":703,"title":{},"body":{"index.html":{}}}],["enable",{"_index":687,"title":{},"body":{"index.html":{}}}],["enabletracing",{"_index":12,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["environment",{"_index":645,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["err",{"_index":291,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["error",{"_index":225,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["error('your",{"_index":347,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["error(...args",{"_index":357,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["error(args",{"_index":366,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["event",{"_index":435,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{},"license.html":{}}}],["eventlistener",{"_index":425,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["example",{"_index":697,"title":{},"body":{"index.html":{}}}],["export",{"_index":30,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["express",{"_index":818,"title":{},"body":{"index.html":{},"license.html":{}}}],["f000180a",{"_index":866,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000180f",{"_index":889,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a19",{"_index":890,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a23",{"_index":872,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a24",{"_index":874,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a25",{"_index":876,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a26",{"_index":878,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a27",{"_index":880,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a28",{"_index":882,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a29",{"_index":884,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a2a",{"_index":886,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f0002a50",{"_index":888,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa00",{"_index":891,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa01",{"_index":893,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa02",{"_index":895,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa03",{"_index":897,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa10",{"_index":910,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa11",{"_index":911,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa12",{"_index":912,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa13",{"_index":913,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa20",{"_index":898,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa21",{"_index":899,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa22",{"_index":900,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa23",{"_index":901,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa30",{"_index":915,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa31",{"_index":916,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa32",{"_index":917,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa33",{"_index":918,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa40",{"_index":903,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa41",{"_index":904,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa42",{"_index":905,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa44",{"_index":906,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa50",{"_index":920,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa51",{"_index":921,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa52",{"_index":922,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa53",{"_index":923,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa64",{"_index":964,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa65",{"_index":965,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa66",{"_index":966,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa70",{"_index":930,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa71",{"_index":931,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa72",{"_index":932,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa73",{"_index":933,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa80",{"_index":925,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa81",{"_index":926,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa82",{"_index":927,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000aa83",{"_index":928,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac00",{"_index":939,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac01",{"_index":940,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac02",{"_index":942,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ac03",{"_index":944,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc0",{"_index":946,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc1",{"_index":948,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc2",{"_index":950,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ccc3",{"_index":952,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc0",{"_index":954,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc1",{"_index":956,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc2",{"_index":958,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc3",{"_index":960,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffc4",{"_index":962,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffe0",{"_index":935,"title":{},"body":{"miscellaneous/variables.html":{}}}],["f000ffe1",{"_index":937,"title":{},"body":{"miscellaneous/variables.html":{}}}],["fakebluetoothdevice",{"_index":409,"title":{"classes/FakeBluetoothDevice.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["fakebluetoothremotegattcharacteristic",{"_index":456,"title":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["fakebluetoothremotegattserver",{"_index":440,"title":{"classes/FakeBluetoothRemoteGATTServer.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["fakebluetoothremotegattservice",{"_index":450,"title":{"classes/FakeBluetoothRemoteGATTService.html":{}},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"coverage.html":{}}}],["false",{"_index":441,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["few",{"_index":769,"title":{},"body":{"index.html":{}}}],["ff0000",{"_index":548,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["ffffff",{"_index":537,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["file",{"_index":5,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["files",{"_index":789,"title":{},"body":{"index.html":{},"license.html":{}}}],["fillstyle",{"_index":536,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["firmware_rev",{"_index":877,"title":{},"body":{"miscellaneous/variables.html":{}}}],["fitness",{"_index":823,"title":{},"body":{"index.html":{},"license.html":{}}}],["flex",{"_index":164,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["following",{"_index":757,"title":{},"body":{"index.html":{},"license.html":{}}}],["font",{"_index":172,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["fontsize",{"_index":543,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["forroot",{"_index":620,"title":{},"body":{"modules/WebBluetoothModule.html":{}}}],["forroot(options",{"_index":43,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["found",{"_index":750,"title":{},"body":{"index.html":{}}}],["free",{"_index":723,"title":{},"body":{"index.html":{},"license.html":{}}}],["full",{"_index":762,"title":{},"body":{"index.html":{}}}],["function",{"_index":31,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["functions",{"_index":675,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["furnished",{"_index":806,"title":{},"body":{"index.html":{},"license.html":{}}}],["gatt",{"_index":411,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["gatt_characteristic_battery_level",{"_index":713,"title":{},"body":{"index.html":{}}}],["gatt_primary_service",{"_index":714,"title":{},"body":{"index.html":{}}}],["gattserverdisconnected",{"_index":421,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getcharacteristic",{"_index":487,"title":{},"body":{"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getcharacteristic(characteristic",{"_index":453,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getdevice",{"_index":246,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["getdevicestatus",{"_index":205,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["getprimaryservice",{"_index":479,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{}}}],["getprimaryservice(service",{"_index":446,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["getting",{"_index":677,"title":{"index.html":{},"license.html":{}},"body":{"index.html":{}}}],["gettitletext",{"_index":143,"title":{},"body":{"classes/AppPage.html":{}}}],["given",{"_index":704,"title":{},"body":{"index.html":{}}}],["granted",{"_index":782,"title":{},"body":{"index.html":{},"license.html":{}}}],["graph",{"_index":843,"title":{},"body":{"modules.html":{}}}],["grid",{"_index":399,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["gyroscope",{"_index":919,"title":{},"body":{"miscellaneous/variables.html":{}}}],["hardware_rev",{"_index":879,"title":{},"body":{"miscellaneous/variables.html":{}}}],["haserror",{"_index":206,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["haserror(error",{"_index":222,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["height",{"_index":576,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["help",{"_index":772,"title":{},"body":{"index.html":{}}}],["here",{"_index":695,"title":{},"body":{"index.html":{}}}],["hereby",{"_index":781,"title":{},"body":{"index.html":{},"license.html":{}}}],["holders",{"_index":828,"title":{},"body":{"index.html":{},"license.html":{}}}],["host",{"_index":162,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["html",{"_index":64,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["http://caniuse.com/#search=bluetooth",{"_index":351,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["https://manekinekko.github.io/angular",{"_index":751,"title":{},"body":{"index.html":{}}}],["humidity",{"_index":385,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"miscellaneous/variables.html":{}}}],["humidity'},{'name",{"_index":77,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["humiditycomponent",{"_index":76,"title":{"components/HumidityComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["icon",{"_index":189,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["id",{"_index":412,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["identifier",{"_index":624,"title":{},"body":{"coverage.html":{}}}],["ieee11073",{"_index":885,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_block_request",{"_index":957,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_count",{"_index":959,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_notify",{"_index":955,"title":{},"body":{"miscellaneous/variables.html":{}}}],["image_status",{"_index":961,"title":{},"body":{"miscellaneous/variables.html":{}}}],["img",{"_index":407,"title":{},"body":{"components/DashboardComponent.html":{}}}],["implements",{"_index":158,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["implied",{"_index":819,"title":{},"body":{"index.html":{},"license.html":{}}}],["import",{"_index":16,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["imports",{"_index":39,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["included",{"_index":812,"title":{},"body":{"index.html":{},"license.html":{}}}],["including",{"_index":793,"title":{},"body":{"index.html":{},"license.html":{}}}],["indeterminate",{"_index":280,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["index",{"_index":9,"title":{"index.html":{}},"body":{"interfaces/AWBOptions.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["info",{"_index":3,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["initchart",{"_index":497,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["initialvalue",{"_index":459,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["injectable",{"_index":303,"title":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{}},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"coverage.html":{},"index.html":{}}}],["injectables",{"_index":304,"title":{},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"overview.html":{}}}],["injectiontoken",{"_index":19,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["injectiontoken('awboptions",{"_index":38,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["install",{"_index":680,"title":{},"body":{"index.html":{}}}],["installed",{"_index":684,"title":{},"body":{"index.html":{}}}],["instance",{"_index":259,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["integer",{"_index":617,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["interface",{"_index":0,"title":{"interfaces/AWBOptions.html":{},"interfaces/Logger.html":{}},"body":{"interfaces/AWBOptions.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["interfaces",{"_index":2,"title":{},"body":{"interfaces/AWBOptions.html":{},"interfaces/Logger.html":{},"overview.html":{}}}],["interpolation",{"_index":534,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["io",{"_index":963,"title":{},"body":{"miscellaneous/variables.html":{}}}],["issues",{"_index":771,"title":{},"body":{"index.html":{}}}],["it/conventional",{"_index":660,"title":{},"body":{"dependencies.html":{}}}],["jest",{"_index":668,"title":{},"body":{"dependencies.html":{}}}],["justify",{"_index":165,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["key",{"_index":324,"title":{},"body":{"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["keypress",{"_index":934,"title":{},"body":{"miscellaneous/variables.html":{}}}],["kind",{"_index":817,"title":{},"body":{"index.html":{},"license.html":{}}}],["l",{"_index":253,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["labels",{"_index":541,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["layoutmodule",{"_index":98,"title":{},"body":{"modules/AppModule.html":{}}}],["left",{"_index":187,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["legend",{"_index":63,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["length",{"_index":531,"title":{},"body":{"components/HumidityComponent.html":{}}}],["level",{"_index":161,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["level'},{'name",{"_index":73,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["level.component",{"_index":130,"title":{},"body":{"modules/AppModule.html":{}}}],["level.component.ts",{"_index":157,"title":{},"body":{"components/BatteryLevelComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["level.component.ts:115",{"_index":228,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:123",{"_index":231,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:129",{"_index":219,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:135",{"_index":224,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:139",{"_index":226,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:66",{"_index":244,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:67",{"_index":239,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:68",{"_index":234,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:69",{"_index":245,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:70",{"_index":242,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:71",{"_index":237,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:73",{"_index":247,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:75",{"_index":217,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:78",{"_index":240,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:79",{"_index":241,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:80",{"_index":235,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:89",{"_index":227,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["level.component.ts:99",{"_index":221,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["liability",{"_index":832,"title":{},"body":{"index.html":{},"license.html":{}}}],["liable",{"_index":829,"title":{},"body":{"index.html":{},"license.html":{}}}],["license",{"_index":773,"title":{"license.html":{}},"body":{"index.html":{},"license.html":{}}}],["light",{"_index":929,"title":{},"body":{"miscellaneous/variables.html":{}}}],["limitation",{"_index":794,"title":{},"body":{"index.html":{},"license.html":{}}}],["limited",{"_index":820,"title":{},"body":{"index.html":{},"license.html":{}}}],["line",{"_index":327,"title":{},"body":{"injectables/BleService.html":{},"components/HumidityComponent.html":{}}}],["linewidth",{"_index":547,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["list",{"_index":111,"title":{},"body":{"modules/AppModule.html":{}}}],["listener",{"_index":424,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["listener(mockedevent",{"_index":434,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["listeners",{"_index":413,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["literal",{"_index":481,"title":{},"body":{"classes/FakeBluetoothRemoteGATTServer.html":{},"components/StepCounterComponent.html":{},"miscellaneous/typealiases.html":{}}}],["log",{"_index":356,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["log(...args",{"_index":360,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["log(args",{"_index":365,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["logger",{"_index":364,"title":{"interfaces/Logger.html":{}},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"coverage.html":{}}}],["logger.service",{"_index":29,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["logic",{"_index":717,"title":{},"body":{"index.html":{}}}],["logs",{"_index":688,"title":{},"body":{"index.html":{}}}],["magnetometer",{"_index":914,"title":{},"body":{"miscellaneous/variables.html":{}}}],["make",{"_index":256,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["makemetokeninjector",{"_index":37,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["manekinekko/angular",{"_index":126,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["manifacturer",{"_index":883,"title":{},"body":{"miscellaneous/variables.html":{}}}],["map",{"_index":321,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["map((value",{"_index":705,"title":{},"body":{"index.html":{}}}],["map(this._config.decoder",{"_index":333,"title":{},"body":{"injectables/BleService.html":{}}}],["margin",{"_index":392,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["mat",{"_index":184,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["matbuttonmodule",{"_index":100,"title":{},"body":{"modules/AppModule.html":{}}}],["matcardmodule",{"_index":105,"title":{},"body":{"modules/AppModule.html":{}}}],["matching",{"_index":51,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["matexpansionmodule",{"_index":107,"title":{},"body":{"modules/AppModule.html":{}}}],["matgridlistmodule",{"_index":109,"title":{},"body":{"modules/AppModule.html":{}}}],["maticonmodule",{"_index":112,"title":{},"body":{"modules/AppModule.html":{}}}],["matlistmodule",{"_index":114,"title":{},"body":{"modules/AppModule.html":{}}}],["matmenumodule",{"_index":116,"title":{},"body":{"modules/AppModule.html":{}}}],["matprogressspinnermodule",{"_index":118,"title":{},"body":{"modules/AppModule.html":{}}}],["matsnackbar",{"_index":216,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["matsnackbarmodule",{"_index":121,"title":{},"body":{"modules/AppModule.html":{}}}],["mattoolbarmodule",{"_index":124,"title":{},"body":{"modules/AppModule.html":{}}}],["max",{"_index":390,"title":{},"body":{"components/DashboardComponent.html":{},"components/HumidityComponent.html":{}}}],["merchantability",{"_index":822,"title":{},"body":{"index.html":{},"license.html":{}}}],["merge",{"_index":797,"title":{},"body":{"index.html":{},"license.html":{}}}],["mergemap",{"_index":712,"title":{},"body":{"index.html":{}}}],["mergemap((characteristic",{"_index":745,"title":{},"body":{"index.html":{}}}],["mergemap((gatt",{"_index":736,"title":{},"body":{"index.html":{}}}],["mergemap((primaryservice",{"_index":739,"title":{},"body":{"index.html":{}}}],["metadata",{"_index":58,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["method",{"_index":701,"title":{},"body":{"index.html":{}}}],["methods",{"_index":142,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["miscellaneous",{"_index":674,"title":{"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["missing",{"_index":679,"title":{},"body":{"index.html":{}}}],["mit",{"_index":774,"title":{},"body":{"index.html":{},"license.html":{}}}],["mocked",{"_index":567,"title":{},"body":{"injectables/ServerWebBluetooth.html":{}}}],["mockedevent",{"_index":430,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["mode",{"_index":199,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["model",{"_index":907,"title":{},"body":{"miscellaneous/variables.html":{}}}],["model_number",{"_index":873,"title":{},"body":{"miscellaneous/variables.html":{}}}],["modify",{"_index":796,"title":{},"body":{"index.html":{},"license.html":{}}}],["module",{"_index":84,"title":{"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{}},"body":{"index.html":{}}}],["modules",{"_index":86,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"modules.html":{},"overview.html":{}}}],["modulewithproviders",{"_index":18,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["more",{"_index":352,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{},"components/DashboardComponent.html":{}}}],["more_vert",{"_index":380,"title":{},"body":{"components/DashboardComponent.html":{}}}],["movement",{"_index":924,"title":{},"body":{"miscellaneous/variables.html":{}}}],["name",{"_index":69,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["navigateto",{"_index":144,"title":{},"body":{"classes/AppPage.html":{}}}],["navigator.bluetooth",{"_index":345,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["need",{"_index":752,"title":{},"body":{"index.html":{}}}],["new",{"_index":33,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BrowserWebBluetooth.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["next",{"_index":288,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["ngmodule",{"_index":17,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["ngondestroy",{"_index":207,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["ngoninit",{"_index":208,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["node_modules",{"_index":686,"title":{},"body":{"index.html":{}}}],["nologgerservice",{"_index":28,"title":{"injectables/NoLoggerService.html":{}},"body":{"interfaces/AWBOptions.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{}}}],["noninfringement",{"_index":826,"title":{},"body":{"index.html":{},"license.html":{}}}],["note",{"_index":683,"title":{},"body":{"index.html":{}}}],["notice",{"_index":810,"title":{},"body":{"index.html":{},"license.html":{}}}],["notifications",{"_index":708,"title":{},"body":{"index.html":{}}}],["now",{"_index":569,"title":{},"body":{"injectables/ServerWebBluetooth.html":{}}}],["npm",{"_index":681,"title":{},"body":{"index.html":{}}}],["null",{"_index":243,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["number",{"_index":230,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["oad",{"_index":953,"title":{},"body":{"miscellaneous/variables.html":{}}}],["object",{"_index":568,"title":{},"body":{"injectables/ServerWebBluetooth.html":{},"miscellaneous/variables.html":{}}}],["object.keys(titag).map(key",{"_index":863,"title":{},"body":{"miscellaneous/variables.html":{}}}],["obtaining",{"_index":785,"title":{},"body":{"index.html":{},"license.html":{}}}],["of(this.haserror.bind(this",{"_index":552,"title":{},"body":{"components/HumidityComponent.html":{}}}],["ondestroy",{"_index":160,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["oninit",{"_index":159,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["open",{"_index":770,"title":{},"body":{"index.html":{}}}],["optional",{"_index":11,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["optionalservices",{"_index":733,"title":{},"body":{"index.html":{}}}],["options",{"_index":35,"title":{},"body":{"interfaces/AWBOptions.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["options.enabletracing",{"_index":36,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["otherwise",{"_index":837,"title":{},"body":{"index.html":{},"license.html":{}}}],["out",{"_index":94,"title":{},"body":{"modules/AppModule.html":{},"index.html":{},"license.html":{},"overview.html":{}}}],["overview",{"_index":845,"title":{"overview.html":{}},"body":{"overview.html":{}}}],["package",{"_index":649,"title":{"dependencies.html":{},"properties.html":{}},"body":{"index.html":{}}}],["padding",{"_index":388,"title":{},"body":{"components/DashboardComponent.html":{}}}],["parameters",{"_index":218,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/functions.html":{}}}],["particular",{"_index":824,"title":{},"body":{"index.html":{},"license.html":{}}}],["period",{"_index":896,"title":{},"body":{"miscellaneous/variables.html":{}}}],["permission",{"_index":780,"title":{},"body":{"index.html":{},"license.html":{}}}],["permit",{"_index":804,"title":{},"body":{"index.html":{},"license.html":{}}}],["person",{"_index":784,"title":{},"body":{"index.html":{},"license.html":{}}}],["persons",{"_index":805,"title":{},"body":{"index.html":{},"license.html":{}}}],["pipe",{"_index":337,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["platform/browser",{"_index":26,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["pnp_id",{"_index":887,"title":{},"body":{"miscellaneous/variables.html":{}}}],["portions",{"_index":814,"title":{},"body":{"index.html":{},"license.html":{}}}],["position",{"_index":175,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["post",{"_index":760,"title":{},"body":{"index.html":{}}}],["pr",{"_index":766,"title":{},"body":{"index.html":{}}}],["primary",{"_index":233,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["private",{"_index":306,"title":{},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["process",{"_index":731,"title":{},"body":{"index.html":{}}}],["production",{"_index":862,"title":{},"body":{"miscellaneous/variables.html":{}}}],["progress",{"_index":185,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["project",{"_index":754,"title":{},"body":{"index.html":{}}}],["projects/.../bluetooth.module.ts",{"_index":676,"title":{},"body":{"miscellaneous/functions.html":{}}}],["projects/.../bluetooth.service.ts",{"_index":852,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../ti",{"_index":861,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/manekinekko/angular",{"_index":6,"title":{},"body":{"interfaces/AWBOptions.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["promise",{"_index":148,"title":{},"body":{"classes/AppPage.html":{},"injectables/BrowserWebBluetooth.html":{}}}],["promise.resolve(this",{"_index":445,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["promise.resolve(this.characteristics[characteristic",{"_index":455,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["promise.resolve(this.services[service].service",{"_index":448,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["promise.resolve(this.value",{"_index":465,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["properties",{"_index":10,"title":{"properties.html":{}},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"properties.html":{}}}],["protractor",{"_index":150,"title":{},"body":{"classes/AppPage.html":{}}}],["provide",{"_index":45,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["provided",{"_index":815,"title":{},"body":{"index.html":{},"license.html":{}}}],["providedin",{"_index":325,"title":{},"body":{"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"index.html":{}}}],["providers",{"_index":44,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["public",{"_index":196,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["publish",{"_index":798,"title":{},"body":{"index.html":{},"license.html":{}}}],["purpose",{"_index":825,"title":{},"body":{"index.html":{},"license.html":{}}}],["read",{"_index":727,"title":{},"body":{"index.html":{}}}],["readonly",{"_index":458,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"index.html":{}}}],["readvalue",{"_index":464,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["readvalueoptions",{"_index":851,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["release",{"_index":659,"title":{},"body":{"dependencies.html":{}}}],["request_new_parameters",{"_index":949,"title":{},"body":{"miscellaneous/variables.html":{}}}],["requestdevice",{"_index":340,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["requestdevice(options",{"_index":342,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["requestdeviceoptions",{"_index":343,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["requested",{"_index":726,"title":{},"body":{"index.html":{}}}],["requestvalue",{"_index":209,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["reset",{"_index":93,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["restriction",{"_index":792,"title":{},"body":{"index.html":{},"license.html":{}}}],["results",{"_index":50,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"properties.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["return",{"_index":32,"title":{},"body":{"interfaces/AWBOptions.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["returns",{"_index":147,"title":{},"body":{"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["rgba(119,119,119,0.18",{"_index":539,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["rgba(255,161,161,0.30",{"_index":549,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["right",{"_index":404,"title":{},"body":{"components/DashboardComponent.html":{},"index.html":{}}}],["rights",{"_index":795,"title":{},"body":{"index.html":{},"license.html":{}}}],["root",{"_index":61,"title":{},"body":{"components/AppComponent.html":{},"classes/AppPage.html":{},"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"index.html":{}}}],["root'},{'name",{"_index":70,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["row",{"_index":168,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["run",{"_index":756,"title":{},"body":{"index.html":{}}}],["rxjs",{"_index":248,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":322,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["s",{"_index":682,"title":{},"body":{"index.html":{}}}],["section",{"_index":387,"title":{},"body":{"components/DashboardComponent.html":{}}}],["see",{"_index":350,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["selector",{"_index":59,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["sell",{"_index":802,"title":{},"body":{"index.html":{},"license.html":{}}}],["sensortag2.ts",{"_index":633,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["serial_number",{"_index":875,"title":{},"body":{"miscellaneous/variables.html":{}}}],["series",{"_index":496,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["serverwebbluetooth",{"_index":564,"title":{"injectables/ServerWebBluetooth.html":{}},"body":{"injectables/ServerWebBluetooth.html":{},"coverage.html":{}}}],["serves",{"_index":755,"title":{},"body":{"index.html":{}}}],["service",{"_index":200,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["service.config",{"_index":262,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["service/component",{"_index":692,"title":{},"body":{"index.html":{}}}],["serviceoptions",{"_index":314,"title":{},"body":{"injectables/BleService.html":{},"miscellaneous/typealiases.html":{}}}],["services",{"_index":442,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["shall",{"_index":811,"title":{},"body":{"index.html":{},"license.html":{}}}],["singleton",{"_index":258,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["size",{"_index":173,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["smart",{"_index":349,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["smoothie",{"_index":520,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"dependencies.html":{}}}],["smoothiechart",{"_index":506,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["snackbar",{"_index":201,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["software",{"_index":787,"title":{},"body":{"index.html":{},"license.html":{}}}],["software_rev",{"_index":881,"title":{},"body":{"miscellaneous/variables.html":{}}}],["source",{"_index":4,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/AppComponent.html":{},"modules/AppModule.html":{},"classes/AppPage.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{}}}],["span",{"_index":171,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{}}}],["span')).gettext",{"_index":154,"title":{},"body":{"classes/AppPage.html":{}}}],["specific",{"_index":718,"title":{},"body":{"index.html":{}}}],["spinner",{"_index":120,"title":{},"body":{"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{}}}],["src/.../battery",{"_index":855,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../ble.service.ts",{"_index":853,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["src/.../environment.prod.ts",{"_index":859,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../environment.ts",{"_index":860,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../humidity.component.ts",{"_index":856,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../stepcounter.component.ts",{"_index":857,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/.../temperature.component.ts",{"_index":858,"title":{},"body":{"miscellaneous/variables.html":{}}}],["src/app/app.component.ts",{"_index":57,"title":{},"body":{"components/AppComponent.html":{},"coverage.html":{}}}],["src/app/app.module.ts",{"_index":95,"title":{},"body":{"modules/AppModule.html":{}}}],["src/app/ble.service.ts",{"_index":305,"title":{},"body":{"injectables/BleService.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["src/app/ble.service.ts:17",{"_index":312,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:19",{"_index":320,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:21",{"_index":315,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:25",{"_index":317,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:29",{"_index":318,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:35",{"_index":319,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/ble.service.ts:46",{"_index":316,"title":{},"body":{"injectables/BleService.html":{}}}],["src/app/dashboard/dashboard.component.ts",{"_index":371,"title":{},"body":{"components/DashboardComponent.html":{},"coverage.html":{}}}],["src/app/dashboard/dashboard.component.ts:8",{"_index":377,"title":{},"body":{"components/DashboardComponent.html":{}}}],["src/app/thingy52/battery",{"_index":156,"title":{},"body":{"components/BatteryLevelComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/humidity.component.ts",{"_index":491,"title":{},"body":{"components/HumidityComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/humidity.component.ts:104",{"_index":500,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:108",{"_index":502,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:38",{"_index":513,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:39",{"_index":507,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:40",{"_index":517,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:41",{"_index":516,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:44",{"_index":511,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:46",{"_index":518,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:48",{"_index":498,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:51",{"_index":514,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:52",{"_index":515,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:61",{"_index":503,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:71",{"_index":501,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:81",{"_index":504,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:90",{"_index":505,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/humidity.component.ts:97",{"_index":499,"title":{},"body":{"components/HumidityComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts",{"_index":570,"title":{},"body":{"components/StepCounterComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/stepcounter.component.ts:101",{"_index":581,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:49",{"_index":589,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:50",{"_index":587,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:51",{"_index":588,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:53",{"_index":590,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:55",{"_index":578,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:58",{"_index":585,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:59",{"_index":586,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:74",{"_index":582,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:82",{"_index":583,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:87",{"_index":584,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:92",{"_index":579,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/stepcounter.component.ts:97",{"_index":580,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["src/app/thingy52/temperature.component.ts",{"_index":599,"title":{},"body":{"components/TemperatureComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/app/thingy52/temperature.component.ts:102",{"_index":607,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:108",{"_index":601,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:115",{"_index":602,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:119",{"_index":604,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:38",{"_index":610,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:39",{"_index":608,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:40",{"_index":614,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:41",{"_index":613,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:44",{"_index":609,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:46",{"_index":615,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:48",{"_index":600,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:51",{"_index":611,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:52",{"_index":612,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:66",{"_index":605,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:76",{"_index":603,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/app/thingy52/temperature.component.ts:97",{"_index":606,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["src/environments/environment.prod.ts",{"_index":644,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["src/environments/environment.ts",{"_index":646,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["startblog",{"_index":759,"title":{},"body":{"index.html":{}}}],["started",{"_index":678,"title":{"index.html":{},"license.html":{}},"body":{"index.html":{}}}],["starter",{"_index":753,"title":{},"body":{"index.html":{}}}],["state",{"_index":936,"title":{},"body":{"miscellaneous/variables.html":{}}}],["statements",{"_index":625,"title":{},"body":{"coverage.html":{}}}],["static",{"_index":42,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/HumidityComponent.html":{},"injectables/ServerWebBluetooth.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{}}}],["step",{"_index":535,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["stepcounter",{"_index":571,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["stepcounter'},{'name",{"_index":79,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["stepcountercomponent",{"_index":78,"title":{"components/StepCounterComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["stepper",{"_index":386,"title":{},"body":{"components/DashboardComponent.html":{}}}],["sticky",{"_index":396,"title":{},"body":{"components/DashboardComponent.html":{}}}],["stop",{"_index":706,"title":{},"body":{"index.html":{}}}],["stream",{"_index":310,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["streamsubscription",{"_index":202,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["string",{"_index":223,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["strokestyle",{"_index":538,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["styles",{"_index":155,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["styleurls",{"_index":373,"title":{},"body":{"components/DashboardComponent.html":{}}}],["subject",{"_index":807,"title":{},"body":{"index.html":{},"license.html":{}}}],["sublicense",{"_index":800,"title":{},"body":{"index.html":{},"license.html":{}}}],["subscribe",{"_index":287,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["subscribe((value",{"_index":272,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["subscribe(device",{"_index":276,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["subscribed",{"_index":707,"title":{},"body":{"index.html":{}}}],["subscription",{"_index":236,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["substantial",{"_index":813,"title":{},"body":{"index.html":{},"license.html":{}}}],["sup",{"_index":182,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["support",{"_index":348,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{},"modules.html":{}}}],["sure",{"_index":257,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["svg",{"_index":841,"title":{},"body":{"modules.html":{}}}],["system_id",{"_index":871,"title":{},"body":{"miscellaneous/variables.html":{}}}],["table",{"_index":648,"title":{},"body":{"coverage.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":647,"title":{},"body":{"coverage.html":{}}}],["target",{"_index":431,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["temperature",{"_index":81,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"miscellaneous/variables.html":{}}}],["temperaturecomponent",{"_index":80,"title":{"components/TemperatureComponent.html":{}},"body":{"components/AppComponent.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"coverage.html":{},"overview.html":{}}}],["template",{"_index":62,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["templateurl",{"_index":375,"title":{},"body":{"components/DashboardComponent.html":{}}}],["text",{"_index":169,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["thingy52/battery",{"_index":129,"title":{},"body":{"modules/AppModule.html":{}}}],["thingy52/humidity.component",{"_index":132,"title":{},"body":{"modules/AppModule.html":{}}}],["thingy52/stepcounter.component",{"_index":133,"title":{},"body":{"modules/AppModule.html":{}}}],["thingy52/temperature.component",{"_index":134,"title":{},"body":{"modules/AppModule.html":{}}}],["this._config",{"_index":330,"title":{},"body":{"injectables/BleService.html":{}}}],["this._config.characteristic",{"_index":336,"title":{},"body":{"injectables/BleService.html":{}}}],["this._config.service",{"_index":335,"title":{},"body":{"injectables/BleService.html":{}}}],["this.ble",{"_index":334,"title":{},"body":{"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"index.html":{}}}],["this.ble.disconnectdevice",{"_index":338,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["this.ble.getcharacteristic$(primaryservice",{"_index":741,"title":{},"body":{"index.html":{}}}],["this.ble.getdevice",{"_index":331,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["this.ble.getprimaryservice$(gatt",{"_index":737,"title":{},"body":{"index.html":{}}}],["this.ble.readvalue$(characteristic",{"_index":747,"title":{},"body":{"index.html":{}}}],["this.ble.requestdevice(options",{"_index":354,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["this.ble.streamvalues$().pipe",{"_index":332,"title":{},"body":{"injectables/BleService.html":{},"index.html":{}}}],["this.ble.streamvalues$().pipe(map((value",{"_index":715,"title":{},"body":{"index.html":{}}}],["this.characteristics.service",{"_index":452,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.chart",{"_index":532,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.addtimeseries(this.series",{"_index":546,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.start",{"_index":555,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.stop",{"_index":551,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chart.streamto(canvas",{"_index":550,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.chartref.nativeelement",{"_index":530,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.color",{"_index":277,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.connected",{"_index":444,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.console.log('reading",{"_index":293,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.device.disconnect",{"_index":449,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.devicesubscription",{"_index":275,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.devicesubscription.unsubscribe",{"_index":296,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.devicesubscription?.unsubscribe",{"_index":301,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.getdevicestatus",{"_index":269,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.haserror(err",{"_index":292,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.haserror(error",{"_index":274,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.haserror.bind(this",{"_index":284,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.id",{"_index":436,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.initchart",{"_index":527,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.initialvalue",{"_index":463,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners",{"_index":439,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners.characteristicvaluechanged.foreach(listener",{"_index":467,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners.gattserverdisconnected.foreach(listener",{"_index":433,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.listeners[type",{"_index":429,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.mode",{"_index":279,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.name",{"_index":438,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.properties",{"_index":462,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["this.series",{"_index":528,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.series.append(date.now",{"_index":554,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.series.clear",{"_index":556,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.disconnectdevice",{"_index":295,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.getdevice",{"_index":261,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.stream",{"_index":271,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.service.value",{"_index":286,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.snackbar.open(error",{"_index":298,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.streamsubscription",{"_index":270,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.streamsubscription.unsubscribe",{"_index":557,"title":{},"body":{"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.streamsubscription?.unsubscribe",{"_index":302,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.updatevalue(val",{"_index":290,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.updatevalue(value",{"_index":273,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["this.value",{"_index":281,"title":{},"body":{"components/BatteryLevelComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/StepCounterComponent.html":{}}}],["this.valuessubscription",{"_index":285,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.valuessubscription.unsubscribe",{"_index":297,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["this.valuessubscription?.unsubscribe",{"_index":300,"title":{},"body":{"components/BatteryLevelComponent.html":{}}}],["throw",{"_index":346,"title":{},"body":{"injectables/BrowserWebBluetooth.html":{}}}],["ti_sensorag_services",{"_index":634,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["time",{"_index":593,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["timeseries",{"_index":512,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["titag",{"_index":635,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["titag[key].service",{"_index":864,"title":{},"body":{"miscellaneous/variables.html":{}}}],["toolbar.mat",{"_index":395,"title":{},"body":{"components/DashboardComponent.html":{}}}],["tooltip",{"_index":545,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["top",{"_index":177,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["tort",{"_index":836,"title":{},"body":{"index.html":{},"license.html":{}}}],["tree",{"_index":56,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["trigger",{"_index":729,"title":{},"body":{"index.html":{}}}],["true",{"_index":138,"title":{},"body":{"modules/AppModule.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["ts",{"_index":667,"title":{},"body":{"dependencies.html":{}}}],["tslib",{"_index":670,"title":{},"body":{"dependencies.html":{}}}],["tslint:disable",{"_index":326,"title":{},"body":{"injectables/BleService.html":{},"components/HumidityComponent.html":{}}}],["type",{"_index":14,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["typealiases",{"_index":849,"title":{"miscellaneous/typealiases.html":{}},"body":{}}],["types/web",{"_index":663,"title":{},"body":{"dependencies.html":{},"index.html":{}}}],["undefined",{"_index":437,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["unknown",{"_index":432,"title":{},"body":{"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{}}}],["updatevalue",{"_index":210,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["updatevalue(value",{"_index":229,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["use",{"_index":691,"title":{},"body":{"index.html":{},"license.html":{}}}],["usefactory",{"_index":46,"title":{},"body":{"interfaces/AWBOptions.html":{},"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"miscellaneous/variables.html":{}}}],["usevalue",{"_index":47,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/WebBluetoothModule.html":{}}}],["using",{"_index":698,"title":{},"body":{"index.html":{}}}],["val",{"_index":289,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["value",{"_index":192,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["value.count",{"_index":598,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["value.getint8(0",{"_index":265,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{},"index.html":{}}}],["value.getuint32(0",{"_index":592,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["value.getuint32(4",{"_index":594,"title":{},"body":{"components/StepCounterComponent.html":{}}}],["value.getuint8(0",{"_index":716,"title":{},"body":{"index.html":{}}}],["value.getuint8(1",{"_index":619,"title":{},"body":{"components/TemperatureComponent.html":{}}}],["values",{"_index":702,"title":{},"body":{"index.html":{}}}],["valuessubscription",{"_index":203,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["var",{"_index":67,"title":{},"body":{"components/AppComponent.html":{},"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/HumidityComponent.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["variable",{"_index":328,"title":{},"body":{"injectables/BleService.html":{},"coverage.html":{}}}],["variables",{"_index":854,"title":{"miscellaneous/variables.html":{}},"body":{"miscellaneous/variables.html":{}}}],["version",{"_index":847,"title":{},"body":{"properties.html":{}}}],["viewchild",{"_index":519,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["viewchild('chart",{"_index":510,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["void",{"_index":220,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/ConsoleLoggerService.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{}}}],["want",{"_index":724,"title":{},"body":{"index.html":{}}}],["warn",{"_index":278,"title":{},"body":{"components/BatteryLevelComponent.html":{},"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["warn(...args",{"_index":362,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["warn(args",{"_index":367,"title":{},"body":{"injectables/ConsoleLoggerService.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{}}}],["warranties",{"_index":821,"title":{},"body":{"index.html":{},"license.html":{}}}],["warranty",{"_index":816,"title":{},"body":{"index.html":{},"license.html":{}}}],["wassim",{"_index":778,"title":{},"body":{"index.html":{},"license.html":{}}}],["way",{"_index":694,"title":{},"body":{"index.html":{}}}],["web",{"_index":7,"title":{},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"components/BatteryLevelComponent.html":{},"injectables/BleService.html":{},"injectables/BrowserWebBluetooth.html":{},"injectables/ConsoleLoggerService.html":{},"components/DashboardComponent.html":{},"classes/FakeBluetoothDevice.html":{},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{},"classes/FakeBluetoothRemoteGATTServer.html":{},"classes/FakeBluetoothRemoteGATTService.html":{},"components/HumidityComponent.html":{},"interfaces/Logger.html":{},"injectables/NoLoggerService.html":{},"injectables/ServerWebBluetooth.html":{},"components/StepCounterComponent.html":{},"components/TemperatureComponent.html":{},"modules/WebBluetoothModule.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"index.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["webbluetoothmodule",{"_index":41,"title":{"modules/WebBluetoothModule.html":{}},"body":{"interfaces/AWBOptions.html":{},"modules/AppModule.html":{},"modules/WebBluetoothModule.html":{},"index.html":{},"modules.html":{},"overview.html":{}}}],["webbluetoothmodule.forroot",{"_index":137,"title":{},"body":{"modules/AppModule.html":{},"index.html":{}}}],["welcome",{"_index":768,"title":{},"body":{"index.html":{}}}],["whether",{"_index":833,"title":{},"body":{"index.html":{},"license.html":{}}}],["width",{"_index":179,"title":{},"body":{"components/BatteryLevelComponent.html":{},"components/DashboardComponent.html":{},"components/StepCounterComponent.html":{}}}],["window.smoothiechart",{"_index":533,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["window.timeseries",{"_index":529,"title":{},"body":{"components/HumidityComponent.html":{},"components/TemperatureComponent.html":{}}}],["without",{"_index":791,"title":{},"body":{"index.html":{},"license.html":{}}}],["yes",{"_index":470,"title":{},"body":{"classes/FakeBluetoothRemoteGATTCharacteristic.html":{}}}],["z",{"_index":397,"title":{},"body":{"components/DashboardComponent.html":{}}}],["zone.js",{"_index":672,"title":{},"body":{"dependencies.html":{}}}],["zoom",{"_index":92,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]}, + "store": {"interfaces/AWBOptions.html":{"url":"interfaces/AWBOptions.html","title":"interface - AWBOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n AWBOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n enableTracing\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n enableTracing\n \n \n \n \n \n \n \n \n enableTracing: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { NgModule, ModuleWithProviders, InjectionToken, Optional } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { BluetoothCore } from './bluetooth.service';\nimport { BrowserWebBluetooth } from './platform/browser';\n\nimport { ConsoleLoggerService, NoLoggerService } from './logger.service';\n\nexport interface AWBOptions {\n enableTracing?: boolean;\n}\n\nexport function browserWebBluetooth() {\n return new BrowserWebBluetooth();\n}\n\nexport function consoleLoggerServiceConfig(options: AWBOptions) {\n if (options && options.enableTracing) {\n return new ConsoleLoggerService();\n } else {\n return new NoLoggerService();\n }\n}\nexport function makeMeTokenInjector() {\n return new InjectionToken('AWBOptions');\n}\n\n@NgModule({\n imports: [CommonModule]\n})\nexport class WebBluetoothModule {\n static forRoot(options: AWBOptions = {}): ModuleWithProviders {\n return {\n ngModule: WebBluetoothModule,\n providers: [\n BluetoothCore,\n {\n provide: BrowserWebBluetooth,\n useFactory: browserWebBluetooth\n },\n {\n provide: makeMeTokenInjector,\n useValue: options\n },\n {\n provide: ConsoleLoggerService,\n useFactory: consoleLoggerServiceConfig,\n deps: [makeMeTokenInjector]\n }\n ]\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/AppComponent.html":{"url":"components/AppComponent.html","title":"component - AppComponent","body":"\n \n\n\n\n\n\n Components\n \n AppComponent\n\n\n\n \n Info\n \n \n Source\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/app.component.ts\n\n\n\n\n\n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n selector\n ble-root\n \n\n\n\n \n template\n \n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n \n import { Component } from '@angular/core';\n\n@Component({\n selector: 'ble-root',\n template: `\n \n `\n})\nexport class AppComponent {}\n\n \n\n\n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'AppComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_bootstrap\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_AppModule_declarations\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nBatteryLevelComponent\n\nBatteryLevelComponent\n\nAppModule -->\n\nBatteryLevelComponent->AppModule\n\n\n\n\n\nDashboardComponent\n\nDashboardComponent\n\nAppModule -->\n\nDashboardComponent->AppModule\n\n\n\n\n\nHumidityComponent\n\nHumidityComponent\n\nAppModule -->\n\nHumidityComponent->AppModule\n\n\n\n\n\nStepCounterComponent\n\nStepCounterComponent\n\nAppModule -->\n\nStepCounterComponent->AppModule\n\n\n\n\n\nTemperatureComponent\n\nTemperatureComponent\n\nAppModule -->\n\nTemperatureComponent->AppModule\n\n\n\n\n\nAppComponent \n\nAppComponent \n\nAppComponent -->\n\nAppModule->AppComponent \n\n\n\n\n\nWebBluetoothModule\n\nWebBluetoothModule\n\nAppModule -->\n\nWebBluetoothModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n src/app/app.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n AppComponent\n \n \n BatteryLevelComponent\n \n \n DashboardComponent\n \n \n HumidityComponent\n \n \n StepCounterComponent\n \n \n TemperatureComponent\n \n \n \n \n Imports\n \n \n WebBluetoothModule\n \n \n \n \n Bootstrap\n \n \n AppComponent\n \n \n \n \n \n\n\n \n\n\n \n import { LayoutModule } from '@angular/cdk/layout';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatToolbarModule } from '@angular/material/toolbar';\n\nimport { WebBluetoothModule } from '@manekinekko/angular-web-bluetooth';\nimport { AppComponent } from './app.component';\nimport { BatteryLevelComponent } from './thingy52/battery-level.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { HumidityComponent } from './thingy52/humidity.component';\nimport { StepCounterComponent } from './thingy52/stepcounter.component';\nimport { TemperatureComponent } from './thingy52/temperature.component';\nimport { BrowserModule } from '@angular/platform-browser';\n\n@NgModule({\n declarations: [\n AppComponent,\n BatteryLevelComponent,\n TemperatureComponent,\n HumidityComponent,\n StepCounterComponent,\n DashboardComponent\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n WebBluetoothModule.forRoot({\n enableTracing: true\n }),\n LayoutModule,\n MatToolbarModule,\n MatButtonModule,\n MatIconModule,\n MatListModule,\n MatExpansionModule,\n MatSnackBarModule,\n MatProgressSpinnerModule,\n MatGridListModule,\n MatCardModule,\n MatMenuModule\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/AppPage.html":{"url":"classes/AppPage.html","title":"class - AppPage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n AppPage\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n e2e/src/app.po.ts\n \n\n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n getTitleText\n \n \n navigateTo\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getTitleText\n \n \n \n \n \n \ngetTitleText()\n \n \n\n\n \n \n Defined in e2e/src/app.po.ts:8\n \n \n\n\n \n \n\n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n navigateTo\n \n \n \n \n \n \nnavigateTo()\n \n \n\n\n \n \n Defined in e2e/src/app.po.ts:4\n \n \n\n\n \n \n\n \n Returns : Promise<>\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { browser, by, element } from 'protractor';\n\nexport class AppPage {\n navigateTo(): Promise {\n return browser.get(browser.baseUrl) as Promise;\n }\n\n getTitleText(): Promise {\n return element(by.css('app-root .content span')).getText() as Promise;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/BatteryLevelComponent.html":{"url":"components/BatteryLevelComponent.html","title":"component - BatteryLevelComponent","body":"\n \n\n\n\n\n\n Components\n \n BatteryLevelComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/battery-level.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-battery-level\n \n\n\n \n styles\n \n :host {\n display: flex;\n justify-content: center;\n flex-direction: row;\n text-align: center;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 222px;\n width: 120px;\n display: block;\n text-align: center;\n }\n sup {\n font-size: 24px;\n }\n mat-progress-spinner {\n top: 90px;\n left: 5px;\n }\n mat-icon {\n position: absolute;\n bottom: 255px;\n }\n \n \n\n \n template\n {{ value || \"000\" }}%\n\n\nbattery_charging_full\n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n color\n \n \n Public\n console\n \n \n deviceSubscription\n \n \n mode\n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n value\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n getDeviceStatus\n \n \n hasError\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar, console: ConsoleLoggerService)\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:75\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n console\n \n \n ConsoleLoggerService\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:129\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n getDeviceStatus\n \n \n \n \n \n \ngetDeviceStatus()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:99\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:135\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:139\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:89\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:115\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: number)\n \n \n\n\n \n \n Defined in src/app/thingy52/battery-level.component.ts:123\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n color\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'primary'\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:68\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n console\n \n \n \n \n \n \n Type : ConsoleLoggerService\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:80\n \n \n\n\n \n \n \n \n \n \n \n \n deviceSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:71\n \n \n\n\n \n \n \n \n \n \n \n \n mode\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'determinate'\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:67\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:78\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:79\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:70\n \n \n\n\n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \n Type : null\n\n \n \n \n \n Default value : null\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:66\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:69\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/battery-level.component.ts:73\n \n \n\n \n \n\n\n\n\n \n import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { Subscription } from 'rxjs';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n\n@Component({\n selector: 'ble-battery-level',\n template: `\n {{ value || \"000\" }}%\n \n \n battery_charging_full\n `,\n styles: [`\n :host {\n display: flex;\n justify-content: center;\n flex-direction: row;\n text-align: center;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 222px;\n width: 120px;\n display: block;\n text-align: center;\n }\n sup {\n font-size: 24px;\n }\n mat-progress-spinner {\n top: 90px;\n left: 5px;\n }\n mat-icon {\n position: absolute;\n bottom: 255px;\n }\n `],\n providers: PROVIDERS\n})\nexport class BatteryLevelComponent implements OnInit, OnDestroy {\n value = null;\n mode = 'determinate';\n color = 'primary';\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n deviceSubscription: Subscription;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar,\n public console: ConsoleLoggerService) {\n\n service.config({\n decoder: (value: DataView) => value.getInt8(0),\n service: 'battery_service',\n characteristic: 'battery_level'\n });\n }\n\n ngOnInit() {\n this.getDeviceStatus();\n\n this.streamSubscription = this.service.stream()\n .subscribe((value: number) => {\n this.updateValue(value);\n }, error => this.hasError(error));\n\n }\n\n getDeviceStatus() {\n this.deviceSubscription = this.service.getDevice()\n .subscribe(device => {\n if (device) {\n this.color = 'warn';\n this.mode = 'indeterminate';\n this.value = null;\n } else {\n // device not connected or disconnected\n this.value = null;\n this.mode = 'determinate';\n this.color = 'primary';\n }\n }, this.hasError.bind(this));\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe({\n next: (val: number) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n updateValue(value: number) {\n this.console.log('Reading battery level %d', value);\n this.value = value;\n this.mode = 'determinate';\n }\n\n disconnect() {\n this.service.disconnectDevice();\n this.deviceSubscription.unsubscribe();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription?.unsubscribe();\n this.deviceSubscription?.unsubscribe();\n this.streamSubscription?.unsubscribe();\n }\n}\n\n\n \n\n\n \n \n :host {\n display: flex;\n justify-content: center;\n flex-direction: row;\n text-align: center;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 222px;\n width: 120px;\n display: block;\n text-align: center;\n }\n sup {\n font-size: 24px;\n }\n mat-progress-spinner {\n top: 90px;\n left: 5px;\n }\n mat-icon {\n position: absolute;\n bottom: 255px;\n }\n \n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '{{ value || \"000\" }}%battery_charging_full'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'BatteryLevelComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/BleService.html":{"url":"injectables/BleService.html","title":"injectable - BleService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n BleService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n src/app/ble.service.ts\n \n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n _config\n \n \n Public\n ble\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n config\n \n \n disconnectDevice\n \n \n getDevice\n \n \n stream\n \n \n value\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ble: BluetoothCore)\n \n \n \n \n Defined in src/app/ble.service.ts:17\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n ble\n \n \n BluetoothCore\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n config\n \n \n \n \n \n \nconfig(options: ServiceOptions)\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:21\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n options\n \n ServiceOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n disconnectDevice\n \n \n \n \n \n \ndisconnectDevice()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:46\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n getDevice\n \n \n \n \n \n \ngetDevice()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:25\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n \n \n \n \n \n \n stream\n \n \n \n \n \n \nstream()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:29\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \nvalue()\n \n \n\n\n \n \n Defined in src/app/ble.service.ts:35\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n _config\n \n \n \n \n \n \n Type : ServiceOptions\n\n \n \n \n \n Defined in src/app/ble.service.ts:17\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n ble\n \n \n \n \n \n \n Type : BluetoothCore\n\n \n \n \n \n Defined in src/app/ble.service.ts:19\n \n \n\n\n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\nimport { BluetoothCore } from '@manekinekko/angular-web-bluetooth';\nimport { map } from 'rxjs/operators';\n\ntype ServiceOptions = {\n characteristic: string;\n service: string,\n decoder(value: DataView): number | {[key: string]: number}\n};\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BleService {\n\n // tslint:disable-next-line: variable-name\n private _config: ServiceOptions;\n\n constructor(public ble: BluetoothCore) {}\n\n config(options: ServiceOptions) {\n this._config = options;\n }\n\n getDevice() {\n return this.ble.getDevice$();\n }\n\n stream() {\n return this.ble.streamValues$().pipe(\n map(this._config.decoder)\n );\n }\n\n value() {\n return this.ble\n .value$({\n service: this._config.service,\n characteristic: this._config.characteristic\n })\n .pipe(\n map(this._config.decoder)\n );\n }\n\n disconnectDevice() {\n this.ble.disconnectDevice();\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/BrowserWebBluetooth.html":{"url":"injectables/BrowserWebBluetooth.html","title":"injectable - BrowserWebBluetooth","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n BrowserWebBluetooth\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts\n \n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n ble\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n requestDevice\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts:5\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n requestDevice\n \n \n \n \n \n \nrequestDevice(options: RequestDeviceOptions)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts:14\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n options\n \n RequestDeviceOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n ble\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts:5\n \n \n\n\n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class BrowserWebBluetooth {\n private ble;\n\n constructor() {\n this.ble = navigator.bluetooth;\n if (!this.ble) {\n throw new Error('Your browser does not support Smart Bluetooth. See http://caniuse.com/#search=Bluetooth for more details.');\n }\n }\n\n requestDevice(options: RequestDeviceOptions): Promise {\n return this.ble.requestDevice(options);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ConsoleLoggerService.html":{"url":"injectables/ConsoleLoggerService.html","title":"injectable - ConsoleLoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n ConsoleLoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n error\n \n \n log\n \n \n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n \n \nerror(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:16\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n log\n \n \n \n \n \n \nlog(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:13\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n warn\n \n \n \n \n \n \nwarn(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:19\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\nexport interface Logger {\n log(args: string[]): void;\n error(args: string[]): void;\n warn(args: string[]): void;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleLoggerService implements Logger {\n log(...args) {\n console.log.apply(console, args);\n }\n error(...args) {\n console.error.apply(console, args);\n }\n warn(...args) {\n console.warn.apply(console, args);\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NoLoggerService implements Logger {\n log(...args) {}\n error(...args) {}\n warn(...args) {}\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DashboardComponent.html":{"url":"components/DashboardComponent.html","title":"component - DashboardComponent","body":"\n \n\n\n\n\n\n Components\n \n DashboardComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/dashboard/dashboard.component.ts\n\n\n\n\n\n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n selector\n ble-dashboard\n \n\n \n styleUrls\n ./dashboard.component.css\n \n\n\n\n \n templateUrl\n ./dashboard.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n\n \n Constructor\n \n \n \n \nconstructor()\n \n \n \n \n Defined in src/app/dashboard/dashboard.component.ts:8\n \n \n\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n import { Component } from '@angular/core';\n\n@Component({\n selector: 'ble-dashboard',\n templateUrl: './dashboard.component.html',\n styleUrls: ['./dashboard.component.css'],\n})\nexport class DashboardComponent {\n\n constructor() {}\n}\n\n \n\n \n \n \n Angular Web BLE Demo\n\n\n\n \n\n \n\n \n \n \n \n Battery Level\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n \n \n \n \n Humidity Level\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n \n \n \n \n Temperature\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n \n \n \n \n Stepper\n \n more_vert\n \n \n \n bluetooth_searching\n Connect\n \n \n bluetooth_disabled\n Disconnect\n \n \n \n \n {{ device.name }}\n \n \n \n \n \n \n \n\n \n\n\n \n\n \n \n ./dashboard.component.css\n \n section {\n padding: 40px;\n max-width: 700px;\n margin: 0 auto;\n}\n\n.mat-toolbar.mat-primary {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.grid-container {\n margin: 20px;\n}\n\n.dashboard-card {\n position: absolute;\n top: 15px;\n left: 15px;\n right: 15px;\n bottom: 15px;\n}\n\n.more-button {\n position: absolute;\n top: 5px;\n right: 10px;\n}\n\n.dashboard-card-content {\n text-align: center;\n}\n\n\nimg {\n width: 32px;\n margin: 0 10px;\n}\n\n.mat-icon {\n margin: 0 10px 0 0;\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' Angular Web BLE Demo Battery Level more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} Humidity Level more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} Temperature more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} Stepper more_vert bluetooth_searching Connect bluetooth_disabled Disconnect {{ device.name }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DashboardComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothDevice.html":{"url":"classes/FakeBluetoothDevice.html","title":"class - FakeBluetoothDevice","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothDevice\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n gatt\n \n \n Public\n id\n \n \n Private\n listeners\n \n \n Public\n name\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n addEventListener\n \n \n clear\n \n \n disconnect\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(id: string, name: string)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:12\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n id\n \n \n string\n \n \n \n No\n \n \n \n \n name\n \n \n string\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n gatt\n \n \n \n \n \n \n Type : BluetoothRemoteGATTServer\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:7\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n id\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:14\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n listeners\n \n \n \n \n \n \n Default value : {\n gattserverdisconnected: []\n }\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:8\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n name\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:14\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n addEventListener\n \n \n \n \n \n \naddEventListener(type: string, listener: EventListener)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:17\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n type\n \n string\n \n\n \n No\n \n\n\n \n \n listener\n \n EventListener\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n clear\n \n \n \n \n \n \nclear()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:29\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:24\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothRemoteGATTCharacteristic.html":{"url":"classes/FakeBluetoothRemoteGATTCharacteristic.html","title":"class - FakeBluetoothRemoteGATTCharacteristic","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothRemoteGATTCharacteristic\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Readonly\n initialValue\n \n \n Private\n listeners\n \n \n properties\n \n \n value\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n addEventListener\n \n \n changeValue\n \n \n clear\n \n \n readValue\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:78\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n properties\n \n \n BluetoothCharacteristicProperties\n \n \n \n No\n \n \n \n \n initialValue\n \n \n DataView\n \n \n \n Yes\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Readonly\n initialValue\n \n \n \n \n \n \n Type : DataView\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:73\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n listeners\n \n \n \n \n \n \n Default value : {\n characteristicvaluechanged: []\n }\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:74\n \n \n\n\n \n \n \n \n \n \n \n \n properties\n \n \n \n \n \n \n Type : BluetoothCharacteristicProperties\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:72\n \n \n\n\n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \n Type : DataView\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:71\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n addEventListener\n \n \n \n \n \n \naddEventListener(type: string, listener: EventListener)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:90\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n type\n \n string\n \n\n \n No\n \n\n\n \n \n listener\n \n EventListener\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n changeValue\n \n \n \n \n \n \nchangeValue(value: DataView)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:97\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n DataView\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n clear\n \n \n \n \n \n \nclear()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:103\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n readValue\n \n \n \n \n \n \nreadValue()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:86\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothRemoteGATTServer.html":{"url":"classes/FakeBluetoothRemoteGATTServer.html","title":"class - FakeBluetoothRemoteGATTServer","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothRemoteGATTServer\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n connected\n \n \n Public\n device\n \n \n Public\n services\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n connect\n \n \n disconnect\n \n \n getPrimaryService\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(device, services: literal type)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:39\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n device\n \n \n \n \n \n No\n \n \n \n \n services\n \n \n literal type\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n connected\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:39\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n device\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:41\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n services\n \n \n \n \n \n \n Type : literal type\n\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:41\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n connect\n \n \n \n \n \n \nconnect()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:45\n \n \n\n\n \n \n\n \n Returns : any\n\n \n \n \n \n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:54\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n getPrimaryService\n \n \n \n \n \n \ngetPrimaryService(service: BluetoothServiceUUID)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:50\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n BluetoothServiceUUID\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : any\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FakeBluetoothRemoteGATTService.html":{"url":"classes/FakeBluetoothRemoteGATTService.html","title":"class - FakeBluetoothRemoteGATTService","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FakeBluetoothRemoteGATTService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n\n\n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n characteristics\n \n \n Public\n device\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n getCharacteristic\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(device, characteristics)\n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:60\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Optional\n \n \n \n \n device\n \n \n \n No\n \n \n \n \n characteristics\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n characteristics\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:61\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n device\n \n \n \n \n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:61\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getCharacteristic\n \n \n \n \n \n \ngetCharacteristic(characteristic: BluetoothCharacteristicUUID)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts:65\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n characteristic\n \n BluetoothCharacteristicUUID\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : any\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n export class FakeBluetoothDevice {\n gatt: BluetoothRemoteGATTServer;\n private listeners: {\n [key in 'gattserverdisconnected']: EventListener[]\n } = {\n gattserverdisconnected: []\n };\n\n constructor(public id: string, public name: string) {\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n disconnect() {\n const mockedEvent = {target: this} as unknown;\n this.listeners.gattserverdisconnected.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.id = undefined;\n this.name = undefined;\n this.listeners = {\n gattserverdisconnected: []\n };\n }\n}\n\nexport class FakeBluetoothRemoteGATTServer {\n connected = false;\n\n constructor(public device, public services: { [key: string]: { service, primary: boolean } }) {\n device.gatt = this;\n }\n\n connect() {\n this.connected = true;\n return Promise.resolve(this);\n }\n\n getPrimaryService(service: BluetoothServiceUUID) {\n return Promise.resolve(this.services[service].service);\n }\n\n disconnect() {\n this.device.disconnect();\n this.connected = false;\n }\n}\n\nexport class FakeBluetoothRemoteGATTService {\n constructor(public device, public characteristics) {\n this.characteristics.service = this;\n }\n\n getCharacteristic(characteristic: BluetoothCharacteristicUUID) {\n return Promise.resolve(this.characteristics[characteristic]);\n }\n}\n\nexport class FakeBluetoothRemoteGATTCharacteristic {\n value: DataView;\n properties: BluetoothCharacteristicProperties;\n private readonly initialValue: DataView;\n private listeners: {\n [key in 'characteristicvaluechanged']: EventListener[]\n } = {\n characteristicvaluechanged: []\n };\n\n constructor(properties: BluetoothCharacteristicProperties, initialValue?: DataView) {\n this.properties = properties;\n this.value = initialValue;\n this.initialValue = initialValue;\n }\n\n readValue() {\n return Promise.resolve(this.value);\n }\n\n addEventListener(type: string, listener: EventListener) {\n this.listeners[type] = [\n ...this.listeners[type],\n listener\n ];\n }\n\n changeValue(value: DataView) {\n this.value = value;\n const mockedEvent = {target: this} as unknown;\n this.listeners.characteristicvaluechanged.forEach(listener => listener(mockedEvent as Event));\n }\n\n clear() {\n this.value = this.initialValue;\n this.listeners = {\n characteristicvaluechanged: []\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/HumidityComponent.html":{"url":"components/HumidityComponent.html","title":"component - HumidityComponent","body":"\n \n\n\n\n\n\n Components\n \n HumidityComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/humidity.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-humidity\n \n\n\n \n styles\n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n \n\n \n template\n \n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n chart\n \n \n chartRef\n \n \n series\n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n hasError\n \n \n initChart\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar)\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:48\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:97\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:104\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n initChart\n \n \n \n \n \n \ninitChart()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:71\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:108\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:61\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:81\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: number)\n \n \n\n\n \n \n Defined in src/app/thingy52/humidity.component.ts:90\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n chart\n \n \n \n \n \n \n Type : SmoothieChart\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:39\n \n \n\n\n \n \n \n \n \n \n \n \n chartRef\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Decorators : \n \n \n @ViewChild('chart', {static: true})\n \n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:44\n \n \n\n\n \n \n \n \n \n \n \n \n series\n \n \n \n \n \n \n Type : TimeSeries\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:38\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:51\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:52\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:41\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:40\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/humidity.component.ts:46\n \n \n\n \n \n\n\n\n\n \n import { Component, ElementRef, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { of, Subscription } from 'rxjs';\nimport { SmoothieChart, TimeSeries } from 'smoothie';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n@Component({\n selector: 'ble-humidity',\n template: `\n \n `,\n styles: [`\n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }`],\n providers: PROVIDERS\n})\nexport class HumidityComponent implements OnInit, OnDestroy {\n series: TimeSeries;\n chart: SmoothieChart;\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n\n @ViewChild('chart', { static: true })\n chartRef: ElementRef;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar) {\n\n service.config({\n decoder: (value: DataView) => value.getInt8(0),\n service: 'ef680200-9b35-4933-9b10-52ffa9740042',\n characteristic: 'ef680203-9b35-4933-9b10-52ffa9740042'\n });\n }\n\n ngOnInit() {\n this.initChart();\n\n this.streamSubscription = this.service.stream()\n .subscribe({\n next: (val: number) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n initChart() {\n this.series = new window.TimeSeries() as TimeSeries;\n const canvas = this.chartRef.nativeElement;\n // tslint:disable-next-line: max-line-length\n this.chart = new window.SmoothieChart({ interpolation: 'step', grid: { fillStyle: '#ffffff', strokeStyle: 'rgba(119,119,119,0.18)', borderVisible: false }, labels: { fillStyle: '#000000', fontSize: 17 }, tooltip: true });\n this.chart.addTimeSeries(this.series, { lineWidth: 1, strokeStyle: '#ff0000', fillStyle: 'rgba(255,161,161,0.30)' });\n this.chart.streamTo(canvas);\n this.chart.stop();\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe(\n () => null,\n () => of(this.hasError.bind(this)),\n );\n }\n\n\n updateValue(value: number) {\n console.log('Reading humidity %d', value);\n this.series.append(Date.now(), value);\n this.chart.start();\n }\n\n\n disconnect() {\n this.service.disconnectDevice();\n this.series.clear();\n this.chart.stop();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription.unsubscribe();\n this.streamSubscription.unsubscribe();\n }\n}\n\n \n\n\n \n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'HumidityComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/Logger.html":{"url":"interfaces/Logger.html","title":"interface - Logger","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n Logger\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n log\n \n \n \n \n warn\n \n \n \n \n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n \n \nerror(args: string[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:5\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n string[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n log\n \n \n \n \n \n \nlog(args: string[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:4\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n string[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n warn\n \n \n \n \n \n \nwarn(args: string[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:6\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n string[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\nexport interface Logger {\n log(args: string[]): void;\n error(args: string[]): void;\n warn(args: string[]): void;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleLoggerService implements Logger {\n log(...args) {\n console.log.apply(console, args);\n }\n error(...args) {\n console.error.apply(console, args);\n }\n warn(...args) {\n console.warn.apply(console, args);\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NoLoggerService implements Logger {\n log(...args) {}\n error(...args) {}\n warn(...args) {}\n}\n\n \n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/NoLoggerService.html":{"url":"injectables/NoLoggerService.html","title":"injectable - NoLoggerService","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n NoLoggerService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n error\n \n \n log\n \n \n warn\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n error\n \n \n \n \n \n \nerror(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:29\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n log\n \n \n \n \n \n \nlog(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:28\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n warn\n \n \n \n \n \n \nwarn(...args: any[])\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts:30\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n args\n \n any[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\nexport interface Logger {\n log(args: string[]): void;\n error(args: string[]): void;\n warn(args: string[]): void;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConsoleLoggerService implements Logger {\n log(...args) {\n console.log.apply(console, args);\n }\n error(...args) {\n console.error.apply(console, args);\n }\n warn(...args) {\n console.warn.apply(console, args);\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NoLoggerService implements Logger {\n log(...args) {}\n error(...args) {}\n warn(...args) {}\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ServerWebBluetooth.html":{"url":"injectables/ServerWebBluetooth.html","title":"injectable - ServerWebBluetooth","body":"\n \n\n\n\n\n\n\n\n\n\n Injectables\n ServerWebBluetooth\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/server.ts\n \n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n instance\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n instance\n \n \n \n \n \n \n \n instance()\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/platform/server.ts:5\n \n \n\n\n \n \n\n \n Returns : {}\n\n \n \n \n \n \n\n\n \n\n\n \n import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class ServerWebBluetooth {\n static instance() {\n // mocked object for now\n return {};\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/StepCounterComponent.html":{"url":"components/StepCounterComponent.html","title":"component - StepCounterComponent","body":"\n \n\n\n\n\n\n Components\n \n StepCounterComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/stepcounter.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-stepcounter\n \n\n\n \n styles\n \n :host {\n display: block;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 112px;\n left: 214px;\n width: 120px;\n display: block;\n text-align: center;\n }\n mat-icon {\n font-size: 11em;\n width: 100%;\n height: 100%;\n }\n \n\n \n template\n {{ value || \"000\" }}\ndirections_walk\n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n value\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n hasError\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar)\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:55\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:92\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:97\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:101\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:74\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:82\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: literal type)\n \n \n\n\n \n \n Defined in src/app/thingy52/stepcounter.component.ts:87\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n literal type\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:58\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:59\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:50\n \n \n\n\n \n \n \n \n \n \n \n \n value\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:51\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:49\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/stepcounter.component.ts:53\n \n \n\n \n \n\n\n\n\n \n import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { Subscription } from 'rxjs';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n@Component({\n selector: 'ble-stepcounter',\n template: `\n {{ value || \"000\" }}\n directions_walk\n `,\n styles: [`\n :host {\n display: block;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 112px;\n left: 214px;\n width: 120px;\n display: block;\n text-align: center;\n }\n mat-icon {\n font-size: 11em;\n width: 100%;\n height: 100%;\n }`],\n providers: PROVIDERS\n})\nexport class StepCounterComponent implements OnInit, OnDestroy {\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n value = 0;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar) {\n\n service.config({\n decoder: (value: DataView) => {\n const count = value.getUint32(0, true);\n const time = value.getUint32(4, true);\n return {\n count, time\n };\n },\n service: 'ef680400-9b35-4933-9b10-52ffa9740042',\n characteristic: 'ef680405-9b35-4933-9b10-52ffa9740042'\n });\n }\n\n ngOnInit() {\n this.streamSubscription = this.service.stream()\n .subscribe({\n next: (val: { time: number, count: number }) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe(() => null, error => this.hasError.bind(this));\n }\n\n updateValue(value: { time: number, count: number }) {\n console.log('Reading step counter %d', value);\n this.value = value.count;\n }\n\n disconnect() {\n this.service.disconnectDevice();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription.unsubscribe();\n this.streamSubscription.unsubscribe();\n }\n}\n\n\n\n \n\n\n \n \n :host {\n display: block;\n }\n span {\n font-size: 5em;\n position: absolute;\n top: 112px;\n left: 214px;\n width: 120px;\n display: block;\n text-align: center;\n }\n mat-icon {\n font-size: 11em;\n width: 100%;\n height: 100%;\n }\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '{{ value || \"000\" }}directions_walk'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'StepCounterComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/TemperatureComponent.html":{"url":"components/TemperatureComponent.html","title":"component - TemperatureComponent","body":"\n \n\n\n\n\n\n Components\n \n TemperatureComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n src/app/thingy52/temperature.component.ts\n\n\n\n\n\n \n Implements\n \n \n OnInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n \n providers\n \n PROVIDERS\n \n \n\n\n \n selector\n ble-temperature\n \n\n\n \n styles\n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n \n\n \n template\n \n\n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n chart\n \n \n chartRef\n \n \n series\n \n \n Public\n service\n \n \n Public\n snackBar\n \n \n streamSubscription\n \n \n valuesSubscription\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n disconnect\n \n \n hasError\n \n \n initChart\n \n \n ngOnDestroy\n \n \n ngOnInit\n \n \n requestValue\n \n \n updateValue\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(service: BleService, snackBar: MatSnackBar)\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:48\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n service\n \n \n BleService\n \n \n \n No\n \n \n \n \n snackBar\n \n \n MatSnackBar\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n disconnect\n \n \n \n \n \n \ndisconnect()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:108\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n hasError\n \n \n \n \n \n \nhasError(error: string)\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:115\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n error\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n initChart\n \n \n \n \n \n \ninitChart()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:76\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:119\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:66\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n requestValue\n \n \n \n \n \n \nrequestValue()\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:97\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateValue\n \n \n \n \n \n \nupdateValue(value: number)\n \n \n\n\n \n \n Defined in src/app/thingy52/temperature.component.ts:102\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n value\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n chart\n \n \n \n \n \n \n Type : SmoothieChart\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:39\n \n \n\n\n \n \n \n \n \n \n \n \n chartRef\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Decorators : \n \n \n @ViewChild('chart', {static: true})\n \n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:44\n \n \n\n\n \n \n \n \n \n \n \n \n series\n \n \n \n \n \n \n Type : TimeSeries\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:38\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n service\n \n \n \n \n \n \n Type : BleService\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:51\n \n \n\n\n \n \n \n \n \n \n \n \n Public\n snackBar\n \n \n \n \n \n \n Type : MatSnackBar\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:52\n \n \n\n\n \n \n \n \n \n \n \n \n streamSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:41\n \n \n\n\n \n \n \n \n \n \n \n \n valuesSubscription\n \n \n \n \n \n \n Type : Subscription\n\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:40\n \n \n\n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n device\n \n \n\n \n \n getdevice()\n \n \n \n \n Defined in src/app/thingy52/temperature.component.ts:46\n \n \n\n \n \n\n\n\n\n \n import { Component, ElementRef, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { BluetoothCore, BrowserWebBluetooth, ConsoleLoggerService } from '@manekinekko/angular-web-bluetooth';\nimport { Subscription } from 'rxjs';\nimport { SmoothieChart, TimeSeries } from 'smoothie';\nimport { BleService } from '../ble.service';\n\nexport const bleCore = (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l);\nexport const bleService = (b: BluetoothCore) => new BleService(b);\n\n\n// make sure we get a singleton instance of each service\nconst PROVIDERS = [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}];\n\n@Component({\n selector: 'ble-temperature',\n template: `\n \n `,\n styles: [`\n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }`],\n providers: PROVIDERS\n})\nexport class TemperatureComponent implements OnInit, OnDestroy {\n series: TimeSeries;\n chart: SmoothieChart;\n valuesSubscription: Subscription;\n streamSubscription: Subscription;\n\n @ViewChild('chart', { static: true })\n chartRef: ElementRef;\n\n get device() {\n return this.service.getDevice();\n }\n\n constructor(\n public service: BleService,\n public snackBar: MatSnackBar) {\n\n service.config({\n characteristic: 'ef680201-9b35-4933-9b10-52ffa9740042',\n service: 'ef680200-9b35-4933-9b10-52ffa9740042',\n decoder: (value: DataView) => {\n const integer = value.getInt8(0);\n const decimal = value.getUint8(1);\n return integer + decimal / 100;\n }\n });\n\n }\n\n ngOnInit() {\n this.initChart();\n\n this.streamSubscription = this.service.stream()\n .subscribe({\n next: (val: number) => this.updateValue(val),\n error: (err) => this.hasError(err)\n });\n }\n\n initChart() {\n this.series = new window.TimeSeries() as TimeSeries;\n const canvas = this.chartRef.nativeElement;\n this.chart = new window.SmoothieChart({\n interpolation: 'step',\n grid: {\n fillStyle: '#ffffff',\n strokeStyle: 'rgba(119,119,119,0.18)',\n borderVisible: false\n },\n labels: {\n fillStyle: '#000000',\n fontSize: 17\n },\n tooltip: true\n });\n this.chart.addTimeSeries(this.series, { lineWidth: 1, strokeStyle: '#ff0000', fillStyle: 'rgba(255,161,161,0.30)' });\n this.chart.streamTo(canvas);\n this.chart.stop();\n }\n\n requestValue() {\n this.valuesSubscription = this.service.value()\n .subscribe(() => null, error => this.hasError.bind(this));\n }\n\n updateValue(value: number) {\n console.log('Reading temperature %d', value);\n this.series.append(Date.now(), value);\n this.chart.start();\n }\n\n disconnect() {\n this.service.disconnectDevice();\n this.series.clear();\n this.chart.stop();\n this.valuesSubscription.unsubscribe();\n }\n\n hasError(error: string) {\n this.snackBar.open(error, 'Close');\n }\n\n ngOnDestroy() {\n this.valuesSubscription.unsubscribe();\n this.streamSubscription.unsubscribe();\n }\n}\n\n\n\n \n\n\n \n \n :host {\n display: block;\n }\n canvas {\n margin-left: -16px;\n }\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ble-root'},{'name': 'BatteryLevelComponent', 'selector': 'ble-battery-level'},{'name': 'DashboardComponent', 'selector': 'ble-dashboard'},{'name': 'HumidityComponent', 'selector': 'ble-humidity'},{'name': 'StepCounterComponent', 'selector': 'ble-stepcounter'},{'name': 'TemperatureComponent', 'selector': 'ble-temperature'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'TemperatureComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/WebBluetoothModule.html":{"url":"modules/WebBluetoothModule.html","title":"module - WebBluetoothModule","body":"\n \n\n\n\n\n Modules\n WebBluetoothModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n\n\n\n\n\n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n forRoot\n \n \n \n \n \n \n \n forRoot(options: AWBOptions)\n \n \n\n\n \n \n Defined in projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts:32\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n Default value\n \n \n \n \n options\n \n AWBOptions\n \n\n \n No\n \n\n \n {}\n \n\n \n \n \n \n \n \n \n Returns : ModuleWithProviders\n\n \n \n \n \n \n \n \n \n\n \n\n\n \n import { NgModule, ModuleWithProviders, InjectionToken, Optional } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { BluetoothCore } from './bluetooth.service';\nimport { BrowserWebBluetooth } from './platform/browser';\n\nimport { ConsoleLoggerService, NoLoggerService } from './logger.service';\n\nexport interface AWBOptions {\n enableTracing?: boolean;\n}\n\nexport function browserWebBluetooth() {\n return new BrowserWebBluetooth();\n}\n\nexport function consoleLoggerServiceConfig(options: AWBOptions) {\n if (options && options.enableTracing) {\n return new ConsoleLoggerService();\n } else {\n return new NoLoggerService();\n }\n}\nexport function makeMeTokenInjector() {\n return new InjectionToken('AWBOptions');\n}\n\n@NgModule({\n imports: [CommonModule]\n})\nexport class WebBluetoothModule {\n static forRoot(options: AWBOptions = {}): ModuleWithProviders {\n return {\n ngModule: WebBluetoothModule,\n providers: [\n BluetoothCore,\n {\n provide: BrowserWebBluetooth,\n useFactory: browserWebBluetooth\n },\n {\n provide: makeMeTokenInjector,\n useValue: options\n },\n {\n provide: ConsoleLoggerService,\n useFactory: consoleLoggerServiceConfig,\n deps: [makeMeTokenInjector]\n }\n ]\n };\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n e2e/src/app.po.ts\n \n class\n AppPage\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n interface\n AWBOptions\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n function\n browserWebBluetooth\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n function\n consoleLoggerServiceConfig\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n function\n makeMeTokenInjector\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.service.ts\n \n injectable\n BluetoothCore\n \n 67 %\n (21/31)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/lang/uuids/ti-sensortag2.ts\n \n variable\n TI_SENSORAG_SERVICES\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/lang/uuids/ti-sensortag2.ts\n \n variable\n TiTag\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n injectable\n ConsoleLoggerService\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n injectable\n NoLoggerService\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/logger.service.ts\n \n interface\n Logger\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/browser.ts\n \n injectable\n BrowserWebBluetooth\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/platform/server.ts\n \n injectable\n ServerWebBluetooth\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothDevice\n \n 0 %\n (0/9)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothRemoteGATTCharacteristic\n \n 0 %\n (0/10)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothRemoteGATTServer\n \n 0 %\n (0/8)\n \n \n \n \n \n projects/manekinekko/angular-web-bluetooth/src/lib/test.utils.ts\n \n class\n FakeBluetoothRemoteGATTService\n \n 0 %\n (0/5)\n \n \n \n \n \n src/app/app.component.ts\n \n component\n AppComponent\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/ble.service.ts\n \n injectable\n BleService\n \n 0 %\n (0/9)\n \n \n \n \n \n src/app/dashboard/dashboard.component.ts\n \n component\n DashboardComponent\n \n 0 %\n (0/2)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n component\n BatteryLevelComponent\n \n 0 %\n (0/18)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/battery-level.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n component\n HumidityComponent\n \n 0 %\n (0/16)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/humidity.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n component\n StepCounterComponent\n \n 0 %\n (0/13)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/stepcounter.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n component\n TemperatureComponent\n \n 0 %\n (0/16)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n variable\n bleCore\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n variable\n bleService\n \n 0 %\n (0/1)\n \n \n \n \n \n src/app/thingy52/temperature.component.ts\n \n variable\n PROVIDERS\n \n 0 %\n (0/1)\n \n \n \n \n \n src/environments/environment.prod.ts\n \n variable\n environment\n \n 0 %\n (0/1)\n \n \n \n \n \n src/environments/environment.ts\n \n variable\n environment\n \n 0 %\n (0/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @angular/animations : ^17.1.3\n \n @angular/cdk : ^17.1.2\n \n @angular/common : ^17.1.3\n \n @angular/compiler : ^17.1.3\n \n @angular/core : ^17.1.3\n \n @angular/forms : ^17.1.3\n \n @angular/material : ^17.1.2\n \n @angular/platform-browser : ^17.1.3\n \n @angular/platform-browser-dynamic : ^17.1.3\n \n @angular/router : ^17.1.3\n \n @release-it/conventional-changelog : ^5.1.1\n \n @types/web-bluetooth : 0.0.6\n \n rxjs : ~7.8.0\n \n smoothie : ^1.35.0\n \n ts-jest : ^29.0.5\n \n tslib : ^2.3.0\n \n zone.js : ~0.14.3\n \n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n browserWebBluetooth   (projects/.../bluetooth.module.ts)\n \n \n consoleLoggerServiceConfig   (projects/.../bluetooth.module.ts)\n \n \n makeMeTokenInjector   (projects/.../bluetooth.module.ts)\n \n \n \n \n \n \n\n\n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.module.ts\n \n \n \n \n \n \n \n browserWebBluetooth\n \n \n \n \n \n \nbrowserWebBluetooth()\n \n \n\n\n\n\n \n \n \n \n \n \n \n \n consoleLoggerServiceConfig\n \n \n \n \n \n \nconsoleLoggerServiceConfig(options: AWBOptions)\n \n \n\n\n\n\n \n \n\n \n Parameters :\n \n \n \n \n Name\n Type\n Optional\n \n \n \n \n options\n \n AWBOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n makeMeTokenInjector\n \n \n \n \n \n \nmakeMeTokenInjector()\n \n \n\n\n\n\n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\n\n \n\nThe missing Web Bluetooth module for Angular\n\n\nInstall\nnpm install -S @manekinekko/angular-web-bluetooth @types/web-bluetooth\nNote: Make also sure the @types/web-bluetooth is installed correctly in your node_modules.\n\nGetting started\n1) import the WebBluetoothModule module\nimport { NgModule } from '@angular/core';\nimport { WebBluetoothModule } from '@manekinekko/angular-web-bluetooth';\n\n@NgModule({\n imports: [\n //...,\n WebBluetoothModule.forRoot({\n enableTracing: true // or false, this will enable logs in the browser's console\n })\n ]\n //...\n})\nexport class AppModule {}2.a) use it in your service/component (the easiest way)\nHere is an annotated example using the BluetoothCore service:\nimport { Injectable } from '@angular/core';\nimport { BluetoothCore } from '@manekinekko/angular-web-bluetooth';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BatteryLevelService {\n\n constructor(public readonly ble: BluetoothCore) {}\n\n getDevice() {\n // call this method to get the connected device\n return this.ble.getDevice$();\n }\n\n stream() {\n // call this method to get a stream of values emitted by the device for a given characteristic\n return this.ble.streamValues$().pipe(\n map((value: DataView) => value.getInt8(0))\n );\n }\n\n disconnectDevice() {\n // call this method to disconnect from the device. This method will also stop clear all subscribed notifications\n this.ble.disconnectDevice();\n }\n\n value() {\n console.log('Getting Battery level...');\n\n return this.ble\n .value$({\n service: 'battery_service',\n characteristic: 'battery_level'\n });\n }\n\n}2.b) use it in your service/component (the advanced way)\nHere is an annotated example using the BluetoothCore service:\nimport { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { BluetoothCore } from '@manekinekko/angular-web-bluetooth';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BatteryLevelService {\n static GATT_CHARACTERISTIC_BATTERY_LEVEL = 'battery_level';\n static GATT_PRIMARY_SERVICE = 'battery_service';\n\n constructor(public ble: BluetoothCore) {}\n\n getDevice() {\n // call this method to get the connected device\n return this.ble.getDevice$();\n }\n\n stream() {\n // call this method to get a stream of values emitted by the device\n return this.ble.streamValues$().pipe(map((value: DataView) => value.getUint8(0)));\n }\n\n disconnectDevice() {\n this.ble.disconnectDevice();\n }\n\n /**\n * Get Battery Level GATT Characteristic value.\n * This logic is specific to this service, this is why we can't abstract it elsewhere.\n * The developer is free to provide any service, and characteristics they want.\n *\n * @return Emites the value of the requested service read from the device\n */\n value() {\n console.log('Getting Battery level...');\n\n return this.ble\n\n // 1) call the discover method will trigger the discovery process (by the browser)\n .discover$({\n acceptAllDevices: true,\n optionalServices: [BatteryLevelService.GATT_PRIMARY_SERVICE]\n })\n .pipe(\n\n // 2) get that service\n mergeMap((gatt: BluetoothRemoteGATTServer) => {\n return this.ble.getPrimaryService$(gatt, BatteryLevelService.GATT_PRIMARY_SERVICE);\n }),\n\n // 3) get a specific characteristic on that service\n mergeMap((primaryService: BluetoothRemoteGATTService) => {\n return this.ble.getCharacteristic$(primaryService, BatteryLevelService.GATT_CHARACTERISTIC_BATTERY_LEVEL);\n }),\n\n // 4) ask for the value of that characteristic (will return a DataView)\n mergeMap((characteristic: BluetoothRemoteGATTCharacteristic) => {\n return this.ble.readValue$(characteristic);\n }),\n\n // 5) on that DataView, get the right value\n map((value: DataView) => value.getUint8(0))\n )\n }\n}API documentation\nThe API documentation can be found here: https://manekinekko.github.io/angular-web-bluetooth/\nNeed a starter?\n\n\nThis project serves also as a starter. Run the following command:\nnpm startBlog post\nCheckout my full blog post on dev.to about how to use this package in your app.\nHave a PR?\nAll contributions are welcome. Here are few open issues that I need help with ;)\nLicense\nThe MIT License (MIT) Copyright (c) 2017 - Wassim CHEGHAM\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\nThe MIT License (MIT) Copyright (c) 2017 - Wassim CHEGHAM\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n WebBluetoothModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_declarations\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_AppModule_bootstrap\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nBatteryLevelComponent\n\nBatteryLevelComponent\n\nAppModule -->\n\nBatteryLevelComponent->AppModule\n\n\n\n\n\nDashboardComponent\n\nDashboardComponent\n\nAppModule -->\n\nDashboardComponent->AppModule\n\n\n\n\n\nHumidityComponent\n\nHumidityComponent\n\nAppModule -->\n\nHumidityComponent->AppModule\n\n\n\n\n\nStepCounterComponent\n\nStepCounterComponent\n\nAppModule -->\n\nStepCounterComponent->AppModule\n\n\n\n\n\nTemperatureComponent\n\nTemperatureComponent\n\nAppModule -->\n\nTemperatureComponent->AppModule\n\n\n\n\n\nAppComponent \n\nAppComponent \n\nAppComponent -->\n\nAppModule->AppComponent \n\n\n\n\n\nWebBluetoothModule\n\nWebBluetoothModule\n\nAppModule -->\n\nWebBluetoothModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 2 Modules\n \n \n \n \n \n \n \n \n 6 Components\n \n \n \n \n \n \n \n 6 Injectables\n \n \n \n \n \n \n \n 5 Classes\n \n \n \n \n \n \n \n 2 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"properties.html":{"url":"properties.html","title":"package-properties - properties","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Properties\n \n \n \n Version : 16.0.0\n \n\n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/typealiases.html":{"url":"miscellaneous/typealiases.html","title":"miscellaneous-typealiases - typealiases","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Type aliases\n\n\n\n Index\n \n \n \n \n \n \n ReadValueOptions   (projects/.../bluetooth.service.ts)\n \n \n ServiceOptions   (src/.../ble.service.ts)\n \n \n \n \n \n \n\n\n projects/manekinekko/angular-web-bluetooth/src/lib/bluetooth.service.ts\n \n \n \n \n \n \n ReadValueOptions\n \n \n \n \n literal type\n\n \n \n \n \n src/app/ble.service.ts\n \n \n \n \n \n \n ServiceOptions\n \n \n \n \n literal type\n\n \n \n \n \n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n bleCore   (src/.../battery-level.component.ts)\n \n \n bleCore   (src/.../humidity.component.ts)\n \n \n bleCore   (src/.../stepcounter.component.ts)\n \n \n bleCore   (src/.../temperature.component.ts)\n \n \n bleService   (src/.../battery-level.component.ts)\n \n \n bleService   (src/.../humidity.component.ts)\n \n \n bleService   (src/.../stepcounter.component.ts)\n \n \n bleService   (src/.../temperature.component.ts)\n \n \n environment   (src/.../environment.prod.ts)\n \n \n environment   (src/.../environment.ts)\n \n \n PROVIDERS   (src/.../battery-level.component.ts)\n \n \n PROVIDERS   (src/.../humidity.component.ts)\n \n \n PROVIDERS   (src/.../stepcounter.component.ts)\n \n \n PROVIDERS   (src/.../temperature.component.ts)\n \n \n TI_SENSORAG_SERVICES   (projects/.../ti-sensortag2.ts)\n \n \n TiTag   (projects/.../ti-sensortag2.ts)\n \n \n \n \n \n \n\n\n src/app/thingy52/battery-level.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/app/thingy52/humidity.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/app/thingy52/stepcounter.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/app/thingy52/temperature.component.ts\n \n \n \n \n \n \n \n bleCore\n \n \n \n \n \n \n Default value : (b: BrowserWebBluetooth, l: ConsoleLoggerService) => new BluetoothCore(b, l)\n \n \n\n\n \n \n \n \n \n \n \n \n bleService\n \n \n \n \n \n \n Default value : (b: BluetoothCore) => new BleService(b)\n \n \n\n\n \n \n \n \n \n \n \n \n PROVIDERS\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [{\n provide: BluetoothCore,\n useFactory: bleCore,\n deps: [BrowserWebBluetooth, ConsoleLoggerService]\n}, {\n provide: BleService,\n useFactory: bleService,\n deps: [BluetoothCore]\n}]\n \n \n\n\n \n \n\n src/environments/environment.prod.ts\n \n \n \n \n \n \n \n environment\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n production: true\n}\n \n \n\n\n \n \n\n src/environments/environment.ts\n \n \n \n \n \n \n \n environment\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n production: false\n}\n \n \n\n\n \n \n\n projects/manekinekko/angular-web-bluetooth/src/lib/lang/uuids/ti-sensortag2.ts\n \n \n \n \n \n \n \n TI_SENSORAG_SERVICES\n \n \n \n \n \n \n Default value : Object.keys(TiTag).map(key => TiTag[key].SERVICE)\n \n \n\n\n \n \n \n \n \n \n \n \n TiTag\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n\n DEVICE_INFORMATION : {\n SERVICE : 'f000180a-0451-4000-b000-000000000000',\n SYSTEM_ID : 'f0002a23-0451-4000-b000-000000000000',\n MODEL_NUMBER : 'f0002a24-0451-4000-b000-000000000000',\n SERIAL_NUMBER : 'f0002a25-0451-4000-b000-000000000000',\n FIRMWARE_REV : 'f0002a26-0451-4000-b000-000000000000',\n HARDWARE_REV : 'f0002a27-0451-4000-b000-000000000000',\n SOFTWARE_REV : 'f0002a28-0451-4000-b000-000000000000',\n MANIFACTURER : 'f0002a29-0451-4000-b000-000000000000',\n IEEE11073 : 'f0002a2a-0451-4000-b000-000000000000',\n PNP_ID : 'f0002a50-0451-4000-b000-000000000000'\n },\n\n BATTERY : {\n SERVICE : 'f000180f-0451-4000-b000-000000000000',\n LEVEL : 'f0002a19-0451-4000-b000-000000000000'\n },\n\n TEMPERATURE : {\n SERVICE : 'f000aa00-0451-4000-b000-000000000000',\n DATA : 'f000aa01-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa02-0451-4000-b000-000000000000',\n PERIOD : 'f000aa03-0451-4000-b000-000000000000'\n },\n\n HUMIDITY : {\n SERVICE : 'f000aa20-0451-4000-b000-000000000000',\n DATA : 'f000aa21-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa22-0451-4000-b000-000000000000',\n PERIOD : 'f000aa23-0451-4000-b000-000000000000'\n },\n\n BAROMETER : {\n SERVICE : 'f000aa40-0451-4000-b000-000000000000',\n DATA : 'f000aa41-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa42-0451-4000-b000-000000000000',\n PERIOD : 'f000aa44-0451-4000-b000-000000000000'\n },\n\n // service not available in model CC2650\n // ACCELEROMETER : {\n // SERVICE : 'f000aa10-0451-4000-b000-000000000000',\n // DATA : 'f000aa11-0451-4000-b000-000000000000',\n // CONFIGURATION : 'f000aa12-0451-4000-b000-000000000000',\n // PERIOD : 'f000aa13-0451-4000-b000-000000000000'\n // },\n\n // service not available in model CC2650\n // MAGNETOMETER : {\n // SERVICE : 'f000aa30-0451-4000-b000-000000000000',\n // DATA : 'f000aa31-0451-4000-b000-000000000000',\n // CONFIGURATION : 'f000aa32-0451-4000-b000-000000000000',\n // PERIOD : 'f000aa33-0451-4000-b000-000000000000'\n // },\n\n // service not available in model CC2650\n // GYROSCOPE : {\n // SERVICE : 'f000aa50-0451-4000-b000-000000000000',\n // DATA : 'f000aa51-0451-4000-b000-000000000000',\n // CONFIGURATION : 'f000aa52-0451-4000-b000-000000000000',\n // PERIOD : 'f000aa53-0451-4000-b000-000000000000'\n // },\n\n MOVEMENT : {\n SERVICE : 'f000aa80-0451-4000-b000-000000000000',\n DATA : 'f000aa81-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa82-0451-4000-b000-000000000000',\n PERIOD : 'f000aa83-0451-4000-b000-000000000000'\n },\n\n LIGHT : {\n SERVICE : 'f000aa70-0451-4000-b000-000000000000',\n DATA : 'f000aa71-0451-4000-b000-000000000000',\n CONFIGURATION : 'f000aa72-0451-4000-b000-000000000000',\n PERIOD : 'f000aa73-0451-4000-b000-000000000000'\n },\n\n KEYPRESS : {\n SERVICE : 'f000ffe0-0451-4000-b000-000000000000',\n STATE : 'f000ffe1-0451-4000-b000-000000000000'\n },\n\n __REGISTER__ : {\n SERVICE : 'f000ac00-0451-4000-b000-000000000000',\n DATA : 'f000ac01-0451-4000-b000-000000000000',\n ADDRESS : 'f000ac02-0451-4000-b000-000000000000',\n DEVICE_ID : 'f000ac03-0451-4000-b000-000000000000'\n },\n\n CONTROL : {\n SERVICE : 'f000ccc0-0451-4000-b000-000000000000',\n CURRENT_USED_PARAMETERS : 'f000ccc1-0451-4000-b000-000000000000',\n REQUEST_NEW_PARAMETERS : 'f000ccc2-0451-4000-b000-000000000000',\n DISCONNECT_REQUEST : 'f000ccc3-0451-4000-b000-000000000000'\n },\n\n OAD : {\n SERVICE : 'f000ffc0-0451-4000-b000-000000000000',\n IMAGE_NOTIFY : 'f000ffc1-0451-4000-b000-000000000000',\n IMAGE_BLOCK_REQUEST : 'f000ffc2-0451-4000-b000-000000000000',\n IMAGE_COUNT : 'f000ffc3-0451-4000-b000-000000000000',\n IMAGE_STATUS : 'f000ffc4-0451-4000-b000-000000000000'\n },\n\n IO : {\n SERVICE : 'f000aa64-0451-4000-b000-000000000000',\n DATA : 'f000aa65-0451-4000-b000-000000000000',\n CONFIG : 'f000aa66-0451-4000-b000-000000000000'\n }\n}\n \n \n\n\n \n \n\n\n\n\n \n \n results matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}} } diff --git a/docs/properties.html b/docs/properties.html index 49d3bcf..ca87f9d 100644 --- a/docs/properties.html +++ b/docs/properties.html @@ -52,7 +52,7 @@ diff --git a/package-lock.json b/package-lock.json index ce05f4c..9d015fb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6,33 +6,33 @@ "packages": { "": { "name": "angular-web-bluetooth-starter", - "version": "15.0.0", - "dependencies": { - "@angular/animations": "^16.2.12", - "@angular/cdk": "^16.2.14", - "@angular/common": "^16.2.12", - "@angular/compiler": "^16.2.12", - "@angular/core": "^16.2.12", - "@angular/forms": "^16.2.12", - "@angular/material": "^16.2.14", - "@angular/platform-browser": "^16.2.12", - "@angular/platform-browser-dynamic": "^16.2.12", - "@angular/router": "^16.2.12", + "version": "16.0.0", + "dependencies": { + "@angular/animations": "^17.1.3", + "@angular/cdk": "^17.1.2", + "@angular/common": "^17.1.3", + "@angular/compiler": "^17.1.3", + "@angular/core": "^17.1.3", + "@angular/forms": "^17.1.3", + "@angular/material": "^17.1.2", + "@angular/platform-browser": "^17.1.3", + "@angular/platform-browser-dynamic": "^17.1.3", + "@angular/router": "^17.1.3", "@release-it/conventional-changelog": "^5.1.1", "@types/web-bluetooth": "0.0.6", "rxjs": "~7.8.0", "smoothie": "^1.35.0", "ts-jest": "^29.0.5", "tslib": "^2.3.0", - "zone.js": "~0.13.3" + "zone.js": "~0.14.3" }, "devDependencies": { "@angular-builders/jest": "^16.0.0", - "@angular-devkit/build-angular": "^16.2.12", - "@angular-devkit/core": "^16.2.12", - "@angular/cli": "^16.2.12", - "@angular/compiler-cli": "^16.2.12", - "@angular/language-service": "^16.2.12", + "@angular-devkit/build-angular": "^17.1.3", + "@angular-devkit/core": "^17.1.3", + "@angular/cli": "^17.1.3", + "@angular/compiler-cli": "^17.1.3", + "@angular/language-service": "^17.1.3", "@compodoc/compodoc": "^1.1.11", "@types/jasmine": "~3.6.0", "@types/jasminewd2": "~2.0.8", @@ -47,11 +47,11 @@ "karma-coverage": "~2.2.0", "karma-jasmine": "~5.1.0", "karma-jasmine-html-reporter": "~2.0.0", - "ng-packagr": "^16.2.3", + "ng-packagr": "^17.1.2", "protractor": "~7.0.0", "release-it": "^15.6.0", "ts-node": "~10.9.0", - "typescript": "~5.1.0" + "typescript": "~5.3.3" } }, "node_modules/@aduh95/viz.js": { @@ -95,6 +95,61 @@ "jest": ">=29" } }, + "node_modules/@angular-builders/jest/node_modules/@angular-devkit/core": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.12.tgz", + "integrity": "sha512-o6ziQs+EcEonFezrsA46jbZqkQrs4ckS1bAQj93g5ZjGtieUz8l/U3lclvKpL/iEzWkGVViSYuP2KyW2oqTDiQ==", + "dev": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-builders/jest/node_modules/jest-preset-angular": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-13.1.1.tgz", + "integrity": "sha512-X8i7icKt9U5uhj7YKqdEZm7ZZPvNFRxfBnU+9SALdIkHYJhwtlJ5/MUk9wo4f3lX2smOkIl9LPJUu1APO+11Jg==", + "dev": true, + "dependencies": { + "bs-logger": "^0.2.6", + "esbuild-wasm": ">=0.13.8", + "jest-environment-jsdom": "^29.0.0", + "jest-util": "^29.0.0", + "pretty-format": "^29.0.0", + "ts-jest": "^29.0.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "optionalDependencies": { + "esbuild": ">=0.13.8" + }, + "peerDependencies": { + "@angular-devkit/build-angular": ">=13.0.0 <17.0.0", + "@angular/compiler-cli": ">=13.0.0 <17.0.0", + "@angular/core": ">=13.0.0 <17.0.0", + "@angular/platform-browser-dynamic": ">=13.0.0 <17.0.0", + "jest": "^29.0.0", + "typescript": ">=4.4" + } + }, "node_modules/@angular-devkit/architect": { "version": "0.1602.12", "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.12.tgz", @@ -110,97 +165,126 @@ "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/build-angular": { + "node_modules/@angular-devkit/architect/node_modules/@angular-devkit/core": { "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.12.tgz", - "integrity": "sha512-VVGKZ0N3gyR0DP7VrcZl4io3ruWYT94mrlyJsJMLlrYy/EX8JCvqrJC9c+dscrtKjhZzjwdyhszkJQY4JfwACA==", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.12.tgz", + "integrity": "sha512-o6ziQs+EcEonFezrsA46jbZqkQrs4ckS1bAQj93g5ZjGtieUz8l/U3lclvKpL/iEzWkGVViSYuP2KyW2oqTDiQ==", + "dev": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-17.1.3.tgz", + "integrity": "sha512-pusFVSWMnrm2GrF3+Fw19OhA2rNw4WkfTMUruhaKAjW5QIvZ3wHYf+pH//1Ud+tuhFBi9BH7UALP2vnJMu1ehw==", "dev": true, "dependencies": { "@ampproject/remapping": "2.2.1", - "@angular-devkit/architect": "0.1602.12", - "@angular-devkit/build-webpack": "0.1602.12", - "@angular-devkit/core": "16.2.12", - "@babel/core": "7.22.9", - "@babel/generator": "7.22.9", + "@angular-devkit/architect": "0.1701.3", + "@angular-devkit/build-webpack": "0.1701.3", + "@angular-devkit/core": "17.1.3", + "@babel/core": "7.23.7", + "@babel/generator": "7.23.6", "@babel/helper-annotate-as-pure": "7.22.5", "@babel/helper-split-export-declaration": "7.22.6", - "@babel/plugin-proposal-async-generator-functions": "7.20.7", - "@babel/plugin-transform-async-to-generator": "7.22.5", - "@babel/plugin-transform-runtime": "7.22.9", - "@babel/preset-env": "7.22.9", - "@babel/runtime": "7.22.6", - "@babel/template": "7.22.5", + "@babel/plugin-transform-async-generator-functions": "7.23.7", + "@babel/plugin-transform-async-to-generator": "7.23.3", + "@babel/plugin-transform-runtime": "7.23.7", + "@babel/preset-env": "7.23.7", + "@babel/runtime": "7.23.7", "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "16.2.12", - "@vitejs/plugin-basic-ssl": "1.0.1", + "@ngtools/webpack": "17.1.3", + "@vitejs/plugin-basic-ssl": "1.0.2", "ansi-colors": "4.1.3", - "autoprefixer": "10.4.14", + "autoprefixer": "10.4.16", "babel-loader": "9.1.3", "babel-plugin-istanbul": "6.1.1", "browserslist": "^4.21.5", - "chokidar": "3.5.3", "copy-webpack-plugin": "11.0.0", "critters": "0.0.20", "css-loader": "6.8.1", - "esbuild-wasm": "0.18.17", - "fast-glob": "3.3.1", - "guess-parser": "0.4.22", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", + "esbuild-wasm": "0.19.11", + "fast-glob": "3.3.2", + "http-proxy-middleware": "2.0.6", + "https-proxy-agent": "7.0.2", + "inquirer": "9.2.12", "jsonc-parser": "3.2.0", "karma-source-map-support": "1.4.0", - "less": "4.1.3", + "less": "4.2.0", "less-loader": "11.1.0", "license-webpack-plugin": "4.0.2", "loader-utils": "3.2.1", - "magic-string": "0.30.1", + "magic-string": "0.30.5", "mini-css-extract-plugin": "2.7.6", - "mrmime": "1.0.1", + "mrmime": "2.0.0", "open": "8.4.2", "ora": "5.4.1", "parse5-html-rewriting-stream": "7.0.0", - "picomatch": "2.3.1", - "piscina": "4.0.0", - "postcss": "8.4.31", - "postcss-loader": "7.3.3", + "picomatch": "3.0.1", + "piscina": "4.2.1", + "postcss": "8.4.33", + "postcss-loader": "7.3.4", "resolve-url-loader": "5.0.0", "rxjs": "7.8.1", - "sass": "1.64.1", - "sass-loader": "13.3.2", + "sass": "1.69.7", + "sass-loader": "13.3.3", "semver": "7.5.4", - "source-map-loader": "4.0.1", + "source-map-loader": "5.0.0", "source-map-support": "0.5.21", - "terser": "5.19.2", + "terser": "5.26.0", "text-table": "0.2.0", "tree-kill": "1.2.2", - "tslib": "2.6.1", - "vite": "4.5.2", - "webpack": "5.88.2", + "tslib": "2.6.2", + "undici": "6.2.1", + "vite": "5.0.12", + "watchpack": "2.4.0", + "webpack": "5.89.0", "webpack-dev-middleware": "6.1.1", "webpack-dev-server": "4.15.1", - "webpack-merge": "5.9.0", + "webpack-merge": "5.10.0", "webpack-subresource-integrity": "5.1.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, "optionalDependencies": { - "esbuild": "0.18.17" + "esbuild": "0.19.11" }, "peerDependencies": { - "@angular/compiler-cli": "^16.0.0", - "@angular/localize": "^16.0.0", - "@angular/platform-server": "^16.0.0", - "@angular/service-worker": "^16.0.0", + "@angular/compiler-cli": "^17.0.0", + "@angular/localize": "^17.0.0", + "@angular/platform-server": "^17.0.0", + "@angular/service-worker": "^17.0.0", + "@web/test-runner": "^0.18.0", + "browser-sync": "^3.0.2", "jest": "^29.5.0", "jest-environment-jsdom": "^29.5.0", "karma": "^6.3.0", - "ng-packagr": "^16.0.0", + "ng-packagr": "^17.0.0", "protractor": "^7.0.0", "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=4.9.3 <5.2" + "typescript": ">=5.2 <5.4" }, "peerDependenciesMeta": { "@angular/localize": { @@ -212,6 +296,12 @@ "@angular/service-worker": { "optional": true }, + "@web/test-runner": { + "optional": true + }, + "browser-sync": { + "optional": true + }, "jest": { "optional": true }, @@ -232,26 +322,41 @@ } } }, + "node_modules/@angular-devkit/build-angular/node_modules/@angular-devkit/architect": { + "version": "0.1701.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1701.3.tgz", + "integrity": "sha512-K5rvhslbXNwx04cCLviEJCA27MwoJRMMzALFXySi9BqjZnZUOtZnOBuuCdrTPaRmFaYqGO4Im5GNzpbb/NB8zg==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "17.1.3", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, "node_modules/@angular-devkit/build-angular/node_modules/@babel/core": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", - "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", + "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.8", - "@babel/types": "^7.22.5", - "convert-source-map": "^1.7.0", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.6", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.23.7", + "@babel/parser": "^7.23.6", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.7", + "@babel/types": "^7.23.6", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.3", "semver": "^6.3.1" }, "engines": { @@ -271,635 +376,410 @@ "semver": "bin/semver.js" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/android-arm": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", - "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", - "cpu": [ - "arm" - ], + "node_modules/@angular-devkit/build-angular/node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.7.tgz", + "integrity": "sha512-PdxEpL71bJp1byMG0va5gwQcXHxuEYC/BgI/e88mGTtohbZN28O5Yit0Plkkm/dBzCF/BxmbNcses1RH1T+urA==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, "engines": { - "node": ">=12" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/android-arm64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", - "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", - "cpu": [ - "arm64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/@types/node": { + "version": "20.11.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.17.tgz", + "integrity": "sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==", "dev": true, "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" + "peer": true, + "dependencies": { + "undici-types": "~5.26.4" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/android-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", - "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", - "cpu": [ - "x64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/@vitejs/plugin-basic-ssl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.2.tgz", + "integrity": "sha512-DKHKVtpI+eA5fvObVgQ3QtTGU70CcCnedalzqmGSR050AzKZMdUzgC8KmlOneHWH8dF2hJ3wkC9+8FDVAaDRCw==", "dev": true, - "optional": true, - "os": [ - "android" - ], "engines": { - "node": ">=12" + "node": ">=14.6.0" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0 || ^5.0.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", - "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", - "cpu": [ - "arm64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "debug": "^4.3.4" + }, "engines": { - "node": ">=12" + "node": ">= 14" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/darwin-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", - "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", - "cpu": [ - "x64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@angular-devkit/build-angular/node_modules/esbuild-wasm": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.19.11.tgz", + "integrity": "sha512-MIhnpc1TxERUHomteO/ZZHp+kUawGEc03D/8vMHGzffLvbFLeDe6mwxqEZwlqBNY7SLWbyp6bBQAcCen8+wpjQ==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "bin": { + "esbuild": "bin/esbuild" + }, "engines": { "node": ">=12" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", - "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", - "cpu": [ - "arm64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, "engines": { - "node": ">=12" + "node": ">= 14" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/freebsd-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", - "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", - "cpu": [ - "x64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-arm": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", - "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", - "cpu": [ - "arm" - ], + "node_modules/@angular-devkit/build-angular/node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, "engines": { "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-arm64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", - "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", - "cpu": [ - "arm64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", "dev": true, - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">=12" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-ia32": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", - "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", - "cpu": [ - "ia32" - ], + "node_modules/@angular-devkit/build-angular/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-loong64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", - "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", - "cpu": [ - "loong64" - ], + "node_modules/@angular-devkit/build-angular/node_modules/vite": { + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.12.tgz", + "integrity": "sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "esbuild": "^0.19.3", + "postcss": "^8.4.32", + "rollup": "^4.2.0" + }, + "bin": { + "vite": "bin/vite.js" + }, "engines": { - "node": ">=12" + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-mips64el": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", - "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", - "cpu": [ - "mips64el" - ], + "node_modules/@angular-devkit/build-angular/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1701.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1701.3.tgz", + "integrity": "sha512-fpZtJf6yvXM7mX1T83caeYpa0e3zPv7sgKmx0ZIJKGL8+DETgNcCCeCTgui7HMBcHGCD8yj72DZ8xMMBWwVBIA==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@angular-devkit/architect": "0.1701.3", + "rxjs": "7.8.1" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-ppc64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", - "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", - "cpu": [ - "ppc64" - ], + "node_modules/@angular-devkit/build-webpack/node_modules/@angular-devkit/architect": { + "version": "0.1701.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1701.3.tgz", + "integrity": "sha512-K5rvhslbXNwx04cCLviEJCA27MwoJRMMzALFXySi9BqjZnZUOtZnOBuuCdrTPaRmFaYqGO4Im5GNzpbb/NB8zg==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@angular-devkit/core": "17.1.3", + "rxjs": "7.8.1" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-riscv64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", - "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", - "cpu": [ - "riscv64" - ], + "node_modules/@angular-devkit/core": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.1.3.tgz", + "integrity": "sha512-iuVK4hyW3YhusxIi8zGBvvVA9pWtDT3H6LQbWdVk9D3jXCZBIrEMklvAiJErqficKnUurf6gtFOeA8Fop6GotA==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "3.0.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-s390x": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", - "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", - "cpu": [ - "s390x" - ], + "node_modules/@angular-devkit/core/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", "dev": true, - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">=12" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/linux-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", - "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", - "cpu": [ - "x64" - ], + "node_modules/@angular-devkit/schematics": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.1.3.tgz", + "integrity": "sha512-zKoWG1hDfvi1vR9Hqoca9hWo9vDg8evmQvGcBW5jXR5ndZi5Oit/uDcGdA8WUKvBd1EG7WMqp0FgcDR9EA9WCw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "@angular-devkit/core": "17.1.3", + "jsonc-parser": "3.2.0", + "magic-string": "0.30.5", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/netbsd-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", - "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], + "node_modules/@angular/animations": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-17.1.3.tgz", + "integrity": "sha512-AS9CHOjjKqkuAzlKEMJfAkZfkIdSoagB3D8HwvH+ZHo6GVJc9KbtLQn/okNijFK+Fg7QK/hYbQ3lJhjgk0GQDA==", + "dependencies": { + "tslib": "^2.3.0" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0" + }, + "peerDependencies": { + "@angular/core": "17.1.3" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/openbsd-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", - "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" + "node_modules/@angular/cdk": { + "version": "17.1.2", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-17.1.2.tgz", + "integrity": "sha512-eu9D60RQv213qi7oh6ae9Z+d6+AG/aqi0y70Ag9BjwqTiatDiYvSySxswxYYKdzPp0hx0ZUTGi16LqtT6pyj6Q==", + "dependencies": { + "tslib": "^2.3.0" + }, + "optionalDependencies": { + "parse5": "^7.1.2" + }, + "peerDependencies": { + "@angular/common": "^17.0.0 || ^18.0.0", + "@angular/core": "^17.0.0 || ^18.0.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/sunos-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", - "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", - "cpu": [ - "x64" - ], + "node_modules/@angular/cli": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-17.1.3.tgz", + "integrity": "sha512-ysPWDdqo2cwfeskKVAg8p4C8xuezWcIWyW/ACSjWw6yp4OZvyVd6cGZrc0POVZzAPtTOYJSgWOpF/DCHQFluSg==", "dev": true, - "optional": true, - "os": [ - "sunos" - ], + "dependencies": { + "@angular-devkit/architect": "0.1701.3", + "@angular-devkit/core": "17.1.3", + "@angular-devkit/schematics": "17.1.3", + "@schematics/angular": "17.1.3", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "ini": "4.1.1", + "inquirer": "9.2.12", + "jsonc-parser": "3.2.0", + "npm-package-arg": "11.0.1", + "npm-pick-manifest": "9.0.0", + "open": "8.4.2", + "ora": "5.4.1", + "pacote": "17.0.5", + "resolve": "1.22.8", + "semver": "7.5.4", + "symbol-observable": "4.0.0", + "yargs": "17.7.2" + }, + "bin": { + "ng": "bin/ng.js" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/win32-arm64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", - "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", - "cpu": [ - "arm64" - ], + "node_modules/@angular/cli/node_modules/@angular-devkit/architect": { + "version": "0.1701.3", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1701.3.tgz", + "integrity": "sha512-K5rvhslbXNwx04cCLviEJCA27MwoJRMMzALFXySi9BqjZnZUOtZnOBuuCdrTPaRmFaYqGO4Im5GNzpbb/NB8zg==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@angular-devkit/core": "17.1.3", + "rxjs": "7.8.1" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/win32-ia32": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", - "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", - "cpu": [ - "ia32" - ], + "node_modules/@angular/cli/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/win32-x64": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", - "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", - "cpu": [ - "x64" - ], + "node_modules/@angular/cli/node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, "engines": { "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@angular-devkit/build-angular/node_modules/@ngtools/webpack": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.12.tgz", - "integrity": "sha512-f9R9Qsk8v+ffDxryl6PQ7Wnf2JCNd4dDXOH+d/AuF06VFiwcwGDRDZpmqkAXbFxQfcWTbT1FFvfoJ+SFcJgXLA==", - "dev": true, - "engines": { - "node": "^16.14.0 || >=18.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^16.0.0", - "typescript": ">=4.9.3 <5.2", - "webpack": "^5.54.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/esbuild": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", - "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.18.17", - "@esbuild/android-arm64": "0.18.17", - "@esbuild/android-x64": "0.18.17", - "@esbuild/darwin-arm64": "0.18.17", - "@esbuild/darwin-x64": "0.18.17", - "@esbuild/freebsd-arm64": "0.18.17", - "@esbuild/freebsd-x64": "0.18.17", - "@esbuild/linux-arm": "0.18.17", - "@esbuild/linux-arm64": "0.18.17", - "@esbuild/linux-ia32": "0.18.17", - "@esbuild/linux-loong64": "0.18.17", - "@esbuild/linux-mips64el": "0.18.17", - "@esbuild/linux-ppc64": "0.18.17", - "@esbuild/linux-riscv64": "0.18.17", - "@esbuild/linux-s390x": "0.18.17", - "@esbuild/linux-x64": "0.18.17", - "@esbuild/netbsd-x64": "0.18.17", - "@esbuild/openbsd-x64": "0.18.17", - "@esbuild/sunos-x64": "0.18.17", - "@esbuild/win32-arm64": "0.18.17", - "@esbuild/win32-ia32": "0.18.17", - "@esbuild/win32-x64": "0.18.17" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/esbuild-wasm": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", - "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", - "dev": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@angular-devkit/build-webpack": { - "version": "0.1602.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.12.tgz", - "integrity": "sha512-1lmR4jCkxPJuAFXReesEY3CB+/5jSebGE5ry6qJJvNm6kuSc9bzfTytrcwosVY+Q7kAA2ij7kAYw0loGbTjLWA==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1602.12", - "rxjs": "7.8.1" - }, - "engines": { - "node": "^16.14.0 || >=18.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "webpack": "^5.30.0", - "webpack-dev-server": "^4.0.0" - } - }, - "node_modules/@angular-devkit/core": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.12.tgz", - "integrity": "sha512-o6ziQs+EcEonFezrsA46jbZqkQrs4ckS1bAQj93g5ZjGtieUz8l/U3lclvKpL/iEzWkGVViSYuP2KyW2oqTDiQ==", - "dev": true, - "dependencies": { - "ajv": "8.12.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.2.0", - "picomatch": "2.3.1", - "rxjs": "7.8.1", - "source-map": "0.7.4" - }, - "engines": { - "node": "^16.14.0 || >=18.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^3.5.2" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/schematics": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.12.tgz", - "integrity": "sha512-lf/Nz2o875pllxGNUcI2by4rctfRsOZOxvaLq2UaH6XG6Re9tqeNfn40a8qXrr9/IYntXnlvEid/pd9e8gFBIw==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "16.2.12", - "jsonc-parser": "3.2.0", - "magic-string": "0.30.1", - "ora": "5.4.1", - "rxjs": "7.8.1" - }, - "engines": { - "node": "^16.14.0 || >=18.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/animations": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.12.tgz", - "integrity": "sha512-MD0ElviEfAJY8qMOd6/jjSSvtqER2RDAi0lxe6EtUacC1DHCYkaPrKW4vLqY+tmZBg1yf+6n+uS77pXcHHcA3w==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^16.14.0 || >=18.10.0" - }, - "peerDependencies": { - "@angular/core": "16.2.12" - } - }, - "node_modules/@angular/cdk": { - "version": "16.2.14", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-16.2.14.tgz", - "integrity": "sha512-n6PrGdiVeSTEmM/HEiwIyg6YQUUymZrb5afaNLGFRM5YL0Y8OBqd+XhCjb0OfD/AfgCUtedVEPwNqrfW8KzgGw==", - "dependencies": { - "tslib": "^2.3.0" - }, - "optionalDependencies": { - "parse5": "^7.1.2" - }, - "peerDependencies": { - "@angular/common": "^16.0.0 || ^17.0.0", - "@angular/core": "^16.0.0 || ^17.0.0", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/cli": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.12.tgz", - "integrity": "sha512-Pcbiraoqdw4rR2Ey5Ooy0ESLS1Ffbjkb6sPfinKRkHmAvyqsmlvkfbB/qK8GrzDSFSWvAKMMXRw9l8nbjvQEXg==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1602.12", - "@angular-devkit/core": "16.2.12", - "@angular-devkit/schematics": "16.2.12", - "@schematics/angular": "16.2.12", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "ini": "4.1.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.2.0", - "npm-package-arg": "10.1.0", - "npm-pick-manifest": "8.0.1", - "open": "8.4.2", - "ora": "5.4.1", - "pacote": "15.2.0", - "resolve": "1.22.2", - "semver": "7.5.4", - "symbol-observable": "4.0.0", - "yargs": "17.7.2" - }, - "bin": { - "ng": "bin/ng.js" - }, - "engines": { - "node": "^16.14.0 || >=18.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/cli/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@angular/cli/node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@angular/cli/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/@angular/cli/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -918,32 +798,32 @@ "dev": true }, "node_modules/@angular/common": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.12.tgz", - "integrity": "sha512-B+WY/cT2VgEaz9HfJitBmgdk4I333XG/ybC98CMC4Wz8E49T8yzivmmxXB3OD6qvjcOB6ftuicl6WBqLbZNg2w==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-17.1.3.tgz", + "integrity": "sha512-AzLzoNSeRSNGBQk0K+iG0XdYG36SDeJqYqE8rfoiWuv1NDFLL05UJM2/fQfaMNg0oX5bHOlHUqHFj3sFR/NVpw==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/core": "16.2.12", + "@angular/core": "17.1.3", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/compiler": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.12.tgz", - "integrity": "sha512-6SMXUgSVekGM7R6l1Z9rCtUGtlg58GFmgbpMCsGf+VXxP468Njw8rjT2YZkf5aEPxEuRpSHhDYjqz7n14cwCXQ==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-17.1.3.tgz", + "integrity": "sha512-k/s21gPPKStxVOLr6l4Y145OIxyBY7BhTPVOl/qEAgE+IcZ9vkiA8dYl8yjL884Kl1ZKPmFA3AofMJjWjZGNag==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/core": "16.2.12" + "@angular/core": "17.1.3" }, "peerDependenciesMeta": { "@angular/core": { @@ -952,9 +832,9 @@ } }, "node_modules/@angular/compiler-cli": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.12.tgz", - "integrity": "sha512-pWSrr152562ujh6lsFZR8NfNc5Ljj+zSTQO44DsuB0tZjwEpnRcjJEgzuhGXr+CoiBf+jTSPZKemtSktDk5aaA==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-17.1.3.tgz", + "integrity": "sha512-bNDHXo3Twub0BZK9OmXly+0REs0RuR1SUXlTAeq+0XubCvnBDvpg9peL7UTTGS5YRo9sUTBnR6faSUA1F5objQ==", "dev": true, "dependencies": { "@babel/core": "7.23.2", @@ -972,132 +852,132 @@ "ngcc": "bundles/ngcc/index.js" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/compiler": "16.2.12", - "typescript": ">=4.9.3 <5.2" + "@angular/compiler": "17.1.3", + "typescript": ">=5.2 <5.4" } }, "node_modules/@angular/core": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.12.tgz", - "integrity": "sha512-GLLlDeke/NjroaLYOks0uyzFVo6HyLl7VOm0K1QpLXnYvW63W9Ql/T3yguRZa7tRkOAeFZ3jw+1wnBD4O8MoUA==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-17.1.3.tgz", + "integrity": "sha512-2lZ4DRHN8KJ/aQads+YXIcx5Ri9yyeFIlw69m5Pn7wAi/+Rakg7IsclgLaWs7aBtWwMHG7LnqFKxAVq7CjXKtA==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.13.0" + "zone.js": "~0.14.0" } }, "node_modules/@angular/forms": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.12.tgz", - "integrity": "sha512-1Eao89hlBgLR3v8tU91vccn21BBKL06WWxl7zLpQmG6Hun+2jrThgOE4Pf3os4fkkbH4Apj0tWL2fNIWe/blbw==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-17.1.3.tgz", + "integrity": "sha512-aNa0jGLT5d+hnKVrSo8tk3TRo/NLNu1RxLNx8RhIczKAeCK3eD8SvTMy27iJtyXmNG2GWN7QPiDeGepd75nbxQ==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/common": "16.2.12", - "@angular/core": "16.2.12", - "@angular/platform-browser": "16.2.12", + "@angular/common": "17.1.3", + "@angular/core": "17.1.3", + "@angular/platform-browser": "17.1.3", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/language-service": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-16.2.12.tgz", - "integrity": "sha512-sZwB+ZEjChx9EYcqPaS4OnhC/q5RcedZjIdM9mCxuU/MtseURRYRI/8Hnm1RHo9qyc5PmsQpg7p9Vp/5hXLUjw==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-17.1.3.tgz", + "integrity": "sha512-SO1xXfLwfTvPzxzJoan/sx5Agt1k3WlpEO9siPlZdNsD6zCkRziS0DotWIblGFtxCPUA4x205V3ihx+gaFi3DA==", "dev": true, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" } }, "node_modules/@angular/material": { - "version": "16.2.14", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-16.2.14.tgz", - "integrity": "sha512-zQIxUb23elPfiIvddqkIDYqQhAHa9ZwMblfbv+ug8bxr4D0Dw360jIarxCgMjAcLj7Ccl3GBqZMUnVeM6cjthw==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/auto-init": "15.0.0-canary.bc9ae6c9c.0", - "@material/banner": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/button": "15.0.0-canary.bc9ae6c9c.0", - "@material/card": "15.0.0-canary.bc9ae6c9c.0", - "@material/checkbox": "15.0.0-canary.bc9ae6c9c.0", - "@material/chips": "15.0.0-canary.bc9ae6c9c.0", - "@material/circular-progress": "15.0.0-canary.bc9ae6c9c.0", - "@material/data-table": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dialog": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/drawer": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/fab": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/floating-label": "15.0.0-canary.bc9ae6c9c.0", - "@material/form-field": "15.0.0-canary.bc9ae6c9c.0", - "@material/icon-button": "15.0.0-canary.bc9ae6c9c.0", - "@material/image-list": "15.0.0-canary.bc9ae6c9c.0", - "@material/layout-grid": "15.0.0-canary.bc9ae6c9c.0", - "@material/line-ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/linear-progress": "15.0.0-canary.bc9ae6c9c.0", - "@material/list": "15.0.0-canary.bc9ae6c9c.0", - "@material/menu": "15.0.0-canary.bc9ae6c9c.0", - "@material/menu-surface": "15.0.0-canary.bc9ae6c9c.0", - "@material/notched-outline": "15.0.0-canary.bc9ae6c9c.0", - "@material/radio": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/segmented-button": "15.0.0-canary.bc9ae6c9c.0", - "@material/select": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/slider": "15.0.0-canary.bc9ae6c9c.0", - "@material/snackbar": "15.0.0-canary.bc9ae6c9c.0", - "@material/switch": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab-bar": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab-indicator": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab-scroller": "15.0.0-canary.bc9ae6c9c.0", - "@material/textfield": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tooltip": "15.0.0-canary.bc9ae6c9c.0", - "@material/top-app-bar": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "17.1.2", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-17.1.2.tgz", + "integrity": "sha512-50n7JDWtWGCxfrMKVKZ2wqkdozukA3IWeypQgXxzZc+4jqgT6Vj8/U4xNvcO9OgPLMOaTvktfT+wzUmCKJ0sng==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/auto-init": "15.0.0-canary.7f224ddd4.0", + "@material/banner": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/button": "15.0.0-canary.7f224ddd4.0", + "@material/card": "15.0.0-canary.7f224ddd4.0", + "@material/checkbox": "15.0.0-canary.7f224ddd4.0", + "@material/chips": "15.0.0-canary.7f224ddd4.0", + "@material/circular-progress": "15.0.0-canary.7f224ddd4.0", + "@material/data-table": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dialog": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/drawer": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/fab": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/floating-label": "15.0.0-canary.7f224ddd4.0", + "@material/form-field": "15.0.0-canary.7f224ddd4.0", + "@material/icon-button": "15.0.0-canary.7f224ddd4.0", + "@material/image-list": "15.0.0-canary.7f224ddd4.0", + "@material/layout-grid": "15.0.0-canary.7f224ddd4.0", + "@material/line-ripple": "15.0.0-canary.7f224ddd4.0", + "@material/linear-progress": "15.0.0-canary.7f224ddd4.0", + "@material/list": "15.0.0-canary.7f224ddd4.0", + "@material/menu": "15.0.0-canary.7f224ddd4.0", + "@material/menu-surface": "15.0.0-canary.7f224ddd4.0", + "@material/notched-outline": "15.0.0-canary.7f224ddd4.0", + "@material/radio": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/segmented-button": "15.0.0-canary.7f224ddd4.0", + "@material/select": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/slider": "15.0.0-canary.7f224ddd4.0", + "@material/snackbar": "15.0.0-canary.7f224ddd4.0", + "@material/switch": "15.0.0-canary.7f224ddd4.0", + "@material/tab": "15.0.0-canary.7f224ddd4.0", + "@material/tab-bar": "15.0.0-canary.7f224ddd4.0", + "@material/tab-indicator": "15.0.0-canary.7f224ddd4.0", + "@material/tab-scroller": "15.0.0-canary.7f224ddd4.0", + "@material/textfield": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tooltip": "15.0.0-canary.7f224ddd4.0", + "@material/top-app-bar": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/animations": "^16.0.0 || ^17.0.0", - "@angular/cdk": "16.2.14", - "@angular/common": "^16.0.0 || ^17.0.0", - "@angular/core": "^16.0.0 || ^17.0.0", - "@angular/forms": "^16.0.0 || ^17.0.0", - "@angular/platform-browser": "^16.0.0 || ^17.0.0", + "@angular/animations": "^17.0.0 || ^18.0.0", + "@angular/cdk": "17.1.2", + "@angular/common": "^17.0.0 || ^18.0.0", + "@angular/core": "^17.0.0 || ^18.0.0", + "@angular/forms": "^17.0.0 || ^18.0.0", + "@angular/platform-browser": "^17.0.0 || ^18.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/platform-browser": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.12.tgz", - "integrity": "sha512-NnH7ju1iirmVEsUq432DTm0nZBGQsBrU40M3ZeVHMQ2subnGiyUs3QyzDz8+VWLL/T5xTxWLt9BkDn65vgzlIQ==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-17.1.3.tgz", + "integrity": "sha512-onPCvdk9f/6OhOo2zP6nfGKpzLma1QIxpFqD3jymbmIJTcVMOOQDMYW3eLtY+uSX8ribcJ7GQcbDGIM4rliTFg==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/animations": "16.2.12", - "@angular/common": "16.2.12", - "@angular/core": "16.2.12" + "@angular/animations": "17.1.3", + "@angular/common": "17.1.3", + "@angular/core": "17.1.3" }, "peerDependenciesMeta": { "@angular/animations": { @@ -1106,36 +986,36 @@ } }, "node_modules/@angular/platform-browser-dynamic": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.12.tgz", - "integrity": "sha512-ya54jerNgreCVAR278wZavwjrUWImMr2F8yM5n9HBvsMBbFaAQ83anwbOEiHEF2BlR+gJiEBLfpuPRMw20pHqw==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-17.1.3.tgz", + "integrity": "sha512-0lFhcFJfDzCSSVe8l8OY+UgUiwUwcbxwpvLod3XWBpf1iEUlr5720FIMA3VJYwpW3Oj4Uey3nVm13EMtRqpqdA==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/common": "16.2.12", - "@angular/compiler": "16.2.12", - "@angular/core": "16.2.12", - "@angular/platform-browser": "16.2.12" + "@angular/common": "17.1.3", + "@angular/compiler": "17.1.3", + "@angular/core": "17.1.3", + "@angular/platform-browser": "17.1.3" } }, "node_modules/@angular/router": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.12.tgz", - "integrity": "sha512-aU6QnYSza005V9P3W6PpkieL56O0IHps96DjqI1RS8yOJUl3THmokqYN4Fm5+HXy4f390FN9i6ftadYQDKeWmA==", + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-17.1.3.tgz", + "integrity": "sha512-6HigdtFjm+76UU2hiLGLE2SpOecQhD6TnAVTocDuRitpN5m0dyiffBrqxarfNwoZuMdIiXyqClJR4JRo1rJjoQ==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/common": "16.2.12", - "@angular/core": "16.2.12", - "@angular/platform-browser": "16.2.12", + "@angular/common": "17.1.3", + "@angular/core": "17.1.3", + "@angular/platform-browser": "17.1.3", "rxjs": "^6.5.3 || ^7.4.0" } }, @@ -1194,33 +1074,6 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core/node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/core/node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -1235,11 +1088,11 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", - "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", "dependencies": { - "@babel/types": "^7.22.5", + "@babel/types": "^7.23.6", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -1389,19 +1242,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-function-name/node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-hoist-variables": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", @@ -1580,20 +1420,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helpers": { "version": "7.23.9", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.9.tgz", @@ -1607,19 +1433,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helpers/node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/highlight": { "version": "7.23.4", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", @@ -1676,22 +1489,20 @@ "@babel/core": "^7.13.0" } }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz", + "integrity": "sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, "node_modules/@babel/plugin-proposal-private-property-in-object": { @@ -1706,22 +1517,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -2019,14 +1814,14 @@ } }, "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", - "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz", + "integrity": "sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.5" + "@babel/helper-remap-async-to-generator": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -2136,20 +1931,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", - "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.23.9", - "@babel/types": "^7.23.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/plugin-transform-destructuring": { "version": "7.23.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz", @@ -2633,16 +2414,16 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", - "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.7.tgz", + "integrity": "sha512-fa0hnfmiXc9fq/weK34MUV0drz2pOL/vfKWvN7Qw127hiUPabFCUMgAbYWcchRzMJit4o5ARsK/s+5h0249pLw==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "babel-plugin-polyfill-corejs2": "^0.4.4", - "babel-plugin-polyfill-corejs3": "^0.8.2", - "babel-plugin-polyfill-regenerator": "^0.5.1", + "babel-plugin-polyfill-corejs2": "^0.4.7", + "babel-plugin-polyfill-corejs3": "^0.8.7", + "babel-plugin-polyfill-regenerator": "^0.5.4", "semver": "^6.3.1" }, "engines": { @@ -2801,25 +2582,26 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", - "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.7.tgz", + "integrity": "sha512-SY27X/GtTz/L4UryMNJ6p4fH4nsgWbz84y9FE0bQeWJP6O5BhgVCt53CotQKHCOeXJel8VyhlhujhlltKms/CA==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.23.3", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.23.3", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.23.7", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", "@babel/plugin-syntax-class-static-block": "^7.14.5", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.22.5", - "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-assertions": "^7.23.3", + "@babel/plugin-syntax-import-attributes": "^7.23.3", "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", @@ -2831,59 +2613,58 @@ "@babel/plugin-syntax-private-property-in-object": "^7.14.5", "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.7", - "@babel/plugin-transform-async-to-generator": "^7.22.5", - "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.5", - "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", - "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.5", - "@babel/plugin-transform-dotall-regex": "^7.22.5", - "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", - "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", - "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", - "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", - "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", - "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-arrow-functions": "^7.23.3", + "@babel/plugin-transform-async-generator-functions": "^7.23.7", + "@babel/plugin-transform-async-to-generator": "^7.23.3", + "@babel/plugin-transform-block-scoped-functions": "^7.23.3", + "@babel/plugin-transform-block-scoping": "^7.23.4", + "@babel/plugin-transform-class-properties": "^7.23.3", + "@babel/plugin-transform-class-static-block": "^7.23.4", + "@babel/plugin-transform-classes": "^7.23.5", + "@babel/plugin-transform-computed-properties": "^7.23.3", + "@babel/plugin-transform-destructuring": "^7.23.3", + "@babel/plugin-transform-dotall-regex": "^7.23.3", + "@babel/plugin-transform-duplicate-keys": "^7.23.3", + "@babel/plugin-transform-dynamic-import": "^7.23.4", + "@babel/plugin-transform-exponentiation-operator": "^7.23.3", + "@babel/plugin-transform-export-namespace-from": "^7.23.4", + "@babel/plugin-transform-for-of": "^7.23.6", + "@babel/plugin-transform-function-name": "^7.23.3", + "@babel/plugin-transform-json-strings": "^7.23.4", + "@babel/plugin-transform-literals": "^7.23.3", + "@babel/plugin-transform-logical-assignment-operators": "^7.23.4", + "@babel/plugin-transform-member-expression-literals": "^7.23.3", + "@babel/plugin-transform-modules-amd": "^7.23.3", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@babel/plugin-transform-modules-systemjs": "^7.23.3", + "@babel/plugin-transform-modules-umd": "^7.23.3", "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", - "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", - "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.6", - "@babel/plugin-transform-parameters": "^7.22.5", - "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", - "@babel/plugin-transform-property-literals": "^7.22.5", - "@babel/plugin-transform-regenerator": "^7.22.5", - "@babel/plugin-transform-reserved-words": "^7.22.5", - "@babel/plugin-transform-shorthand-properties": "^7.22.5", - "@babel/plugin-transform-spread": "^7.22.5", - "@babel/plugin-transform-sticky-regex": "^7.22.5", - "@babel/plugin-transform-template-literals": "^7.22.5", - "@babel/plugin-transform-typeof-symbol": "^7.22.5", - "@babel/plugin-transform-unicode-escapes": "^7.22.5", - "@babel/plugin-transform-unicode-property-regex": "^7.22.5", - "@babel/plugin-transform-unicode-regex": "^7.22.5", - "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.22.5", - "babel-plugin-polyfill-corejs2": "^0.4.4", - "babel-plugin-polyfill-corejs3": "^0.8.2", - "babel-plugin-polyfill-regenerator": "^0.5.1", + "@babel/plugin-transform-new-target": "^7.23.3", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.23.4", + "@babel/plugin-transform-numeric-separator": "^7.23.4", + "@babel/plugin-transform-object-rest-spread": "^7.23.4", + "@babel/plugin-transform-object-super": "^7.23.3", + "@babel/plugin-transform-optional-catch-binding": "^7.23.4", + "@babel/plugin-transform-optional-chaining": "^7.23.4", + "@babel/plugin-transform-parameters": "^7.23.3", + "@babel/plugin-transform-private-methods": "^7.23.3", + "@babel/plugin-transform-private-property-in-object": "^7.23.4", + "@babel/plugin-transform-property-literals": "^7.23.3", + "@babel/plugin-transform-regenerator": "^7.23.3", + "@babel/plugin-transform-reserved-words": "^7.23.3", + "@babel/plugin-transform-shorthand-properties": "^7.23.3", + "@babel/plugin-transform-spread": "^7.23.3", + "@babel/plugin-transform-sticky-regex": "^7.23.3", + "@babel/plugin-transform-template-literals": "^7.23.3", + "@babel/plugin-transform-typeof-symbol": "^7.23.3", + "@babel/plugin-transform-unicode-escapes": "^7.23.3", + "@babel/plugin-transform-unicode-property-regex": "^7.23.3", + "@babel/plugin-transform-unicode-regex": "^7.23.3", + "@babel/plugin-transform-unicode-sets-regex": "^7.23.3", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.7", + "babel-plugin-polyfill-corejs3": "^0.8.7", + "babel-plugin-polyfill-regenerator": "^0.5.4", "core-js-compat": "^3.31.0", "semver": "^6.3.1" }, @@ -2904,19 +2685,17 @@ } }, "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, "node_modules/@babel/regjsgen": { @@ -2926,25 +2705,25 @@ "dev": true }, "node_modules/@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.7.tgz", + "integrity": "sha512-w06OXVOFso7LcbzMiDGt+3X7Rh7Ho8MmgPoWU3rarH+8upf+wSU/grlGbWzQyr3DkdN6ZeuMFjpdwW0Q+HxobA==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.23.9.tgz", + "integrity": "sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==", "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.23.9", + "@babel/types": "^7.23.9" }, "engines": { "node": ">=6.9.0" @@ -2970,20 +2749,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/types": { "version": "7.23.9", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.9.tgz", @@ -3366,9 +3131,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", - "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", + "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", "cpu": [ "ppc64" ], @@ -3382,9 +3147,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", + "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", "cpu": [ "arm" ], @@ -3398,9 +3163,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", + "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", "cpu": [ "arm64" ], @@ -3414,9 +3179,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", + "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", "cpu": [ "x64" ], @@ -3430,9 +3195,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", + "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", "cpu": [ "arm64" ], @@ -3446,9 +3211,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", + "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", "cpu": [ "x64" ], @@ -3462,9 +3227,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", + "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", "cpu": [ "arm64" ], @@ -3478,9 +3243,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", + "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", "cpu": [ "x64" ], @@ -3494,9 +3259,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", + "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", "cpu": [ "arm" ], @@ -3510,9 +3275,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", + "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", "cpu": [ "arm64" ], @@ -3526,9 +3291,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", + "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", "cpu": [ "ia32" ], @@ -3542,9 +3307,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", + "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", "cpu": [ "loong64" ], @@ -3558,9 +3323,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", + "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", "cpu": [ "mips64el" ], @@ -3574,9 +3339,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", + "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", "cpu": [ "ppc64" ], @@ -3590,9 +3355,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", + "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", "cpu": [ "riscv64" ], @@ -3606,9 +3371,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", + "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", "cpu": [ "s390x" ], @@ -3622,9 +3387,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", + "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", "cpu": [ "x64" ], @@ -3638,9 +3403,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", + "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", "cpu": [ "x64" ], @@ -3654,9 +3419,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", + "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", "cpu": [ "x64" ], @@ -3670,9 +3435,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", + "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", "cpu": [ "x64" ], @@ -3686,9 +3451,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", + "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", "cpu": [ "arm64" ], @@ -3702,9 +3467,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", + "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", "cpu": [ "ia32" ], @@ -3718,9 +3483,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", + "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", "cpu": [ "x64" ], @@ -3733,6 +3498,15 @@ "node": ">=12" } }, + "node_modules/@fastify/busboy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", + "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@foliojs-fork/fontkit": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/@foliojs-fork/fontkit/-/fontkit-1.9.1.tgz", @@ -3786,12 +3560,6 @@ "integrity": "sha512-59SgoZ3EXbkfSX7b63tsou/SDGzwUEK6MuB5sKqgVK1/XE0fxmpsOb9DQI8LXW3KfGnAjImCGhhEb7uPPAUVNA==", "dev": true }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, "node_modules/@hutson/parse-repository-url": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz", @@ -4681,758 +4449,786 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, + "node_modules/@ljharb/through": { + "version": "2.3.12", + "resolved": "https://registry.npmjs.org/@ljharb/through/-/through-2.3.12.tgz", + "integrity": "sha512-ajo/heTlG3QgC8EGP6APIejksVAYt4ayz4tqoP3MolFELzcH1x1fzwEYRJTPO0IELutZ5HQ0c26/GqAYy79u3g==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/@material/animation": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/animation/-/animation-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-leRf+BcZTfC/iSigLXnYgcHAGvFVQveoJT5+2PIRdyPI/bIG7hhciRgacHRsCKC0sGya81dDblLgdkjSUemYLw==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/animation/-/animation-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-1GSJaPKef+7HRuV+HusVZHps64cmZuOItDbt40tjJVaikcaZvwmHlcTxRIqzcRoCdt5ZKHh3NoO7GB9Khg4Jnw==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@material/auto-init": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/auto-init/-/auto-init-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-uxzDq7q3c0Bu1pAsMugc1Ik9ftQYQqZY+5e2ybNplT8gTImJhNt4M2mMiMHbMANk2l3UgICmUyRSomgPBWCPIA==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/auto-init/-/auto-init-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-t7ZGpRJ3ec0QDUO0nJu/SMgLW7qcuG2KqIsEYD1Ej8qhI2xpdR2ydSDQOkVEitXmKoGol1oq4nYSBjTlB65GqA==", "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/banner": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/banner/-/banner-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-SHeVoidCUFVhXANN6MNWxK9SZoTSgpIP8GZB7kAl52BywLxtV+FirTtLXkg/8RUkxZRyRWl7HvQ0ZFZa7QQAyA==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/button": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/banner/-/banner-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-g9wBUZzYBizyBcBQXTIafnRUUPi7efU9gPJfzeGgkynXiccP/vh5XMmH+PBxl5v+4MlP/d4cZ2NUYoAN7UTqSA==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/button": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/base": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/base/-/base-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-Fc3vGuOf+duGo22HTRP6dHdc+MUe0VqQfWOuKrn/wXKD62m0QQR2TqJd3rRhCumH557T5QUyheW943M3E+IGfg==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/base/-/base-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-I9KQOKXpLfJkP8MqZyr8wZIzdPHrwPjFvGd9zSK91/vPyE4hzHRJc/0njsh9g8Lm9PRYLbifXX+719uTbHxx+A==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@material/button": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/button/-/button-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-3AQgwrPZCTWHDJvwgKq7Cj+BurQ4wTjDdGL+FEnIGUAjJDskwi1yzx5tW2Wf/NxIi7IoPFyOY3UB41jwMiOrnw==", - "dependencies": { - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/button/-/button-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-BHB7iyHgRVH+JF16+iscR+Qaic+p7LU1FOLgP8KucRlpF9tTwIxQA6mJwGRi5gUtcG+vyCmzVS+hIQ6DqT/7BA==", + "dependencies": { + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/card": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/card/-/card-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-nPlhiWvbLmooTnBmV5gmzB0eLWSgLKsSRBYAbIBmO76Okgz1y+fQNLag+lpm/TDaHVsn5fmQJH8e0zIg0rYsQA==", - "dependencies": { - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/card/-/card-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-kt7y9/IWOtJTr3Z/AoWJT3ZLN7CLlzXhx2udCLP9ootZU2bfGK0lzNwmo80bv/pJfrY9ihQKCtuGTtNxUy+vIw==", + "dependencies": { + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/checkbox": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/checkbox/-/checkbox-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-4tpNnO1L0IppoMF3oeQn8F17t2n0WHB0D7mdJK9rhrujen/fLbekkIC82APB3fdGtLGg3qeNqDqPsJm1YnmrwA==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/checkbox/-/checkbox-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-rURcrL5O1u6hzWR+dNgiQ/n89vk6tdmdP3mZgnxJx61q4I/k1yijKqNJSLrkXH7Rto3bM5NRKMOlgvMvVd7UMQ==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/chips": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/chips/-/chips-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-fqHKvE5bSWK0bXVkf57MWxZtytGqYBZvvHIOs4JI9HPHEhaJy4CpSw562BEtbm3yFxxALoQknvPW2KYzvADnmA==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/checkbox": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/chips/-/chips-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-AYAivV3GSk/T/nRIpH27sOHFPaSMrE3L0WYbnb5Wa93FgY8a0fbsFYtSH2QmtwnzXveg+B1zGTt7/xIIcynKdQ==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/checkbox": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "safevalues": "^0.3.4", "tslib": "^2.1.0" } }, "node_modules/@material/circular-progress": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/circular-progress/-/circular-progress-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-Lxe8BGAxQwCQqrLhrYrIP0Uok10h7aYS3RBXP41ph+5GmwJd5zdyE2t93qm2dyThvU6qKuXw9726Dtq/N+wvZQ==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/progress-indicator": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/circular-progress/-/circular-progress-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-DJrqCKb+LuGtjNvKl8XigvyK02y36GRkfhMUYTcJEi3PrOE00bwXtyj7ilhzEVshQiXg6AHGWXtf5UqwNrx3Ow==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/progress-indicator": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/data-table": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/data-table/-/data-table-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-j/7qplT9+sUpfe4pyWhPbl01qJA+OoNAG3VMJruBBR461ZBKyTi7ssKH9yksFGZ8eCEPkOsk/+kDxsiZvRWkeQ==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/checkbox": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/icon-button": "15.0.0-canary.bc9ae6c9c.0", - "@material/linear-progress": "15.0.0-canary.bc9ae6c9c.0", - "@material/list": "15.0.0-canary.bc9ae6c9c.0", - "@material/menu": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/select": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/data-table/-/data-table-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-/2WZsuBIq9z9RWYF5Jo6b7P6u0fwit+29/mN7rmAZ6akqUR54nXyNfoSNiyydMkzPlZZsep5KrSHododDhBZbA==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/checkbox": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/icon-button": "15.0.0-canary.7f224ddd4.0", + "@material/linear-progress": "15.0.0-canary.7f224ddd4.0", + "@material/list": "15.0.0-canary.7f224ddd4.0", + "@material/menu": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/select": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/density": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/density/-/density-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-Zt3u07fXrBWLW06Tl5fgvjicxNQMkFdawLyNTzZ5TvbXfVkErILLePwwGaw8LNcvzqJP6ABLA8jiR+sKNoJQCg==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/density/-/density-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-o9EXmGKVpiQ6mHhyV3oDDzc78Ow3E7v8dlaOhgaDSXgmqaE8v5sIlLNa/LKSyUga83/fpGk3QViSGXotpQx0jA==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@material/dialog": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/dialog/-/dialog-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-o+9a/fmwJ9+gY3Z/uhj/PMVJDq7it1NTWKJn2GwAKdB+fDkT4hb9qEdcxMPyvJJ5ups+XiKZo03+tZrD+38c1w==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/button": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/icon-button": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/dialog/-/dialog-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-u0XpTlv1JqWC/bQ3DavJ1JguofTelLT2wloj59l3/1b60jv42JQ6Am7jU3I8/SIUB1MKaW7dYocXjDWtWJakLA==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/button": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/icon-button": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/dom": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/dom/-/dom-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-ly78R7aoCJtundSUu0UROU+5pQD5Piae0Y1MkN6bs0724azeazX1KeXFeaf06JOXnlr5/41ol+fSUPowjoqnOg==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/dom/-/dom-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-mQ1HT186GPQSkRg5S18i70typ5ZytfjL09R0gJ2Qg5/G+MLCGi7TAjZZSH65tuD/QGOjel4rDdWOTmYbPYV6HA==", "dependencies": { - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/drawer": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/drawer/-/drawer-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-PFL4cEFnt7VTxDsuspFVNhsFDYyumjU0VWfj3PWB7XudsEfQ3lo85D3HCEtTTbRsCainGN8bgYNDNafLBqiigw==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/list": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/drawer/-/drawer-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-qyO0W0KBftfH8dlLR0gVAgv7ZHNvU8ae11Ao6zJif/YxcvK4+gph1z8AO4H410YmC2kZiwpSKyxM1iQCCzbb4g==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/list": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/elevation": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/elevation/-/elevation-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-Ro+Pk8jFuap+T0B0shA3xI1hs2b89dNQ2EIPCNjNMp87emHKAzJfhKb7EZGIwv3+gFLlVaLyIVkb94I89KLsyg==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/elevation/-/elevation-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-tV6s4/pUBECedaI36Yj18KmRCk1vfue/JP/5yYRlFNnLMRVISePbZaKkn/BHXVf+26I3W879+XqIGlDVdmOoMA==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/fab": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/fab/-/fab-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-dvU0KWMRglwJEQwmQtFAmJcAjzg9VFF6Aqj78bJYu/DAIGFJ1VTTTSgoXM/XCm1YyQEZ7kZRvxBO37CH54rSDg==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/fab/-/fab-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-4h76QrzfZTcPdd+awDPZ4Q0YdSqsXQnS540TPtyXUJ/5G99V6VwGpjMPIxAsW0y+pmI9UkLL/srrMaJec+7r4Q==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/feature-targeting": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/feature-targeting/-/feature-targeting-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-wkDjVcoVEYYaJvun28IXdln/foLgPD7n9ZC9TY76GErGCwTq+HWpU6wBAAk+ePmpRFDayw4vI4wBlaWGxLtysQ==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/feature-targeting/-/feature-targeting-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-SAjtxYh6YlKZriU83diDEQ7jNSP2MnxKsER0TvFeyG1vX/DWsUyYDOIJTOEa9K1N+fgJEBkNK8hY55QhQaspew==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@material/floating-label": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-bUWPtXzZITOD/2mkvLkEPO1ngDWmb74y0Kgbz6llHLOQBtycyJIpuoQJ1q2Ez0NM/tFLwPphhAgRqmL3YQ/Kzw==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-0KMo5ijjYaEHPiZ2pCVIcbaTS2LycvH9zEhEMKwPPGssBCX7iz5ffYQFk7e5yrQand1r3jnQQgYfHAwtykArnQ==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/focus-ring": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/focus-ring/-/focus-ring-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-cZHThVose3GvAlJzpJoBI1iqL6d1/Jj9hXrR+r8Mwtb1hBIUEG3hxfsRd4vGREuzROPlf0OgNf/V+YHoSwgR5w==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/focus-ring/-/focus-ring-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-Jmg1nltq4J6S6A10EGMZnvufrvU3YTi+8R8ZD9lkSbun0Fm2TVdICQt/Auyi6An9zP66oQN6c31eqO6KfIPsDg==", "dependencies": { - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0" + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0" } }, "node_modules/@material/form-field": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/form-field/-/form-field-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-+JFXy5X44Gue1CbZZAQ6YejnI203lebYwL0i6k0ylDpWHEOdD5xkF2PyHR28r9/65Ebcbwbff6q7kI1SGoT7MA==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/form-field/-/form-field-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-fEPWgDQEPJ6WF7hNnIStxucHR9LE4DoDSMqCsGWS2Yu+NLZYLuCEecgR0UqQsl1EQdNRaFh8VH93KuxGd2hiPg==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/icon-button": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/icon-button/-/icon-button-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-1a0MHgyIwOs4RzxrVljsqSizGYFlM1zY2AZaLDsgT4G3kzsplTx8HZQ022GpUCjAygW+WLvg4z1qAhQHvsbqlw==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/icon-button/-/icon-button-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-DcK7IL4ICY/DW+48YQZZs9g0U1kRaW0Wb0BxhvppDMYziHo/CTpFdle4gjyuTyRxPOdHQz5a97ru48Z9O4muTw==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/image-list": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/image-list/-/image-list-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-WKWmiYap2iu4QdqmeUSliLlN4O2Ueqa0OuVAYHn/TCzmQ2xmnhZ1pvDLbs6TplpOmlki7vFfe+aSt5SU9gwfOQ==", - "dependencies": { - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/image-list/-/image-list-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-voMjG2p80XbjL1B2lmF65zO5gEgJOVKClLdqh4wbYzYfwY/SR9c8eLvlYG7DLdFaFBl/7gGxD8TvvZ329HUFPw==", + "dependencies": { + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/layout-grid": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/layout-grid/-/layout-grid-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-5GqmT6oTZhUGWIb+CLD0ZNyDyTiJsr/rm9oRIi3+vCujACwxFkON9tzBlZohdtFS16nuzUusthN6Jt9UrJcN6Q==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/layout-grid/-/layout-grid-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-veDABLxMn2RmvfnUO2RUmC1OFfWr4cU+MrxKPoDD2hl3l3eDYv5fxws6r5T1JoSyXoaN+oEZpheS0+M9Ure8Pg==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@material/line-ripple": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/line-ripple/-/line-ripple-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-8S30WXEuUdgDdBulzUDlPXD6qMzwCX9SxYb5mGDYLwl199cpSGdXHtGgEcCjokvnpLhdZhcT1Dsxeo1g2Evh5Q==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/line-ripple/-/line-ripple-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-f60hVJhIU6I3/17Tqqzch1emUKEcfVVgHVqADbU14JD+oEIz429ZX9ksZ3VChoU3+eejFl+jVdZMLE/LrAuwpg==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/linear-progress": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/linear-progress/-/linear-progress-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-6EJpjrz6aoH2/gXLg9iMe0yF2C42hpQyZoHpmcgTLKeci85ktDvJIjwup8tnk8ULQyFiGiIrhXw2v2RSsiFjvQ==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/progress-indicator": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/linear-progress/-/linear-progress-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-pRDEwPQielDiC9Sc5XhCXrGxP8wWOnAO8sQlMebfBYHYqy5hhiIzibezS8CSaW4MFQFyXmCmpmqWlbqGYRmiyg==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/progress-indicator": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/list": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/list/-/list-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-TQ1ppqiCMQj/P7bGD4edbIIv4goczZUoiUAaPq/feb1dflvrFMzYqJ7tQRRCyBL8nRhJoI2x99tk8Q2RXvlGUQ==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/list/-/list-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-Is0NV91sJlXF5pOebYAtWLF4wU2MJDbYqztML/zQNENkQxDOvEXu3nWNb3YScMIYJJXvARO0Liur5K4yPagS1Q==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/menu": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/menu/-/menu-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-IlAh61xzrzxXs38QZlt74UYt8J431zGznSzDtB1Fqs6YFNd11QPKoiRXn1J2Qu/lUxbFV7i8NBKMCKtia0n6/Q==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/list": "15.0.0-canary.bc9ae6c9c.0", - "@material/menu-surface": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/menu/-/menu-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-D11QU1dXqLbh5X1zKlEhS3QWh0b5BPNXlafc5MXfkdJHhOiieb7LC9hMJhbrHtj24FadJ7evaFW/T2ugJbJNnQ==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/list": "15.0.0-canary.7f224ddd4.0", + "@material/menu-surface": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/menu-surface": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/menu-surface/-/menu-surface-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-dMtSPN+olTWE+08M5qe4ea1IZOhVryYqzK0Gyb2u1G75rSArUxCOB5rr6OC/ST3Mq3RS6zGuYo7srZt4534K9Q==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/menu-surface/-/menu-surface-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-7RZHvw0gbwppaAJ/Oh5SWmfAKJ62aw1IMB3+3MRwsb5PLoV666wInYa+zJfE4i7qBeOn904xqT2Nko5hY0ssrg==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/notched-outline": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/notched-outline/-/notched-outline-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-WuurMg44xexkvLTBTnsO0A+qnzFjpcPdvgWBGstBepYozsvSF9zJGdb1x7Zv1MmqbpYh/Ohnuxtb/Y3jOh6irg==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/floating-label": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/notched-outline/-/notched-outline-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-Yg2usuKB2DKlKIBISbie9BFsOVuffF71xjbxPbybvqemxqUBd+bD5/t6H1fLE+F8/NCu5JMigho4ewUU+0RCiw==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/floating-label": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/progress-indicator": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/progress-indicator/-/progress-indicator-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-uOnsvqw5F2fkeTnTl4MrYzjI7KCLmmLyZaM0cgLNuLsWVlddQE+SGMl28tENx7DUK3HebWq0FxCP8f25LuDD+w==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/progress-indicator/-/progress-indicator-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-UPbDjE5CqT+SqTs0mNFG6uFEw7wBlgYmh+noSkQ6ty/EURm8lF125dmi4dv4kW0+octonMXqkGtAoZwLIHKf/w==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@material/radio": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/radio/-/radio-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-ehzOK+U1IxQN+OQjgD2lsnf1t7t7RAwQzeO6Czkiuid29ookYbQynWuLWk7NW8H8ohl7lnmfqTP1xSNkkL/F0g==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/radio/-/radio-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-wR1X0Sr0KmQLu6+YOFKAI84G3L6psqd7Kys5kfb8WKBM36zxO5HQXC5nJm/Y0rdn22ixzsIz2GBo0MNU4V4k1A==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/ripple": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/ripple/-/ripple-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-JfLW+g3GMVDv4cruQ19+HUxpKVdWCldFlIPw1UYezz2h3WTNDy05S3uP2zUdXzZ01C3dkBFviv4nqZ0GCT16MA==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/ripple/-/ripple-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-JqOsWM1f4aGdotP0rh1vZlPZTg6lZgh39FIYHFMfOwfhR+LAikUJ+37ciqZuewgzXB6iiRO6a8aUH6HR5SJYPg==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/rtl": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/rtl/-/rtl-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-SkKLNLFp5QtG7/JEFg9R92qq4MzTcZ5As6sWbH7rRg6ahTHoJEuqE+pOb9Vrtbj84k5gtX+vCYPvCILtSlr2uw==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/rtl/-/rtl-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-UVf14qAtmPiaaZjuJtmN36HETyoKWmsZM/qn1L5ciR2URb8O035dFWnz4ZWFMmAYBno/L7JiZaCkPurv2ZNrGA==", "dependencies": { - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/segmented-button": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/segmented-button/-/segmented-button-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-YDwkCWP9l5mIZJ7pZJZ2hMDxfBlIGVJ+deNzr8O+Z7/xC5LGXbl4R5aPtUVHygvXAXxpf5096ZD+dSXzYzvWlw==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/touch-target": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/segmented-button/-/segmented-button-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-LCnVRUSAhELTKI/9hSvyvIvQIpPpqF29BV+O9yM4WoNNmNWqTulvuiv7grHZl6Z+kJuxSg4BGbsPxxb9dXozPg==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/touch-target": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/select": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/select/-/select-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-unfOWVf7T0sixVG+3k3RTuATfzqvCF6QAzA6J9rlCh/Tq4HuIBNDdV4z19IVu4zwmgWYxY0iSvqWUvdJJYwakQ==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/floating-label": "15.0.0-canary.bc9ae6c9c.0", - "@material/line-ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/list": "15.0.0-canary.bc9ae6c9c.0", - "@material/menu": "15.0.0-canary.bc9ae6c9c.0", - "@material/menu-surface": "15.0.0-canary.bc9ae6c9c.0", - "@material/notched-outline": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/select/-/select-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-WioZtQEXRpglum0cMSzSqocnhsGRr+ZIhvKb3FlaNrTaK8H3Y4QA7rVjv3emRtrLOOjaT6/RiIaUMTo9AGzWQQ==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/floating-label": "15.0.0-canary.7f224ddd4.0", + "@material/line-ripple": "15.0.0-canary.7f224ddd4.0", + "@material/list": "15.0.0-canary.7f224ddd4.0", + "@material/menu": "15.0.0-canary.7f224ddd4.0", + "@material/menu-surface": "15.0.0-canary.7f224ddd4.0", + "@material/notched-outline": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/shape": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/shape/-/shape-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-Dsvr771ZKC46ODzoixLdGwlLEQLfxfLrtnRojXABoZf5G3o9KtJU+J+5Ld5aa960OAsCzzANuaub4iR88b1guA==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/shape/-/shape-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-8z8l1W3+cymObunJoRhwFPKZ+FyECfJ4MJykNiaZq7XJFZkV6xNmqAVrrbQj93FtLsECn9g4PjjIomguVn/OEw==", "dependencies": { - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/slider": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/slider/-/slider-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-3AEu+7PwW4DSNLndue47dh2u7ga4hDJRYmuu7wnJCIWJBnLCkp6C92kNc4Rj5iQY2ftJio5aj1gqryluh5tlYg==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/slider/-/slider-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-QU/WSaSWlLKQRqOhJrPgm29wqvvzRusMqwAcrCh1JTrCl+xwJ43q5WLDfjYhubeKtrEEgGu9tekkAiYfMG7EBw==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/snackbar": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/snackbar/-/snackbar-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-TwwQSYxfGK6mc03/rdDamycND6o+1p61WNd7ElZv1F1CLxB4ihRjbCoH7Qo+oVDaP8CTpjeclka+24RLhQq0mA==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/button": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/icon-button": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/snackbar/-/snackbar-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-sm7EbVKddaXpT/aXAYBdPoN0k8yeg9+dprgBUkrdqGzWJAeCkxb4fv2B3He88YiCtvkTz2KLY4CThPQBSEsMFQ==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/button": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/icon-button": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/switch": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/switch/-/switch-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-OjUjtT0kRz1ASAsOS+dNzwMwvsjmqy5edK57692qmrP6bL4GblFfBDoiNJ6t0AN4OaKcmL5Hy/xNrTdOZW7Qqw==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/switch/-/switch-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-lEDJfRvkVyyeHWIBfoxYjJVl+WlEAE2kZ/+6OqB1FW0OV8ftTODZGhHRSzjVBA1/p4FPuhAtKtoK9jTpa4AZjA==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", "safevalues": "^0.3.4", "tslib": "^2.1.0" } }, "node_modules/@material/tab": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/tab/-/tab-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-s/L9otAwn/pZwVQZBRQJmPqYeNbjoEbzbjMpDQf/VBG/6dJ+aP03ilIBEkqo8NVnCoChqcdtVCoDNRtbU+yp6w==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/focus-ring": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab-indicator": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/tab/-/tab-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-E1xGACImyCLurhnizyOTCgOiVezce4HlBFAI6YhJo/AyVwjN2Dtas4ZLQMvvWWqpyhITNkeYdOchwCC1mrz3AQ==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/focus-ring": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/tab-indicator": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/tab-bar": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/tab-bar/-/tab-bar-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-Xmtq0wJGfu5k+zQeFeNsr4bUKv7L+feCmUp/gsapJ655LQKMXOUQZtSv9ZqWOfrCMy55hoF1CzGFV+oN3tyWWQ==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab-indicator": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab-scroller": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/tab-bar/-/tab-bar-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-p1Asb2NzrcECvAQU3b2SYrpyJGyJLQWR+nXTYzDKE8WOpLIRCXap2audNqD7fvN/A20UJ1J8U01ptrvCkwJ4eA==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/tab": "15.0.0-canary.7f224ddd4.0", + "@material/tab-indicator": "15.0.0-canary.7f224ddd4.0", + "@material/tab-scroller": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/tab-indicator": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/tab-indicator/-/tab-indicator-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-despCJYi1GrDDq7F2hvLQkObHnSLZPPDxnOzU16zJ6FNYvIdszgfzn2HgAZ6pl5hLOexQ8cla6cAqjTDuaJBhQ==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/tab-indicator/-/tab-indicator-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-h9Td3MPqbs33spcPS7ecByRHraYgU4tNCZpZzZXw31RypjKvISDv/PS5wcA4RmWqNGih78T7xg4QIGsZg4Pk4w==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/tab-scroller": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/tab-scroller/-/tab-scroller-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-QWHG/EWxirj4V9u2IHz+OSY9XCWrnNrPnNgEufxAJVUKV/A8ma1DYeFSQqxhX709R8wKGdycJksg0Flkl7Gq7w==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/tab": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/tab-scroller/-/tab-scroller-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-LFeYNjQpdXecwECd8UaqHYbhscDCwhGln5Yh+3ctvcEgvmDPNjhKn/DL3sWprWvG8NAhP6sHMrsGhQFVdCWtTg==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/tab": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/textfield": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/textfield/-/textfield-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-R3qRex9kCaZIAK8DuxPnVC42R0OaW7AB7fsFknDKeTeVQvRcbnV8E+iWSdqTiGdsi6QQHifX8idUrXw+O45zPw==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/density": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/floating-label": "15.0.0-canary.bc9ae6c9c.0", - "@material/line-ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/notched-outline": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/textfield/-/textfield-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-AExmFvgE5nNF0UA4l2cSzPghtxSUQeeoyRjFLHLy+oAaE4eKZFrSy0zEpqPeWPQpEMDZk+6Y+6T3cOFYBeSvsw==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/density": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/floating-label": "15.0.0-canary.7f224ddd4.0", + "@material/line-ripple": "15.0.0-canary.7f224ddd4.0", + "@material/notched-outline": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/theme": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/theme/-/theme-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-CpUwXGE0dbhxQ45Hu9r9wbJtO/MAlv5ER4tBHA9tp/K+SU+lDgurBE2touFMg5INmdfVNtdumxb0nPPLaNQcUg==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/theme/-/theme-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-hs45hJoE9yVnoVOcsN1jklyOa51U4lzWsEnQEuJTPOk2+0HqCQ0yv/q0InpSnm2i69fNSyZC60+8HADZGF8ugQ==", "dependencies": { - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/tokens": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/tokens/-/tokens-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-nbEuGj05txWz6ZMUanpM47SaAD7soyjKILR+XwDell9Zg3bGhsnexCNXPEz2fD+YgomS+jM5XmIcaJJHg/H93Q==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/tokens/-/tokens-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-r9TDoicmcT7FhUXC4eYMFnt9TZsz0G8T3wXvkKncLppYvZ517gPyD/1+yhuGfGOxAzxTrM66S/oEc1fFE2q4hw==", "dependencies": { - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0" + "@material/elevation": "15.0.0-canary.7f224ddd4.0" } }, "node_modules/@material/tooltip": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/tooltip/-/tooltip-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-UzuXp0b9NuWuYLYpPguxrjbJnCmT/Cco8CkjI/6JajxaeA3o2XEBbQfRMTq8PTafuBjCHTc0b0mQY7rtxUp1Gg==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/button": "15.0.0-canary.bc9ae6c9c.0", - "@material/dom": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/tokens": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/tooltip/-/tooltip-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-8qNk3pmPLTnam3XYC1sZuplQXW9xLn4Z4MI3D+U17Q7pfNZfoOugGr+d2cLA9yWAEjVJYB0mj8Yu86+udo4N9w==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/button": "15.0.0-canary.7f224ddd4.0", + "@material/dom": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/tokens": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "safevalues": "^0.3.4", "tslib": "^2.1.0" } }, "node_modules/@material/top-app-bar": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/top-app-bar/-/top-app-bar-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-vJWjsvqtdSD5+yQ/9vgoBtBSCvPJ5uF/DVssv8Hdhgs1PYaAcODUi77kdi0+sy/TaWyOsTkQixqmwnFS16zesA==", - "dependencies": { - "@material/animation": "15.0.0-canary.bc9ae6c9c.0", - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/elevation": "15.0.0-canary.bc9ae6c9c.0", - "@material/ripple": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/shape": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", - "@material/typography": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/top-app-bar/-/top-app-bar-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-SARR5/ClYT4CLe9qAXakbr0i0cMY0V3V4pe3ElIJPfL2Z2c4wGR1mTR8m2LxU1MfGKK8aRoUdtfKaxWejp+eNA==", + "dependencies": { + "@material/animation": "15.0.0-canary.7f224ddd4.0", + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/elevation": "15.0.0-canary.7f224ddd4.0", + "@material/ripple": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/shape": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", + "@material/typography": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/touch-target": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/touch-target/-/touch-target-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-AqYh9fjt+tv4ZE0C6MeYHblS2H+XwLbDl2mtyrK0DOEnCVQk5/l5ImKDfhrUdFWHvS4a5nBM4AA+sa7KaroLoA==", - "dependencies": { - "@material/base": "15.0.0-canary.bc9ae6c9c.0", - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/rtl": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/touch-target/-/touch-target-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-BJo/wFKHPYLGsRaIpd7vsQwKr02LtO2e89Psv0on/p0OephlNIgeB9dD9W+bQmaeZsZ6liKSKRl6wJWDiK71PA==", + "dependencies": { + "@material/base": "15.0.0-canary.7f224ddd4.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/rtl": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, "node_modules/@material/typography": { - "version": "15.0.0-canary.bc9ae6c9c.0", - "resolved": "https://registry.npmjs.org/@material/typography/-/typography-15.0.0-canary.bc9ae6c9c.0.tgz", - "integrity": "sha512-CKsG1zyv34AKPNyZC8olER2OdPII64iR2SzQjpqh1UUvmIFiMPk23LvQ1OnC5aCB14pOXzmVgvJt31r9eNdZ6Q==", + "version": "15.0.0-canary.7f224ddd4.0", + "resolved": "https://registry.npmjs.org/@material/typography/-/typography-15.0.0-canary.7f224ddd4.0.tgz", + "integrity": "sha512-kBaZeCGD50iq1DeRRH5OM5Jl7Gdk+/NOfKArkY4ksBZvJiStJ7ACAhpvb8MEGm4s3jvDInQFLsDq3hL+SA79sQ==", "dependencies": { - "@material/feature-targeting": "15.0.0-canary.bc9ae6c9c.0", - "@material/theme": "15.0.0-canary.bc9ae6c9c.0", + "@material/feature-targeting": "15.0.0-canary.7f224ddd4.0", + "@material/theme": "15.0.0-canary.7f224ddd4.0", "tslib": "^2.1.0" } }, + "node_modules/@ngtools/webpack": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-17.1.3.tgz", + "integrity": "sha512-mszRSb7aMNKHnkh3Jrfo83KVOguX/cUamJJcGIYe9o7tnLGRIoMp4vP0fx6Og4J0/CGDRhSDG4IiJ29aOU7K8A==", + "dev": true, + "engines": { + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^17.0.0", + "typescript": ">=5.2 <5.4", + "webpack": "^5.54.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -5465,6 +5261,69 @@ "node": ">= 8" } }, + "node_modules/@npmcli/agent": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.1.tgz", + "integrity": "sha512-H4FrOVtNyWC8MUwL3UfjOsAihHvT1Pe8POj3JvjXhSTJipsZMtgUALCT4mGyYZNxymkUfOw3PUj6dE4QPp6osQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/@npmcli/fs": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", @@ -5478,46 +5337,55 @@ } }, "node_modules/@npmcli/git": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", - "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.4.tgz", + "integrity": "sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ==", "dev": true, "dependencies": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "dev": true, "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/@npmcli/git/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/@npmcli/installed-package-contents": { @@ -5536,20 +5404,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "deprecated": "This functionality has been moved to @npmcli/fs", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/@npmcli/node-gyp": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", @@ -5559,77 +5413,237 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@npmcli/promise-spawn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", - "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "node_modules/@npmcli/package-json": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.0.0.tgz", + "integrity": "sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g==", "dev": true, "dependencies": { - "which": "^3.0.0" + "@npmcli/git": "^5.0.0", + "glob": "^10.2.2", + "hosted-git-info": "^7.0.0", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.5.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/promise-spawn/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "node_modules/@npmcli/package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "balanced-match": "^1.0.0" + } + }, + "node_modules/@npmcli/package-json/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { - "node-which": "bin/which.js" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@npmcli/run-script": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", - "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "node_modules/@npmcli/package-json/node_modules/hosted-git-info": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dev": true, "dependencies": { - "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/run-script/node_modules/which": { + "node_modules/@npmcli/package-json/node_modules/json-parse-even-better-errors": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" - }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@octokit/auth-token": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.3.tgz", - "integrity": "sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA==", - "dependencies": { - "@octokit/types": "^9.0.0" - }, + "node_modules/@npmcli/package-json/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "dev": true, "engines": { - "node": ">= 14" + "node": "14 || >=16.14" } }, - "node_modules/@octokit/core": { - "version": "4.2.0", + "node_modules/@npmcli/package-json/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@npmcli/package-json/node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", + "dev": true, + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/package-json/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/package-json/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/package-json/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@npmcli/promise-spawn": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.1.tgz", + "integrity": "sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg==", + "dev": true, + "dependencies": { + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.4.tgz", + "integrity": "sha512-9ApYM/3+rBt9V80aYg6tZfzj3UWdiYyCt7gJUD1VJKvWF5nwKDSICXbYIQbspFTq6TOpbsEtIC0LArB8d9PFmg==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^5.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "node-gyp": "^10.0.0", + "which": "^4.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/@octokit/auth-token": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.3.tgz", + "integrity": "sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA==", + "dependencies": { + "@octokit/types": "^9.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/core": { + "version": "4.2.0", "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz", "integrity": "sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg==", "dependencies": { @@ -5945,228 +5959,280 @@ } } }, - "node_modules/@schematics/angular": { - "version": "16.2.12", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.12.tgz", - "integrity": "sha512-rc6Dxo7yLnNhECxZyvwv3qL40GvMHw/gMeme8DUGN7zgcUdBJ7LOCURp7EZqOBghMVeeJvLrohitEbs9NhRLBA==", + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.10.0.tgz", + "integrity": "sha512-/MeDQmcD96nVoRumKUljsYOLqfv1YFJps+0pTrb2Z9Nl/w5qNUysMaWQsrd1mvAlNT4yza1iVyIu4Q4AgF6V3A==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "@angular-devkit/core": "16.2.12", - "@angular-devkit/schematics": "16.2.12", - "jsonc-parser": "3.2.0" - }, - "engines": { - "node": "^16.14.0 || >=18.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } + "optional": true, + "os": [ + "android" + ] }, - "node_modules/@sigstore/bundle": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", - "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.10.0.tgz", + "integrity": "sha512-lvu0jK97mZDJdpZKDnZI93I0Om8lSDaiPx3OiCk0RXn3E8CMPJNS/wxjAvSJJzhhZpfjXsjLWL8LnS6qET4VNQ==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "optional": true, + "os": [ + "android" + ] }, - "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", - "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.10.0.tgz", + "integrity": "sha512-uFpayx8I8tyOvDkD7X6n0PriDRWxcqEjqgtlxnUA/G9oS93ur9aZ8c8BEpzFmsed1TH5WZNG5IONB8IiW90TQg==", + "cpu": [ + "arm64" + ], "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "optional": true, + "os": [ + "darwin" + ] }, - "node_modules/@sigstore/sign": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", - "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.10.0.tgz", + "integrity": "sha512-nIdCX03qFKoR/MwQegQBK+qZoSpO3LESurVAC6s6jazLA1Mpmgzo3Nj3H1vydXp/JM29bkCiuF7tDuToj4+U9Q==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "make-fetch-happen": "^11.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "optional": true, + "os": [ + "darwin" + ] }, - "node_modules/@sigstore/sign/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.10.0.tgz", + "integrity": "sha512-Fz7a+y5sYhYZMQFRkOyCs4PLhICAnxRX/GnWYReaAoruUzuRtcf+Qnw+T0CoAWbHCuz2gBUwmWnUgQ67fb3FYw==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@sigstore/sign/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.10.0.tgz", + "integrity": "sha512-yPtF9jIix88orwfTi0lJiqINnlWo6p93MtZEoaehZnmCzEmLL0eqjA3eGVeyQhMtxdV+Mlsgfwhh0+M/k1/V7Q==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@sigstore/sign/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.10.0.tgz", + "integrity": "sha512-9GW9yA30ib+vfFiwjX+N7PnjTnCMiUffhWj4vkG4ukYv1kJ4T9gHNg8zw+ChsOccM27G9yXrEtMScf1LaCuoWQ==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@sigstore/sign/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.10.0.tgz", + "integrity": "sha512-X1ES+V4bMq2ws5fF4zHornxebNxMXye0ZZjUrzOrf7UMx1d6wMQtfcchZ8SqUnQPPHdOyOLW6fTcUiFgHFadRA==", + "cpu": [ + "riscv64" + ], "dev": true, - "engines": { - "node": ">=12" - } + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.10.0.tgz", + "integrity": "sha512-w/5OpT2EnI/Xvypw4FIhV34jmNqU5PZjZue2l2Y3ty1Ootm3SqhI+AmfhlUYGBTd9JnpneZCDnt3uNOiOBkMyw==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.10.0.tgz", + "integrity": "sha512-q/meftEe3QlwQiGYxD9rWwB21DoKQ9Q8wA40of/of6yGHhZuGfZO0c3WYkN9dNlopHlNT3mf5BPsUSxoPuVQaw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.10.0.tgz", + "integrity": "sha512-NrR6667wlUfP0BHaEIKgYM/2va+Oj+RjZSASbBMnszM9k+1AmliRjHc3lJIiOehtSSjqYiO7R6KLNrWOX+YNSQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.10.0.tgz", + "integrity": "sha512-FV0Tpt84LPYDduIDcXvEC7HKtyXxdvhdAOvOeWMWbQNulxViH2O07QXkT/FffX4FqEI02jEbCJbr+YcuKdyyMg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.10.0.tgz", + "integrity": "sha512-OZoJd+o5TaTSQeFFQ6WjFCiltiYVjIdsXxwu/XZ8qRpsvMQr4UsVrE5UyT9RIvsnuF47DqkJKhhVZ2Q9YW9IpQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/wasm-node": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@rollup/wasm-node/-/wasm-node-4.10.0.tgz", + "integrity": "sha512-wH/ih4T/iP2PUyTrkyioZqDoFY/gmu63LPLTOM5Q21gSB/D3Ejw3UBpUOMLt86fIbN3mV+wL45MyA71XAj1ytg==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/@schematics/angular": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-17.1.3.tgz", + "integrity": "sha512-hmeasOvzmniy6urtzUKhEqGO67iPuLX/dVtkF4nWp2NTtcEKlvcJobNDMc+CTlX4+ZMPVOvmhDMQqrlfekZ+NQ==", "dev": true, + "dependencies": { + "@angular-devkit/core": "17.1.3", + "@angular-devkit/schematics": "17.1.3", + "jsonc-parser": "3.2.0" + }, "engines": { - "node": ">=8" + "node": "^18.13.0 || >=20.9.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@sigstore/sign/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/@sigstore/bundle": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.1.tgz", + "integrity": "sha512-v3/iS+1nufZdKQ5iAlQKcCsoh0jffQyABvYIxKsZQFWc4ubuGjwZklFHpDgV6O6T7vvV78SW5NHI91HFKEcxKg==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "@sigstore/protobuf-specs": "^0.2.1" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "node_modules/@sigstore/core": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.0.0.tgz", + "integrity": "sha512-dW2qjbWLRKGu6MIDUTBuJwXCnR8zivcSpf5inUzk7y84zqy/dji0/uahppoIgMoKeR+6pUZucrwHfkQQtiG9Rw==", "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, "engines": { - "node": ">= 8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.2.tgz", + "integrity": "sha512-mAifqvvGOCkb5BJ5d/SRrVP5+kKCGxtcHuti6lgqZalIfNxikxlJMMptOqFp9+xV5LAnJMSaMWtzvcgNZ3PlPA==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "@sigstore/bundle": "^2.1.1", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.2.1", + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "node_modules/@sigstore/tuf": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.0.tgz", + "integrity": "sha512-S98jo9cpJwO1mtQ+2zY7bOdcYyfVYCUaofCG6wWRzk3pxKHVAkSfshkfecto2+LKsx7Ovtqbgb2LS8zTRhxJ9Q==", "dev": true, "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "@sigstore/protobuf-specs": "^0.2.1", + "tuf-js": "^2.2.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@sigstore/sign/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@sigstore/tuf": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", - "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "node_modules/@sigstore/verify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.0.0.tgz", + "integrity": "sha512-sRU6nblDBQ4pVTWni019Kij+XQj4RP75WXN5z3qHk81dt/L8A7r3v8RgRInTup4/Jf90WNods9CcbnWj7zJ26w==", "dev": true, "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0", - "tuf-js": "^1.1.7" + "@sigstore/bundle": "^2.1.1", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.2.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@sinclair/typebox": { @@ -6264,957 +6330,577 @@ "devOptional": true }, "node_modules/@tufjs/canonical-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", - "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@tufjs/models": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", - "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", - "dev": true, - "dependencies": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/@tufjs/models/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", + "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.3" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.5", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", - "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", - "dev": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", - "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", - "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", - "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", - "dev": true, - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "node_modules/@types/cors": { - "version": "2.8.13", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz", - "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.21.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", - "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", - "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.43", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.43.tgz", - "integrity": "sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" - }, - "node_modules/@types/http-errors": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", - "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", - "dev": true - }, - "node_modules/@types/http-proxy": { - "version": "1.17.14", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", - "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jasmine": { - "version": "3.6.11", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.6.11.tgz", - "integrity": "sha512-S6pvzQDvMZHrkBz2Mcn/8Du7cpr76PlRJBAoHnSDNbulULsH5dp0Gns+WRyNX5LHejz/ljxK4/vIHK/caHt6SQ==", - "dev": true - }, - "node_modules/@types/jasminewd2": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.10.tgz", - "integrity": "sha512-J7mDz7ovjwjc+Y9rR9rY53hFWKATcIkrr9DwQWmOas4/pnIPJTXawnzjwpHm3RSxz/e3ZVUvQ7cRbd5UQLo10g==", - "dev": true, - "dependencies": { - "@types/jasmine": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.4.0", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", - "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/jsdom": { - "version": "20.0.1", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", - "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tough-cookie": "*", - "parse5": "^7.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", - "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", - "dev": true - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" - }, - "node_modules/@types/node": { - "version": "14.18.36", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.36.tgz", - "integrity": "sha512-FXKWbsJ6a1hIrRxv+FoukuHnGTgEzKYGi7kilfMae96AL9UNkPFNWJEEYWzdRI9ooIkbr4AKldyuSTLql06vLQ==" - }, - "node_modules/@types/node-forge": { - "version": "1.3.11", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", - "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/q": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", - "integrity": "sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==", - "dev": true - }, - "node_modules/@types/qs": { - "version": "6.9.11", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.11.tgz", - "integrity": "sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==", - "dev": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", - "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", - "dev": true - }, - "node_modules/@types/resolve": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", - "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", - "dev": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/selenium-webdriver": { - "version": "3.0.20", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.20.tgz", - "integrity": "sha512-6d8Q5fqS9DWOXEhMDiF6/2FjyHdmP/jSTAUyeQR7QwrFeNmYyzmvGxD5aLIHL445HjWgibs0eAig+KPnbaesXA==", - "dev": true - }, - "node_modules/@types/send": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", - "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", - "dev": true, - "dependencies": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "node_modules/@types/serve-index": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", - "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", - "dev": true, - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz", - "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==", - "dev": true, - "dependencies": { - "@types/http-errors": "*", - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sockjs": { - "version": "0.3.36", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", - "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==" - }, - "node_modules/@types/tough-cookie": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz", - "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==", - "dev": true - }, - "node_modules/@types/web-bluetooth": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.6.tgz", - "integrity": "sha512-S/Dhk1sMzYZMNNXvG1CHKz1X+HbabMf2l+FkdRStcvvuQVVlMvq0nPd/fQ3skniRKj0LqBPy19in3JN/XsB6Qg==" - }, - "node_modules/@types/ws": { - "version": "8.5.10", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", - "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/yargs": { - "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", - "dependencies": { - "@types/yargs-parser": "*" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } }, - "node_modules/@vitejs/plugin-basic-ssl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.1.tgz", - "integrity": "sha512-pcub+YbFtFhaGRTo1832FQHQSHvMrlb43974e2eS8EKleR3p1cDdkJFPci1UhwkEf1J9Bz+wKBSzqpKp7nNj2A==", + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": ">=14.6.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependencies": { - "vite": "^3.0.0 || ^4.0.0" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", - "dev": true, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dependencies": { + "@babel/types": "^7.0.0" + } }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", - "dev": true + "node_modules/@types/babel__traverse": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "dependencies": { + "@babel/types": "^7.20.7" + } }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" + "@types/connect": "*", + "@types/node": "*" } }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" + "@types/node": "*" } }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "dependencies": { - "@xtuc/ieee754": "^1.2.0" + "@types/node": "*" } }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, "dependencies": { - "@xtuc/long": "4.2.2" + "@types/express-serve-static-core": "*", + "@types/node": "*" } }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", "dev": true }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "node_modules/@types/cors": { + "version": "2.8.13", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz", + "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" + "@types/node": "*" } }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "node_modules/@types/eslint": { + "version": "8.21.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", + "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@types/estree": "*", + "@types/json-schema": "*" } }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" + "@types/eslint": "*", + "@types/estree": "*" } }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "node_modules/@types/express-serve-static-core": { + "version": "4.17.43", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.43.tgz", + "integrity": "sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@xtuc/long": "4.2.2" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "node_modules/@wessberg/ts-evaluator": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", - "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", - "deprecated": "this package has been renamed to ts-evaluator. Please install ts-evaluator instead", - "dev": true, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dependencies": { - "chalk": "^4.1.0", - "jsdom": "^16.4.0", - "object-path": "^0.11.5", - "tslib": "^2.0.3" - }, - "engines": { - "node": ">=10.1.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/wessberg/ts-evaluator?sponsor=1" - }, - "peerDependencies": { - "typescript": ">=3.2.x || >= 4.x" + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true, - "engines": { - "node": ">= 6" - } + "node_modules/@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" }, - "node_modules/@wessberg/ts-evaluator/node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dev": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dependencies": { + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true, - "engines": { - "node": ">=0.4.0" + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dependencies": { + "@types/istanbul-lib-report": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@types/jasmine": { + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.6.11.tgz", + "integrity": "sha512-S6pvzQDvMZHrkBz2Mcn/8Du7cpr76PlRJBAoHnSDNbulULsH5dp0Gns+WRyNX5LHejz/ljxK4/vIHK/caHt6SQ==", + "dev": true + }, + "node_modules/@types/jasminewd2": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.10.tgz", + "integrity": "sha512-J7mDz7ovjwjc+Y9rR9rY53hFWKATcIkrr9DwQWmOas4/pnIPJTXawnzjwpHm3RSxz/e3ZVUvQ7cRbd5UQLo10g==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "@types/jasmine": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/@types/jest": { + "version": "29.4.0", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", + "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "expect": "^29.0.0", + "pretty-format": "^29.0.0" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/@types/jsdom": { + "version": "20.0.1", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", "dev": true, "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", "dev": true }, - "node_modules/@wessberg/ts-evaluator/node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true }, - "node_modules/@wessberg/ts-evaluator/node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" + }, + "node_modules/@types/node": { + "version": "14.18.36", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.36.tgz", + "integrity": "sha512-FXKWbsJ6a1hIrRxv+FoukuHnGTgEzKYGi7kilfMae96AL9UNkPFNWJEEYWzdRI9ooIkbr4AKldyuSTLql06vLQ==" + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", "dev": true, "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, - "engines": { - "node": ">=10" + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "deprecated": "Use your platform's native DOMException instead", + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.11", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.11.tgz", + "integrity": "sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/selenium-webdriver": { + "version": "3.0.20", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.20.tgz", + "integrity": "sha512-6d8Q5fqS9DWOXEhMDiF6/2FjyHdmP/jSTAUyeQR7QwrFeNmYyzmvGxD5aLIHL445HjWgibs0eAig+KPnbaesXA==", + "dev": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, "dependencies": { - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=8" + "@types/mime": "^1", + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "@types/express": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "node_modules/@types/serve-static": { + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz", + "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==", "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" + "@types/http-errors": "*", + "@types/mime": "*", + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/html-encoding-sniffer": { + "node_modules/@types/stack-utils": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==" + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz", + "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==", + "dev": true + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.6.tgz", + "integrity": "sha512-S/Dhk1sMzYZMNNXvG1CHKz1X+HbabMf2l+FkdRStcvvuQVVlMvq0nPd/fQ3skniRKj0LqBPy19in3JN/XsB6Qg==" + }, + "node_modules/@types/ws": { + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", "dev": true, "dependencies": { - "whatwg-encoding": "^1.0.5" - }, - "engines": { - "node": ">=10" + "@types/node": "*" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, + "node_modules/@types/yargs": { + "version": "17.0.22", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", + "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", + "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dev": true, "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", "dev": true }, - "node_modules/@wessberg/ts-evaluator/node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", + "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", "dev": true, "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=10" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" + "@xtuc/ieee754": "^1.2.0" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=8" + "@xtuc/long": "4.2.2" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", + "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", "dev": true, "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-opt": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6", + "@webassemblyjs/wast-printer": "1.11.6" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", + "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", "dev": true, - "engines": { - "node": ">=10.4" + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", + "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", "dev": true, "dependencies": { - "iconv-lite": "0.4.24" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/@wessberg/ts-evaluator/node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", + "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", "dev": true, "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", + "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@xtuc/long": "4.2.2" } }, - "node_modules/@wessberg/ts-evaluator/node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -7240,10 +6926,13 @@ "dev": true }, "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/accepts": { "version": "1.3.8", @@ -7380,18 +7069,6 @@ "node": ">= 6.0.0" } }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "dev": true, - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", @@ -7576,25 +7253,6 @@ "node": ">=8" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/arg": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", @@ -7813,9 +7471,9 @@ } }, "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "version": "10.4.16", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", + "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==", "dev": true, "funding": [ { @@ -7825,12 +7483,16 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", + "browserslist": "^4.21.10", + "caniuse-lite": "^1.0.30001538", + "fraction.js": "^4.3.6", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -8506,12 +8168,6 @@ "base64-js": "^1.1.2" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, "node_modules/browser-resolve": { "version": "1.11.3", "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", @@ -8803,12 +8459,17 @@ } }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.6.tgz", + "integrity": "sha512-Mj50FLHtlsoVfRfnHaZvyrooHcrlceNZdL/QBvJJVd9Ta55qCQK0gs4ss2oZDeV9zFCs6ewzYgVE5yfVmfFpVg==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.3", + "set-function-length": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -9052,12 +8713,11 @@ } }, "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", + "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/cliui": { @@ -9366,12 +9026,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -10076,12 +9730,6 @@ "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", "dev": true }, - "node_modules/cuint": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==", - "dev": true - }, "node_modules/custom-event": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", @@ -10332,6 +9980,20 @@ "node": ">=10" } }, + "node_modules/define-data-property": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.2.tgz", + "integrity": "sha512-SRtsSqsDbgpJBbW3pABMCOt6rQyeM8s8RiyeSN8jYG8sYmt/kGJejbydttUsnDs1tadr19tvhT4ShwMyoqAm4g==", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.2", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/define-lazy-prop": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", @@ -10474,12 +10136,6 @@ "node": ">=0.4.0" } }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -10489,12 +10145,12 @@ } }, "node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-1.0.0.tgz", + "integrity": "sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg==", "dev": true, "engines": { - "node": ">= 0.6.0" + "node": ">=4" } }, "node_modules/deprecation": { @@ -10993,6 +10649,14 @@ "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==" }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-get-iterator": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", @@ -11141,9 +10805,9 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", + "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", "dev": true, "hasInstallScript": true, "bin": { @@ -11153,28 +10817,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/aix-ppc64": "0.19.11", + "@esbuild/android-arm": "0.19.11", + "@esbuild/android-arm64": "0.19.11", + "@esbuild/android-x64": "0.19.11", + "@esbuild/darwin-arm64": "0.19.11", + "@esbuild/darwin-x64": "0.19.11", + "@esbuild/freebsd-arm64": "0.19.11", + "@esbuild/freebsd-x64": "0.19.11", + "@esbuild/linux-arm": "0.19.11", + "@esbuild/linux-arm64": "0.19.11", + "@esbuild/linux-ia32": "0.19.11", + "@esbuild/linux-loong64": "0.19.11", + "@esbuild/linux-mips64el": "0.19.11", + "@esbuild/linux-ppc64": "0.19.11", + "@esbuild/linux-riscv64": "0.19.11", + "@esbuild/linux-s390x": "0.19.11", + "@esbuild/linux-x64": "0.19.11", + "@esbuild/netbsd-x64": "0.19.11", + "@esbuild/openbsd-x64": "0.19.11", + "@esbuild/sunos-x64": "0.19.11", + "@esbuild/win32-arm64": "0.19.11", + "@esbuild/win32-ia32": "0.19.11", + "@esbuild/win32-x64": "0.19.11" } }, "node_modules/esbuild-wasm": { @@ -11363,12 +11028,6 @@ "through": "^2.3.8" } }, - "node_modules/eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", @@ -11613,9 +11272,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -11687,16 +11346,38 @@ "node": "^12.20 || >= 14.13" } }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" + "node_modules/figures": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", + "dependencies": { + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -11791,6 +11472,15 @@ "node": ">=0.8.22" } }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, "node_modules/flatted": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", @@ -11970,9 +11660,9 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "hasInstallScript": true, "optional": true, "os": [ @@ -12016,9 +11706,12 @@ "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/function.prototype.name": { "version": "1.1.5", @@ -12045,25 +11738,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -12087,13 +11761,18 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -12500,18 +12179,6 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, - "node_modules/guess-parser": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", - "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", - "dev": true, - "dependencies": { - "@wessberg/ts-evaluator": "0.0.27" - }, - "peerDependencies": { - "typescript": ">=3.7.5" - } - }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -12648,11 +12315,11 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", "dependencies": { - "get-intrinsic": "^1.1.1" + "get-intrinsic": "^1.2.2" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -12694,12 +12361,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, "node_modules/has-yarn": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz", @@ -12711,6 +12372,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/hdr-histogram-js": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", @@ -13019,15 +12691,6 @@ "node": ">=10.17.0" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, "node_modules/i18next": { "version": "21.10.0", "resolved": "https://registry.npmjs.org/i18next/-/i18next-21.10.0.tgz", @@ -13238,12 +12901,6 @@ "node": ">=8" } }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -13277,29 +12934,29 @@ } }, "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "version": "9.2.12", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.12.tgz", + "integrity": "sha512-mg3Fh9g2zfuVWJn6lhST0O7x4n03k7G8Tx5nvikJkbq8/CK47WDVm+UznF0G6s5Zi0KcyUisr6DU8T67N5U+1Q==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", + "@ljharb/through": "^2.3.11", + "ansi-escapes": "^4.3.2", + "chalk": "^5.3.0", "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", + "cli-width": "^4.1.0", + "external-editor": "^3.1.0", + "figures": "^5.0.0", "lodash": "^4.17.21", - "mute-stream": "0.0.8", + "mute-stream": "1.0.0", "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "run-async": "^3.0.0", + "rxjs": "^7.8.1", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^6.2.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.18.0" } }, "node_modules/inquirer/node_modules/ansi-styles": { @@ -13318,16 +12975,12 @@ } }, "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" @@ -13351,22 +13004,33 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/inquirer/node_modules/mute-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", + "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", "dev": true, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/inquirer/node_modules/run-async": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", + "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/inquirer/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { "node": ">=8" @@ -13522,11 +13186,11 @@ } }, "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15106,9 +14770,9 @@ } }, "node_modules/jest-preset-angular": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-13.1.1.tgz", - "integrity": "sha512-X8i7icKt9U5uhj7YKqdEZm7ZZPvNFRxfBnU+9SALdIkHYJhwtlJ5/MUk9wo4f3lX2smOkIl9LPJUu1APO+11Jg==", + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/jest-preset-angular/-/jest-preset-angular-13.1.6.tgz", + "integrity": "sha512-0pXSm6168Qn+qKp7DpzYoaIp0uyMHdQaWYVp8jlw7Mh+NEBtrBjKqts3kLeBHgAhGMQArp07S2IxZ6eCr8fc7Q==", "dev": true, "dependencies": { "bs-logger": "^0.2.6", @@ -15125,10 +14789,10 @@ "esbuild": ">=0.13.8" }, "peerDependencies": { - "@angular-devkit/build-angular": ">=13.0.0 <17.0.0", - "@angular/compiler-cli": ">=13.0.0 <17.0.0", - "@angular/core": ">=13.0.0 <17.0.0", - "@angular/platform-browser-dynamic": ">=13.0.0 <17.0.0", + "@angular-devkit/build-angular": ">=13.0.0 <18.0.0", + "@angular/compiler-cli": ">=13.0.0 <18.0.0", + "@angular/core": ">=13.0.0 <18.0.0", + "@angular/platform-browser-dynamic": ">=13.0.0 <18.0.0", "jest": "^29.0.0", "typescript": ">=4.4" } @@ -16387,9 +16051,9 @@ } }, "node_modules/less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", + "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", "dev": true, "dependencies": { "copy-anything": "^2.0.1", @@ -16778,9 +16442,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", - "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -16817,201 +16481,27 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" }, "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", "dev": true, "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/cacache": { - "version": "16.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", - "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/make-fetch-happen/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-fetch-happen/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-fetch-happen/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/make-fetch-happen/node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/make-fetch-happen/node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/unique-filename": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", - "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", - "dev": true, - "dependencies": { - "unique-slug": "^3.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/unique-slug": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", - "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" + "ssri": "^10.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/make-fetch-happen/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", @@ -17192,969 +16682,598 @@ }, "node_modules/merge-source-map/node_modules/source-map": { "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/mimic-response": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", - "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "engines": { - "node": ">=4" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.7.6", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", - "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", - "dev": true, - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/minipass-collect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", - "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/minipass-fetch": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", - "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", - "dev": true, - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/minipass-fetch/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-fetch/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-flush/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-flush/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-json-stream/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/minipass-json-stream/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "engines": { - "node": ">=8" + "node": ">= 8" } }, - "node_modules/minipass-pipeline/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/minipass-pipeline/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dependencies": { - "minipass": "^3.0.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=8" + "node": ">=8.6" } }, - "node_modules/minipass-sized/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/minipass-sized/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" + "mime-db": "1.52.0" }, "engines": { - "node": ">= 8" + "node": ">= 0.6" } }, - "node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/minizlib/node_modules/yallist": { + "node_modules/mimic-response": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", + "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/modify-values": { + "node_modules/min-indent": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", - "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/morgan": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", - "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", + "node_modules/mini-css-extract-plugin": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", + "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", "dev": true, "dependencies": { - "basic-auth": "~2.0.1", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-finished": "~2.3.0", - "on-headers": "~1.0.2" + "schema-utils": "^4.0.0" }, "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/morgan/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "node_modules/morgan/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", "dev": true }, - "node_modules/mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", - "dev": true, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" }, - "bin": { - "multicast-dns": "cli.js" + "engines": { + "node": ">= 6" } }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + "node": ">=16 || 14 >=14.17" + } }, - "node_modules/needle": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", - "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", "dev": true, - "optional": true, "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" + "minipass": "^7.0.3" }, "engines": { - "node": ">= 4.4.x" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/needle/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", "dev": true, - "optional": true, "dependencies": { - "ms": "^2.1.1" + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/needle/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "dev": true, - "optional": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/netmask": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", - "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", - "engines": { - "node": ">= 0.4.0" + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" } }, - "node_modules/new-github-release-url": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/new-github-release-url/-/new-github-release-url-2.0.0.tgz", - "integrity": "sha512-NHDDGYudnvRutt/VhKFlX26IotXe1w0cmkDm6JGquh5bz/bDTw0LufSmH/GxTjEdpHEO+bVKFTwdrcGa/9XlKQ==", + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, "dependencies": { - "type-fest": "^2.5.1" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/new-github-release-url/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "node_modules/ng-packagr": { - "version": "16.2.3", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-16.2.3.tgz", - "integrity": "sha512-VTJ7Qtge52+1subkhmF5nOqLNbVutA8/igJ0A5vH6Mgpb8Z/3HeZomtD1SHzZF5Dqp+p+QPHE548FWYu1MdMSQ==", + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, "dependencies": { - "@rollup/plugin-json": "^6.0.0", - "@rollup/plugin-node-resolve": "^15.0.0", - "ajv": "^8.11.0", - "ansi-colors": "^4.1.3", - "autoprefixer": "^10.4.12", - "browserslist": "^4.21.4", - "cacache": "^18.0.0", - "chokidar": "^3.5.3", - "commander": "^11.0.0", - "convert-source-map": "^2.0.0", - "dependency-graph": "^0.11.0", - "esbuild-wasm": "^0.19.0", - "fast-glob": "^3.2.12", - "find-cache-dir": "^3.3.2", - "injection-js": "^2.4.0", - "jsonc-parser": "^3.2.0", - "less": "^4.1.3", - "ora": "^5.1.0", - "piscina": "^4.0.0", - "postcss": "^8.4.16", - "postcss-url": "^10.1.3", - "rollup": "^3.0.0", - "rxjs": "^7.5.6", - "sass": "^1.55.0" - }, - "bin": { - "ng-packagr": "cli/main.js" + "minipass": "^3.0.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" - }, - "optionalDependencies": { - "esbuild": "^0.19.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^16.0.0 || ^16.2.0-next.0", - "tailwindcss": "^2.0.0 || ^3.0.0", - "tslib": "^2.3.0", - "typescript": ">=4.9.3 <5.2" - }, - "peerDependenciesMeta": { - "tailwindcss": { - "optional": true - } + "node": ">=8" } }, - "node_modules/ng-packagr/node_modules/@esbuild/android-arm": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz", - "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==", - "cpu": [ - "arm" - ], + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/ng-packagr/node_modules/@esbuild/android-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz", - "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/ng-packagr/node_modules/@esbuild/android-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz", - "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==", - "cpu": [ - "x64" - ], + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "minipass": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/ng-packagr/node_modules/@esbuild/darwin-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz", - "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==", - "cpu": [ - "arm64" - ], + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/ng-packagr/node_modules/@esbuild/darwin-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz", - "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==", - "cpu": [ - "x64" - ], + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">= 8" } }, - "node_modules/ng-packagr/node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz", - "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==", - "cpu": [ - "arm64" - ], + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/ng-packagr/node_modules/@esbuild/freebsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz", - "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==", - "cpu": [ - "x64" - ], + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "bin": { + "mkdirp": "bin/cmd.js" + }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-arm": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz", - "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], + "node_modules/modify-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", + "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz", - "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==", - "cpu": [ - "arm64" - ], + "node_modules/morgan": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", + "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "basic-auth": "~2.0.1", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-finished": "~2.3.0", + "on-headers": "~1.0.2" + }, "engines": { - "node": ">=12" + "node": ">= 0.8.0" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-ia32": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz", - "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==", - "cpu": [ - "ia32" - ], + "node_modules/morgan/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-loong64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz", - "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==", - "cpu": [ - "loong64" - ], + "node_modules/morgan/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/mrmime": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz", + "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-mips64el": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz", - "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==", - "cpu": [ - "mips64el" - ], + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-ppc64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz", - "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==", - "cpu": [ - "ppc64" - ], + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, - "optional": true, - "os": [ - "linux" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, "engines": { - "node": ">=12" + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-riscv64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz", - "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==", - "cpu": [ - "riscv64" - ], + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/needle": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", "dev": true, "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, "engines": { - "node": ">=12" + "node": ">= 4.4.x" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-s390x": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz", - "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==", - "cpu": [ - "s390x" - ], + "node_modules/needle/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" + "dependencies": { + "ms": "^2.1.1" } }, - "node_modules/ng-packagr/node_modules/@esbuild/linux-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz", - "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==", - "cpu": [ - "x64" - ], + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/ng-packagr/node_modules/@esbuild/netbsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz", - "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==", - "cpu": [ - "x64" - ], + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true, - "optional": true, - "os": [ - "netbsd" - ], "engines": { - "node": ">=12" + "node": ">= 0.6" } }, - "node_modules/ng-packagr/node_modules/@esbuild/openbsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz", - "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", "engines": { - "node": ">=12" + "node": ">= 0.4.0" } }, - "node_modules/ng-packagr/node_modules/@esbuild/sunos-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz", - "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], + "node_modules/new-github-release-url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/new-github-release-url/-/new-github-release-url-2.0.0.tgz", + "integrity": "sha512-NHDDGYudnvRutt/VhKFlX26IotXe1w0cmkDm6JGquh5bz/bDTw0LufSmH/GxTjEdpHEO+bVKFTwdrcGa/9XlKQ==", + "dependencies": { + "type-fest": "^2.5.1" + }, "engines": { - "node": ">=12" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ng-packagr/node_modules/@esbuild/win32-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz", - "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], + "node_modules/new-github-release-url/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", "engines": { - "node": ">=12" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ng-packagr/node_modules/@esbuild/win32-ia32": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz", - "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "dev": true }, - "node_modules/ng-packagr/node_modules/@esbuild/win32-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz", - "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==", - "cpu": [ - "x64" - ], + "node_modules/ng-packagr": { + "version": "17.1.2", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-17.1.2.tgz", + "integrity": "sha512-H7WRiqbM91lOItixrKc9XP1ZLpsxwIk3l0JDnhSePvKQlMe1UsNrnYHzBek6iVyMolCuz86YR0Dovbpyi4aOzA==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@rollup/plugin-json": "^6.0.1", + "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/wasm-node": "^4.5.0", + "ajv": "^8.12.0", + "ansi-colors": "^4.1.3", + "browserslist": "^4.22.1", + "cacache": "^18.0.0", + "chokidar": "^3.5.3", + "commander": "^11.1.0", + "convert-source-map": "^2.0.0", + "dependency-graph": "^1.0.0", + "esbuild-wasm": "^0.19.5", + "fast-glob": "^3.3.1", + "find-cache-dir": "^3.3.2", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.2.0", + "less": "^4.2.0", + "ora": "^5.1.0", + "piscina": "^4.2.0", + "postcss": "^8.4.31", + "rxjs": "^7.8.1", + "sass": "^1.69.5" + }, + "bin": { + "ng-packagr": "cli/main.js" + }, "engines": { - "node": ">=12" + "node": "^18.13.0 || >=20.9.0" + }, + "optionalDependencies": { + "esbuild": "^0.19.0", + "rollup": "^4.5.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^17.0.0 || ^17.1.0-next.0 || ^17.2.0-next.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "tslib": "^2.3.0", + "typescript": ">=5.2 <5.4" + }, + "peerDependenciesMeta": { + "tailwindcss": { + "optional": true + } } }, "node_modules/ng-packagr/node_modules/commander": { @@ -18172,45 +17291,6 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true }, - "node_modules/ng-packagr/node_modules/esbuild": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz", - "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.12", - "@esbuild/android-arm": "0.19.12", - "@esbuild/android-arm64": "0.19.12", - "@esbuild/android-x64": "0.19.12", - "@esbuild/darwin-arm64": "0.19.12", - "@esbuild/darwin-x64": "0.19.12", - "@esbuild/freebsd-arm64": "0.19.12", - "@esbuild/freebsd-x64": "0.19.12", - "@esbuild/linux-arm": "0.19.12", - "@esbuild/linux-arm64": "0.19.12", - "@esbuild/linux-ia32": "0.19.12", - "@esbuild/linux-loong64": "0.19.12", - "@esbuild/linux-mips64el": "0.19.12", - "@esbuild/linux-ppc64": "0.19.12", - "@esbuild/linux-riscv64": "0.19.12", - "@esbuild/linux-s390x": "0.19.12", - "@esbuild/linux-x64": "0.19.12", - "@esbuild/netbsd-x64": "0.19.12", - "@esbuild/openbsd-x64": "0.19.12", - "@esbuild/sunos-x64": "0.19.12", - "@esbuild/win32-arm64": "0.19.12", - "@esbuild/win32-ia32": "0.19.12", - "@esbuild/win32-x64": "0.19.12" - } - }, "node_modules/ng-packagr/node_modules/find-cache-dir": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", @@ -18307,28 +17387,27 @@ } }, "node_modules/node-gyp": { - "version": "9.4.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", - "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", "dev": true, "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", + "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.5", "tar": "^6.1.2", - "which": "^2.0.2" + "which": "^4.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.13 || ^14.13 || >=16" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/node-gyp-build": { @@ -18343,6 +17422,76 @@ "node-gyp-build-test": "build-test.js" } }, + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dev": true, + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", @@ -18354,18 +17503,18 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, "node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", "dev": true, "dependencies": { - "abbrev": "^1.0.0" + "abbrev": "^2.0.0" }, "bin": { "nopt": "bin/nopt.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/normalize-package-data": { @@ -18410,298 +17559,120 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-bundled": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", - "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-install-checks": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", - "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", - "dev": true, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/npm-packlist": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", - "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", - "dev": true, - "dependencies": { - "ignore-walk": "^6.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-pick-manifest": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", - "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", - "dev": true, - "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-registry-fetch": { - "version": "14.0.5", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", - "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", - "proc-log": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/npm-registry-fetch/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "node_modules/npm-bundled": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", "dev": true, "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" + "npm-normalize-package-bin": "^3.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/cacache/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/npm-registry-fetch/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" + "semver": "^7.1.1" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", "dev": true, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "node_modules/npm-package-arg": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", + "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", "dev": true, "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" + "hosted-git-info": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/npm-package-arg/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "dev": true, "engines": { - "node": ">=8" + "node": "14 || >=16.14" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "node_modules/npm-packlist": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz", + "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==", "dev": true, "dependencies": { - "minipass": "^3.0.0" + "ignore-walk": "^6.0.4" }, "engines": { - "node": ">= 8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/npm-pick-manifest": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", + "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" }, "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "node_modules/npm-registry-fetch": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", + "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", "dev": true, "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^11.0.0", + "proc-log": "^3.0.0" }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm-registry-fetch/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -18713,21 +17684,6 @@ "node": ">=8" } }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -18796,15 +17752,6 @@ "node": ">= 0.4" } }, - "node_modules/object-path": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", - "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", - "dev": true, - "engines": { - "node": ">= 10.12.0" - } - }, "node_modules/object.assign": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", @@ -19210,27 +18157,27 @@ } }, "node_modules/pacote": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", - "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "version": "17.0.5", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.5.tgz", + "integrity": "sha512-TAE0m20zSDMnchPja9vtQjri19X3pZIyRpm2TJVeI+yU42leJBBDTRYhOcWFsPhaMxf+3iwQkFiKz16G9AEeeA==", "dev": true, "dependencies": { - "@npmcli/git": "^4.0.0", + "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^7.0.0", + "cacache": "^18.0.0", "fs-minipass": "^3.0.0", - "minipass": "^5.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^16.0.0", "proc-log": "^3.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", + "read-package-json": "^7.0.0", "read-package-json-fast": "^3.0.0", - "sigstore": "^1.3.0", + "sigstore": "^2.0.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, @@ -19238,135 +18185,9 @@ "pacote": "lib/bin.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/pacote/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/pacote/node_modules/cacache/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/pacote/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/pacote/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pacote/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pacote/node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/pacote/node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/pacote/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -19680,12 +18501,11 @@ } }, "node_modules/piscina": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", - "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.2.1.tgz", + "integrity": "sha512-LShp0+lrO+WIzB9LXO+ZmO4zGHxtTJNZhEO56H9SSu+JPaUQb6oLcTCzWi5IL2DS8/vIkCE88ElahuSSw4TAkA==", "dev": true, "dependencies": { - "eventemitter-asyncresource": "^1.0.0", "hdr-histogram-js": "^2.0.1", "hdr-histogram-percentiles-obj": "^3.0.0" }, @@ -19797,9 +18617,9 @@ "dev": true }, "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, "funding": [ { @@ -19816,7 +18636,7 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -19825,14 +18645,14 @@ } }, "node_modules/postcss-loader": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz", - "integrity": "sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==", + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.4.tgz", + "integrity": "sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==", "dev": true, "dependencies": { - "cosmiconfig": "^8.2.0", - "jiti": "^1.18.2", - "semver": "^7.3.8" + "cosmiconfig": "^8.3.5", + "jiti": "^1.20.0", + "semver": "^7.5.4" }, "engines": { "node": ">= 14.15.0" @@ -19890,6 +18710,39 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/postcss-loader/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postcss-loader/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postcss-loader/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/postcss-modules-extract-imports": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", @@ -19962,48 +18815,6 @@ "node": ">=4" } }, - "node_modules/postcss-url": { - "version": "10.1.3", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz", - "integrity": "sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==", - "dev": true, - "dependencies": { - "make-dir": "~3.1.0", - "mime": "~2.5.2", - "minimatch": "~3.0.4", - "xxhashjs": "~0.2.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-url/node_modules/mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/postcss-url/node_modules/minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/postcss-value-parser": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", @@ -20721,18 +19532,18 @@ "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" }, "node_modules/read-package-json": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", - "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", + "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", "dev": true, "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", + "normalize-package-data": "^6.0.0", "npm-normalize-package-bin": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-package-json-fast": { @@ -20789,15 +19600,15 @@ } }, "node_modules/read-package-json/node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dev": true, "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { @@ -20810,12 +19621,12 @@ } }, "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "dev": true, "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/read-package-json/node_modules/minimatch": { @@ -20834,18 +19645,18 @@ } }, "node_modules/read-package-json/node_modules/normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dev": true, "dependencies": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-pkg": { @@ -21050,9 +19861,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", "dev": true }, "node_modules/regenerator-transform": { @@ -21287,14 +20098,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/release-it/node_modules/cli-width": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.0.0.tgz", - "integrity": "sha512-ZksGS2xpa/bYkNzN3BAw1wEjsLV/ZKOf/CCrJ/QOBsxx6fOARIkwTutxp1XIOIohi6HKmOFjMoK/XaqDVUpEEw==", - "engines": { - "node": ">= 12" - } - }, "node_modules/release-it/node_modules/cosmiconfig": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.0.0.tgz", @@ -21314,17 +20117,6 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, - "node_modules/release-it/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/release-it/node_modules/execa": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", @@ -21347,21 +20139,6 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/release-it/node_modules/figures": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", - "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", - "dependencies": { - "escape-string-regexp": "^5.0.0", - "is-unicode-supported": "^1.2.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/release-it/node_modules/globby": { "version": "13.1.2", "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", @@ -21895,11 +20672,11 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -22048,18 +20825,34 @@ } }, "node_modules/rollup": { - "version": "3.29.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", - "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.10.0.tgz", + "integrity": "sha512-t2v9G2AKxcQ8yrG+WGxctBes1AomT0M4ND7jTFBCVPXQ/WFTvNSefIrNSmLKhIKBrvN8SG+CZslimJcT3W2u2g==", "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, "bin": { "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=14.18.0", + "node": ">=18.0.0", "npm": ">=8.0.0" }, "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.10.0", + "@rollup/rollup-android-arm64": "4.10.0", + "@rollup/rollup-darwin-arm64": "4.10.0", + "@rollup/rollup-darwin-x64": "4.10.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.10.0", + "@rollup/rollup-linux-arm64-gnu": "4.10.0", + "@rollup/rollup-linux-arm64-musl": "4.10.0", + "@rollup/rollup-linux-riscv64-gnu": "4.10.0", + "@rollup/rollup-linux-x64-gnu": "4.10.0", + "@rollup/rollup-linux-x64-musl": "4.10.0", + "@rollup/rollup-win32-arm64-msvc": "4.10.0", + "@rollup/rollup-win32-ia32-msvc": "4.10.0", + "@rollup/rollup-win32-x64-msvc": "4.10.0", "fsevents": "~2.3.2" } }, @@ -22130,9 +20923,9 @@ "integrity": "sha512-LRneZZRXNgjzwG4bDQdOTSbze3fHm1EAKN/8bePxnlEZiBmkYEDggaHbuvHI9/hoqHbGfsEA7tWS9GhYHZBBsw==" }, "node_modules/sass": { - "version": "1.64.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", - "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "version": "1.69.7", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.69.7.tgz", + "integrity": "sha512-rzj2soDeZ8wtE2egyLXgOOHQvaC2iosZrkF6v3EUG+tBwEvhqUCzm0VP3k9gHF9LXbSrRhT5SksoI56Iw8NPnQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -22147,9 +20940,9 @@ } }, "node_modules/sass-loader": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.2.tgz", - "integrity": "sha512-CQbKl57kdEv+KDLquhC+gE3pXt74LEAzm+tzywcA0/aHZuub8wTErbjAoNI57rPUWRYRNC5WUnNl8eGJNbDdwg==", + "version": "13.3.3", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.3.tgz", + "integrity": "sha512-mt5YN2F1MOZr3d/wBRcZxeFgwgkH44wVc2zohO2YF6JiOMkiXe4BYRZpSu2sO1g71mo/j16txzUhsKZlqjVGzA==", "dev": true, "dependencies": { "neo-async": "^2.6.2" @@ -22548,6 +21341,22 @@ "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, + "node_modules/set-function-length": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", + "integrity": "sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==", + "dependencies": { + "define-data-property": "^1.1.2", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", @@ -22640,183 +21449,21 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sigstore": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", - "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", - "dev": true, - "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "@sigstore/sign": "^1.0.0", - "@sigstore/tuf": "^1.0.3", - "make-fetch-happen": "^11.0.1" - }, - "bin": { - "sigstore": "bin/sigstore.js" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/sigstore/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/sigstore/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/sigstore/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sigstore/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/sigstore/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/sigstore/node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/sigstore/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sigstore/node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/sigstore/node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/sigstore/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.2.1.tgz", + "integrity": "sha512-OBBSKvmjr4DCyUb+IC2p7wooOCsCNwaqvCilTJVNPo0y8lJl+LsCrfz4LtMwnw3Gn+8frt816wi1+DWZTUCpBQ==", "dev": true, "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/sigstore/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "@sigstore/bundle": "^2.1.1", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/sign": "^2.2.2", + "@sigstore/tuf": "^2.3.0", + "@sigstore/verify": "^1.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } }, "node_modules/sisteransi": { "version": "1.0.5", @@ -22933,17 +21580,29 @@ } }, "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", "dev": true, "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" }, "engines": { - "node": ">= 10" + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" } }, "node_modules/source-map": { @@ -22965,17 +21624,16 @@ } }, "node_modules/source-map-loader": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.1.tgz", - "integrity": "sha512-oqXpzDIByKONVY8g1NUPOTQhe0UTU5bWUl32GSkqK2LjJj0HmwTMVKxcUip0RgAYhY1mqgOxjbQM48a0mmeNfA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-5.0.0.tgz", + "integrity": "sha512-k2Dur7CbSLcAH73sBcIkV5xjPV4SzqO1NJ7+XaQl8if3VODDUj3FNchNGpqgJSKbvUfJuhVdv8K2Eu8/TNl2eA==", "dev": true, "dependencies": { - "abab": "^2.0.6", "iconv-lite": "^0.6.3", "source-map-js": "^1.0.2" }, "engines": { - "node": ">= 14.15.0" + "node": ">= 18.12.0" }, "funding": { "type": "opencollective", @@ -23661,9 +22319,9 @@ "dev": true }, "node_modules/terser": { - "version": "5.19.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", - "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "version": "5.26.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.26.0.tgz", + "integrity": "sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -24122,184 +22780,24 @@ } }, "node_modules/tslib": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", - "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tuf-js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", - "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.0.tgz", + "integrity": "sha512-ZSDngmP1z6zw+FIkIBjvOp/II/mIub/O7Pp12j1WNsiCpg5R5wAc//i555bBQsE44O94btLt0xM/Zr2LQjwdCg==", "dev": true, "dependencies": { - "@tufjs/models": "1.0.4", + "@tufjs/models": "2.0.0", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.1" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/tuf-js/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/tuf-js/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/tuf-js/node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/tuf-js/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/tuf-js/node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/tuf-js/node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/tuf-js/node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/tuf-js/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -24400,9 +22898,9 @@ } }, "node_modules/typescript": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", - "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -24456,6 +22954,26 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.2.1.tgz", + "integrity": "sha512-7Wa9thEM6/LMnnKtxJHlc8SrTlDmxqJecgz1iy8KlsN0/iskQXOQCuPkrZLXbElPaSw5slFFyKIKXyJ3UtbApw==", + "dev": true, + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true, + "optional": true, + "peer": true + }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", @@ -24773,61 +23291,6 @@ "extsprintf": "^1.2.0" } }, - "node_modules/vite": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.2.tgz", - "integrity": "sha512-tBCZBNSBbHQkaGyhGCDUGqeo2ph8Fstyp6FMSvTtsXeZSPpSMGlviAOav2hxVTqFcx8Hj/twtWKsMJXNY0xI8w==", - "dev": true, - "dependencies": { - "esbuild": "^0.18.10", - "postcss": "^8.4.27", - "rollup": "^3.27.1" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - }, - "peerDependencies": { - "@types/node": ">= 14", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, "node_modules/vm2": { "version": "3.9.14", "resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.14.tgz", @@ -24852,16 +23315,6 @@ "node": ">=0.10.0" } }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", - "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, "node_modules/w3c-xmlserializer": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", @@ -25050,9 +23503,9 @@ } }, "node_modules/webpack": { - "version": "5.88.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", - "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "version": "5.89.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", + "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.3", @@ -25206,34 +23659,14 @@ "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", - "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/webpack-merge": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", - "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dev": true, "dependencies": { "clone-deep": "^4.0.1", + "flat": "^5.0.2", "wildcard": "^2.0.0" }, "engines": { @@ -25442,15 +23875,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "node_modules/widest-line": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", @@ -25712,9 +24136,9 @@ } }, "node_modules/ws": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", "dev": true, "engines": { "node": ">=10.0.0" @@ -25805,15 +24229,6 @@ "node": ">=0.4" } }, - "node_modules/xxhashjs": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", - "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", - "dev": true, - "dependencies": { - "cuint": "^0.2.2" - } - }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", @@ -25890,9 +24305,9 @@ } }, "node_modules/zone.js": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.3.tgz", - "integrity": "sha512-MKPbmZie6fASC/ps4dkmIhaT5eonHkEt6eAy80K42tAm0G2W+AahLJjbfi6X9NPdciOE9GRFTTM8u2IiF6O3ww==", + "version": "0.14.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.14.3.tgz", + "integrity": "sha512-jYoNqF046Q+JfcZSItRSt+oXFcpXL88yq7XAZjb/NKTS7w2hHpKjRJ3VlFD1k75wMaRRXNUt5vrZVlygiMyHbA==", "dependencies": { "tslib": "^2.3.0" } diff --git a/package.json b/package.json index 79c1329..79a1524 100644 --- a/package.json +++ b/package.json @@ -21,31 +21,31 @@ }, "private": true, "dependencies": { - "@angular/animations": "^16.2.12", - "@angular/cdk": "^16.2.14", - "@angular/common": "^16.2.12", - "@angular/compiler": "^16.2.12", - "@angular/core": "^16.2.12", - "@angular/forms": "^16.2.12", - "@angular/material": "^16.2.14", - "@angular/platform-browser": "^16.2.12", - "@angular/platform-browser-dynamic": "^16.2.12", - "@angular/router": "^16.2.12", + "@angular/animations": "^17.1.3", + "@angular/cdk": "^17.1.2", + "@angular/common": "^17.1.3", + "@angular/compiler": "^17.1.3", + "@angular/core": "^17.1.3", + "@angular/forms": "^17.1.3", + "@angular/material": "^17.1.2", + "@angular/platform-browser": "^17.1.3", + "@angular/platform-browser-dynamic": "^17.1.3", + "@angular/router": "^17.1.3", "@release-it/conventional-changelog": "^5.1.1", "@types/web-bluetooth": "0.0.6", "rxjs": "~7.8.0", "smoothie": "^1.35.0", "ts-jest": "^29.0.5", "tslib": "^2.3.0", - "zone.js": "~0.13.3" + "zone.js": "~0.14.3" }, "devDependencies": { "@angular-builders/jest": "^16.0.0", - "@angular-devkit/build-angular": "^16.2.12", - "@angular-devkit/core": "^16.2.12", - "@angular/cli": "^16.2.12", - "@angular/compiler-cli": "^16.2.12", - "@angular/language-service": "^16.2.12", + "@angular-devkit/build-angular": "^17.1.3", + "@angular-devkit/core": "^17.1.3", + "@angular/cli": "^17.1.3", + "@angular/compiler-cli": "^17.1.3", + "@angular/language-service": "^17.1.3", "@compodoc/compodoc": "^1.1.11", "@types/jasmine": "~3.6.0", "@types/jasminewd2": "~2.0.8", @@ -60,10 +60,10 @@ "karma-coverage": "~2.2.0", "karma-jasmine": "~5.1.0", "karma-jasmine-html-reporter": "~2.0.0", - "ng-packagr": "^16.2.3", + "ng-packagr": "^17.1.2", "protractor": "~7.0.0", "release-it": "^15.6.0", "ts-node": "~10.9.0", - "typescript": "~5.1.0" + "typescript": "~5.3.3" } } \ No newline at end of file