microsoftgraph / microsoftgraph/msgraph-sdk-php
Invalid horizontalSectionLayoutType enum value flexible
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- PHP
- Sterne
- 669
- Forks
- 150
- Ø Merge
- 15 Std. 21 Min.
- Gemergte PRs (30 T.)
- 3
Beschreibung
Describe the bug
When loading an expanded canvasLayout using the new flexible layout you get an Invalid enum value flexible exception.
The new flexible layout type is missing from Microsoft\Graph\Generated\Models\HorizontalSectionLayoutType
Expected behavior
Page content is loaded without error
How to reproduce
$requestConfig = new GraphSitePageRequestBuilderGetRequestConfiguration();
$requestConfig->queryParameters = GraphSitePageRequestBuilderGetRequestConfiguration::createQueryParameters();
$requestConfig->queryParameters->select = ['ID', 'canvasLayout'];
$requestConfig->queryParameters->expand = ['canvasLayout'];
$graphServiceClient->sites()->bySiteId(...)->pages()->graphSitePage()->get($requestConfig)->wait()
SDK Version
No response
Latest version known to work for scenario above?
No response
Known Workarounds
No response
Debug output
Click to expand log
InvalidArgumentException {#3210 // app/Integrations/SharePointIntegration.php:653
#message: "Invalid enum value flexible"
#code: 0
#file: "
/var/www/html/vendor
/microsoft/kiota-abstractions/
src/Enum.php"
#line: 57
trace: {
/var/www/html/vendor
/microsoft/kiota-abstractions/
src/Enum.php:57 {
Microsoft\Kiota\Abstractions
Enum->__construct(string $value) …
› if (!self::has($component)) {
› throw new InvalidArgumentException("Invalid enum value $value");
› }
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:170 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getEnumValue(string $targetEnum): Enum …
› }
› return new $targetEnum($this->jsonNode);
› }
}
/var/www/html/vendor
/microsoft/microsoft-graph/
src/Generated/Models/HorizontalSection.php:63 {
Microsoft\Graph\Generated\Models\HorizontalSection->Microsoft\Graph\Generated\Models
{closure} …
› 'emphasis' => fn(ParseNode $n) => $o->setEmphasis($n->getEnumValue(SectionEmphasisType::class)),
› 'layout' => fn(ParseNode $n) => $o->setLayout($n->getEnumValue(HorizontalSectionLayoutType::class)),
› ]);
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:147 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->assignFieldValues($result): void …
› if ($deserializer !== null) {
› $deserializer(new JsonParseNode($value));
› } else {
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:120 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getObjectValue(array $type): Parsable …
› }
› $this->assignFieldValues($result);
› if ($this->getOnAfterAssignFieldValues() !== null){
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:95 {
Microsoft\Kiota\Serialization\Json\JsonParseNode::Microsoft\Kiota\Serialization\Json
{closure} …
› $result = array_map(static function ($val) use($type) {
› return $val->getObjectValue($type);
› }, array_map(static function ($value) {
}
Microsoft\Kiota\Serialization\Json\JsonParseNode::Microsoft\Kiota\Serialization\Json
{closure}() {}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:94 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getCollectionOfObjectValues(array $type): ?array …
› }
› $result = array_map(static function ($val) use($type) {
› return $val->getObjectValue($type);
}
/var/www/html/vendor
/microsoft/microsoft-graph/
src/Generated/Models/CanvasLayout.php:35 {
Microsoft\Graph\Generated\Models\CanvasLayout->Microsoft\Graph\Generated\Models
{closure} …
› return array_merge(parent::getFieldDeserializers(), [
› 'horizontalSections' => fn(ParseNode $n) => $o->setHorizontalSections($n->getCollectionOfObjectValues([HorizontalSection::class, 'createFromDiscriminatorValue'])),
› 'verticalSection' => fn(ParseNode $n) => $o->setVerticalSection($n->getObjectValue([VerticalSection::class, 'createFromDiscriminatorValue'])),
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:147 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->assignFieldValues($result): void …
› if ($deserializer !== null) {
› $deserializer(new JsonParseNode($value));
› } else {
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:120 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getObjectValue(array $type): Parsable …
› }
› $this->assignFieldValues($result);
› if ($this->getOnAfterAssignFieldValues() !== null){
}
/var/www/html/vendor
/microsoft/microsoft-graph/
src/Generated/Models/SitePage.php:47 {
Microsoft\Graph\Generated\Models\SitePage->Microsoft\Graph\Generated\Models
{closure} …
› return array_merge(parent::getFieldDeserializers(), [
› 'canvasLayout' => fn(ParseNode $n) => $o->setCanvasLayout($n->getObjectValue([CanvasLayout::class, 'createFromDiscriminatorValue'])),
› 'promotionKind' => fn(ParseNode $n) => $o->setPromotionKind($n->getEnumValue(PagePromotionType::class)),
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:147 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->assignFieldValues($result): void …
› if ($deserializer !== null) {
› $deserializer(new JsonParseNode($value));
› } else {
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:120 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getObjectValue(array $type): Parsable …
› }
› $this->assignFieldValues($result);
› if ($this->getOnAfterAssignFieldValues() !== null){
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:95 {
Microsoft\Kiota\Serialization\Json\JsonParseNode::Microsoft\Kiota\Serialization\Json
{closure} …
› $result = array_map(static function ($val) use($type) {
› return $val->getObjectValue($type);
› }, array_map(static function ($value) {
}
Microsoft\Kiota\Serialization\Json\JsonParseNode::Microsoft\Kiota\Serialization\Json
{closure}() {}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:94 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getCollectionOfObjectValues(array $type): ?array …
› }
› $result = array_map(static function ($val) use($type) {
› return $val->getObjectValue($type);
}
/var/www/html/vendor
/microsoft/microsoft-graph/
src/Generated/Models/SitePageCollectionResponse.php:35 {
Microsoft\Graph\Generated\Models\SitePageCollectionResponse->Microsoft\Graph\Generated\Models
{closure} …
› return array_merge(parent::getFieldDeserializers(), [
› 'value' => fn(ParseNode $n) => $o->setValue($n->getCollectionOfObjectValues([SitePage::class, 'createFromDiscriminatorValue'])),
› ]);
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:147 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->assignFieldValues($result): void …
› if ($deserializer !== null) {
› $deserializer(new JsonParseNode($value));
› } else {
}
/var/www/html/vendor
/microsoft/kiota-serialization-json/
src/JsonParseNode.php:120 {
Microsoft\Kiota\Serialization\Json
JsonParseNode->getObjectValue(array $type): Parsable …
› }
› $this->assignFieldValues($result);
› if ($this->getOnAfterAssignFieldValues() !== null){
}
/var/www/html/vendor
/microsoft/kiota-http-guzzle/
src/GuzzleRequestAdapter.php:170 {
Microsoft\Kiota\Http\GuzzleRequestAdapter->Microsoft\Kiota\Http
{closure} …
› $this->setResponseType($targetCallable[0], $span);
› return $rootNode->getObjectValue($targetCallable);
› }
}
/var/www/html/vendor
/php-http/promise/
src/FulfilledPromise.php:39 {
Http\Promise
FulfilledPromise->then(?callable $onFulfilled = null, ?callable $onRejected = null) …
› try {
› return new self($onFulfilled($this->result));
› } catch (\Exception $e) {
}
/var/www/html/vendor
/microsoft/kiota-http-guzzle/
src/GuzzleRequestAdapter.php:145 {
Microsoft\Kiota\Http
GuzzleRequestAdapter->sendAsync(RequestInformation $requestInfo, array $targetCallable, ?array $errorMappings = null): Promise …
› $responseMessage = $this->getHttpResponseMessage($requestInfo, '', $span);
› $finalResponse = $responseMessage->then(
› function (ResponseInterface $result) use ($targetCallable, $requestInfo, $errorMappings, &$span) {
}
/var/www/html/vendor
/microsoft/microsoft-graph/
src/Generated/Sites/Item/Pages/GraphSitePage/GraphSitePageRequestBuilder.php:53 {
Microsoft\Graph\Generated\Sites\Item\Pages\GraphSitePage
GraphSitePageRequestBuilder->get(?GraphSitePageRequestBuilderGetRequestConfiguration $requestConfiguration = null): Promise …
› ];
› return $this->requestAdapter->sendAsync($requestInfo, [SitePageCollectionResponse::class, 'createFromDiscriminatorValue'], $errorMappings);
› }
}
}
}
Configuration
No response
Other information
No response
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit Microsoft\Graph\Generated\Models\HorizontalSectionLayoutType und dem Deserialisierungspfad in src/Generated/Models/HorizontalSection.php. Reproduziere die im Issue beschriebene erweiterte canvasLayout-Anfrage und überprüfe anschließend, dass das Laden einer Seite mit dem flexiblen Layout nicht mehr Invalid enum value flexible auslöst.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- php
- Bereich
- api
- Issue-Typ
- Bug
- Schwierigkeit
- 1/5
- Geschätzter Aufwand
- Unter einer Stunde
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 48/100