microsoftgraph / microsoftgraph/msgraph-sdk-php
Invalid horizontalSectionLayoutType enum value flexible
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- PHP
- Estrellas
- 669
- Forks
- 150
- Merge medio
- 15 h 21 min
- PR fusionados (30 d)
- 3
Descripción
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
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con Microsoft\Graph\Generated\Models\HorizontalSectionLayoutType y la ruta de deserialización en src/Generated/Models/HorizontalSection.php. Reproduce la solicitud ampliada de canvasLayout descrita en el issue y, a continuación, verifica que cargar una página con el diseño flexible ya no provoque Invalid enum value flexible.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- php
- Área
- api
- Tipo de issue
- Error
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 48/100