38 lines
1.0 KiB
JavaScript
38 lines
1.0 KiB
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
import Serializer from './application';
|
|
import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/oidc-provider';
|
|
|
|
export default class OidcSerializer extends Serializer {
|
|
primaryKey = PRIMARY_KEY;
|
|
slugKey = SLUG_KEY;
|
|
|
|
respondForAuthorize(respond, serialized, data) {
|
|
// we avoid the parent serializer here as it tries to create a fingerprint
|
|
// for an 'action' request but we still need to pass the headers through
|
|
return respond((headers, body) => {
|
|
return this.attachHeaders(headers, body, data);
|
|
});
|
|
}
|
|
|
|
respondForQueryRecord(respond, query) {
|
|
// add the name and nspace here so we can merge this
|
|
// TODO: Look to see if we always want the merging functionality
|
|
return super.respondForQueryRecord(
|
|
(cb) =>
|
|
respond((headers, body) =>
|
|
cb(headers, {
|
|
Name: query.id,
|
|
Namespace: query.ns,
|
|
Partition: query.partition,
|
|
...body,
|
|
})
|
|
),
|
|
query
|
|
);
|
|
}
|
|
}
|