packages feed

gogol-firebase-rules 0.3.0 → 0.4.0

raw patch · 17 files changed

+1446/−532 lines, 17 filesdep ~gogol-corePVP ok

version bump matches the API change (PVP)

Dependency ranges changed: gogol-core

API changes (from Hackage documentation)

- Network.Google.Resource.FirebaseRules.Projects.Releases.Create: prcrBearerToken :: Lens' ProjectsReleasesCreate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Create: prcrPp :: Lens' ProjectsReleasesCreate Bool
- Network.Google.Resource.FirebaseRules.Projects.Releases.Delete: prdBearerToken :: Lens' ProjectsReleasesDelete (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Delete: prdPp :: Lens' ProjectsReleasesDelete Bool
- Network.Google.Resource.FirebaseRules.Projects.Releases.Get: pBearerToken :: Lens' ProjectsReleasesGet (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Get: pPp :: Lens' ProjectsReleasesGet Bool
- Network.Google.Resource.FirebaseRules.Projects.Releases.List: prlrBearerToken :: Lens' ProjectsReleasesList (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.List: prlrPp :: Lens' ProjectsReleasesList Bool
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: data ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: instance Data.Data.Data Network.Google.Resource.FirebaseRules.Projects.Releases.Update.ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: instance GHC.Classes.Eq Network.Google.Resource.FirebaseRules.Projects.Releases.Update.ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: instance GHC.Generics.Generic Network.Google.Resource.FirebaseRules.Projects.Releases.Update.ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: instance GHC.Show.Show Network.Google.Resource.FirebaseRules.Projects.Releases.Update.ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: instance Network.Google.Types.GoogleRequest Network.Google.Resource.FirebaseRules.Projects.Releases.Update.ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: projectsReleasesUpdate :: Release -> Text -> ProjectsReleasesUpdate
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruAccessToken :: Lens' ProjectsReleasesUpdate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruBearerToken :: Lens' ProjectsReleasesUpdate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruCallback :: Lens' ProjectsReleasesUpdate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruName :: Lens' ProjectsReleasesUpdate Text
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruPayload :: Lens' ProjectsReleasesUpdate Release
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruPp :: Lens' ProjectsReleasesUpdate Bool
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruUploadProtocol :: Lens' ProjectsReleasesUpdate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruUploadType :: Lens' ProjectsReleasesUpdate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: pruXgafv :: Lens' ProjectsReleasesUpdate (Maybe Xgafv)
- Network.Google.Resource.FirebaseRules.Projects.Releases.Update: type ProjectsReleasesUpdateResource = "v1" :> (Capture "name" Text :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Release :> Put '[JSON] Release))))))))))
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create: prcBearerToken :: Lens' ProjectsRulesetsCreate (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create: prcPp :: Lens' ProjectsRulesetsCreate Bool
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Delete: proBearerToken :: Lens' ProjectsRulesetsDelete (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Delete: proPp :: Lens' ProjectsRulesetsDelete Bool
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Get: prgBearerToken :: Lens' ProjectsRulesetsGet (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Get: prgPp :: Lens' ProjectsRulesetsGet Bool
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.List: prlBearerToken :: Lens' ProjectsRulesetsList (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.List: prlPp :: Lens' ProjectsRulesetsList Bool
- Network.Google.Resource.FirebaseRules.Projects.Test: ptBearerToken :: Lens' ProjectsTest (Maybe Text)
- Network.Google.Resource.FirebaseRules.Projects.Test: ptPp :: Lens' ProjectsTest Bool
+ Network.Google.FirebaseRules: Allow :: TestCaseExpectation
+ Network.Google.FirebaseRules: Deny :: TestCaseExpectation
+ Network.Google.FirebaseRules: EventFlowTriggers :: GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules: ExpectationUnspecified :: TestCaseExpectation
+ Network.Google.FirebaseRules: Failure :: TestResultState
+ Network.Google.FirebaseRules: FirebaseRules :: GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules: FirebaseRulesExecutableV1 :: GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules: FirebaseRulesExecutableV2 :: GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules: LanguageUnspecified :: GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules: ReleaseExecutableVersionUnspecified :: GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules: StateUnspecified :: TestResultState
+ Network.Google.FirebaseRules: Success :: TestResultState
+ Network.Google.FirebaseRules: aAnyValue :: Lens' Arg (Maybe Empty)
+ Network.Google.FirebaseRules: aExactValue :: Lens' Arg (Maybe JSONValue)
+ Network.Google.FirebaseRules: arg :: Arg
+ Network.Google.FirebaseRules: data Arg
+ Network.Google.FirebaseRules: data FunctionCall
+ Network.Google.FirebaseRules: data FunctionMock
+ Network.Google.FirebaseRules: data GetReleaseExecutableResponse
+ Network.Google.FirebaseRules: data GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules: data GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules: data Result
+ Network.Google.FirebaseRules: data TestCase
+ Network.Google.FirebaseRules: data TestCaseExpectation
+ Network.Google.FirebaseRules: data TestResult
+ Network.Google.FirebaseRules: data TestResultState
+ Network.Google.FirebaseRules: data TestSuite
+ Network.Google.FirebaseRules: data UpdateReleaseRequest
+ Network.Google.FirebaseRules: data VisitedExpression
+ Network.Google.FirebaseRules: fcArgs :: Lens' FunctionCall [JSONValue]
+ Network.Google.FirebaseRules: fcFunction :: Lens' FunctionCall (Maybe Text)
+ Network.Google.FirebaseRules: fmArgs :: Lens' FunctionMock [Arg]
+ Network.Google.FirebaseRules: fmFunction :: Lens' FunctionMock (Maybe Text)
+ Network.Google.FirebaseRules: fmResult :: Lens' FunctionMock (Maybe Result)
+ Network.Google.FirebaseRules: functionCall :: FunctionCall
+ Network.Google.FirebaseRules: functionMock :: FunctionMock
+ Network.Google.FirebaseRules: getReleaseExecutableResponse :: GetReleaseExecutableResponse
+ Network.Google.FirebaseRules: grerExecutable :: Lens' GetReleaseExecutableResponse (Maybe ByteString)
+ Network.Google.FirebaseRules: grerExecutableVersion :: Lens' GetReleaseExecutableResponse (Maybe GetReleaseExecutableResponseExecutableVersion)
+ Network.Google.FirebaseRules: grerLanguage :: Lens' GetReleaseExecutableResponse (Maybe GetReleaseExecutableResponseLanguage)
+ Network.Google.FirebaseRules: grerRulesetName :: Lens' GetReleaseExecutableResponse (Maybe Text)
+ Network.Google.FirebaseRules: grerSyncTime :: Lens' GetReleaseExecutableResponse (Maybe UTCTime)
+ Network.Google.FirebaseRules: grerUpdateTime :: Lens' GetReleaseExecutableResponse (Maybe UTCTime)
+ Network.Google.FirebaseRules: rUndefined :: Lens' Result (Maybe Empty)
+ Network.Google.FirebaseRules: rValue :: Lens' Result (Maybe JSONValue)
+ Network.Google.FirebaseRules: result :: Result
+ Network.Google.FirebaseRules: tcExpectation :: Lens' TestCase (Maybe TestCaseExpectation)
+ Network.Google.FirebaseRules: tcFunctionMocks :: Lens' TestCase [FunctionMock]
+ Network.Google.FirebaseRules: tcRequest :: Lens' TestCase (Maybe JSONValue)
+ Network.Google.FirebaseRules: tcResource :: Lens' TestCase (Maybe JSONValue)
+ Network.Google.FirebaseRules: testCase :: TestCase
+ Network.Google.FirebaseRules: testResult :: TestResult
+ Network.Google.FirebaseRules: testSuite :: TestSuite
+ Network.Google.FirebaseRules: trDebugMessages :: Lens' TestResult [Text]
+ Network.Google.FirebaseRules: trErrorPosition :: Lens' TestResult (Maybe SourcePosition)
+ Network.Google.FirebaseRules: trFunctionCalls :: Lens' TestResult [FunctionCall]
+ Network.Google.FirebaseRules: trState :: Lens' TestResult (Maybe TestResultState)
+ Network.Google.FirebaseRules: trVisitedExpressions :: Lens' TestResult [VisitedExpression]
+ Network.Google.FirebaseRules: trrTestResults :: Lens' TestRulesetResponse [TestResult]
+ Network.Google.FirebaseRules: trrTestSuite :: Lens' TestRulesetRequest (Maybe TestSuite)
+ Network.Google.FirebaseRules: tsTestCases :: Lens' TestSuite [TestCase]
+ Network.Google.FirebaseRules: updateReleaseRequest :: UpdateReleaseRequest
+ Network.Google.FirebaseRules: urrRelease :: Lens' UpdateReleaseRequest (Maybe Release)
+ Network.Google.FirebaseRules: urrUpdateMask :: Lens' UpdateReleaseRequest (Maybe GFieldMask)
+ Network.Google.FirebaseRules: veSourcePosition :: Lens' VisitedExpression (Maybe SourcePosition)
+ Network.Google.FirebaseRules: veValue :: Lens' VisitedExpression (Maybe JSONValue)
+ Network.Google.FirebaseRules: visitedExpression :: VisitedExpression
+ Network.Google.FirebaseRules.Types: Allow :: TestCaseExpectation
+ Network.Google.FirebaseRules.Types: Deny :: TestCaseExpectation
+ Network.Google.FirebaseRules.Types: EventFlowTriggers :: GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules.Types: ExpectationUnspecified :: TestCaseExpectation
+ Network.Google.FirebaseRules.Types: Failure :: TestResultState
+ Network.Google.FirebaseRules.Types: FirebaseRules :: GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules.Types: FirebaseRulesExecutableV1 :: GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules.Types: FirebaseRulesExecutableV2 :: GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules.Types: LanguageUnspecified :: GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules.Types: ReleaseExecutableVersionUnspecified :: GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules.Types: StateUnspecified :: TestResultState
+ Network.Google.FirebaseRules.Types: Success :: TestResultState
+ Network.Google.FirebaseRules.Types: aAnyValue :: Lens' Arg (Maybe Empty)
+ Network.Google.FirebaseRules.Types: aExactValue :: Lens' Arg (Maybe JSONValue)
+ Network.Google.FirebaseRules.Types: arg :: Arg
+ Network.Google.FirebaseRules.Types: data Arg
+ Network.Google.FirebaseRules.Types: data FunctionCall
+ Network.Google.FirebaseRules.Types: data FunctionMock
+ Network.Google.FirebaseRules.Types: data GetReleaseExecutableResponse
+ Network.Google.FirebaseRules.Types: data GetReleaseExecutableResponseExecutableVersion
+ Network.Google.FirebaseRules.Types: data GetReleaseExecutableResponseLanguage
+ Network.Google.FirebaseRules.Types: data Result
+ Network.Google.FirebaseRules.Types: data TestCase
+ Network.Google.FirebaseRules.Types: data TestCaseExpectation
+ Network.Google.FirebaseRules.Types: data TestResult
+ Network.Google.FirebaseRules.Types: data TestResultState
+ Network.Google.FirebaseRules.Types: data TestSuite
+ Network.Google.FirebaseRules.Types: data UpdateReleaseRequest
+ Network.Google.FirebaseRules.Types: data VisitedExpression
+ Network.Google.FirebaseRules.Types: fcArgs :: Lens' FunctionCall [JSONValue]
+ Network.Google.FirebaseRules.Types: fcFunction :: Lens' FunctionCall (Maybe Text)
+ Network.Google.FirebaseRules.Types: fmArgs :: Lens' FunctionMock [Arg]
+ Network.Google.FirebaseRules.Types: fmFunction :: Lens' FunctionMock (Maybe Text)
+ Network.Google.FirebaseRules.Types: fmResult :: Lens' FunctionMock (Maybe Result)
+ Network.Google.FirebaseRules.Types: functionCall :: FunctionCall
+ Network.Google.FirebaseRules.Types: functionMock :: FunctionMock
+ Network.Google.FirebaseRules.Types: getReleaseExecutableResponse :: GetReleaseExecutableResponse
+ Network.Google.FirebaseRules.Types: grerExecutable :: Lens' GetReleaseExecutableResponse (Maybe ByteString)
+ Network.Google.FirebaseRules.Types: grerExecutableVersion :: Lens' GetReleaseExecutableResponse (Maybe GetReleaseExecutableResponseExecutableVersion)
+ Network.Google.FirebaseRules.Types: grerLanguage :: Lens' GetReleaseExecutableResponse (Maybe GetReleaseExecutableResponseLanguage)
+ Network.Google.FirebaseRules.Types: grerRulesetName :: Lens' GetReleaseExecutableResponse (Maybe Text)
+ Network.Google.FirebaseRules.Types: grerSyncTime :: Lens' GetReleaseExecutableResponse (Maybe UTCTime)
+ Network.Google.FirebaseRules.Types: grerUpdateTime :: Lens' GetReleaseExecutableResponse (Maybe UTCTime)
+ Network.Google.FirebaseRules.Types: rUndefined :: Lens' Result (Maybe Empty)
+ Network.Google.FirebaseRules.Types: rValue :: Lens' Result (Maybe JSONValue)
+ Network.Google.FirebaseRules.Types: result :: Result
+ Network.Google.FirebaseRules.Types: tcExpectation :: Lens' TestCase (Maybe TestCaseExpectation)
+ Network.Google.FirebaseRules.Types: tcFunctionMocks :: Lens' TestCase [FunctionMock]
+ Network.Google.FirebaseRules.Types: tcRequest :: Lens' TestCase (Maybe JSONValue)
+ Network.Google.FirebaseRules.Types: tcResource :: Lens' TestCase (Maybe JSONValue)
+ Network.Google.FirebaseRules.Types: testCase :: TestCase
+ Network.Google.FirebaseRules.Types: testResult :: TestResult
+ Network.Google.FirebaseRules.Types: testSuite :: TestSuite
+ Network.Google.FirebaseRules.Types: trDebugMessages :: Lens' TestResult [Text]
+ Network.Google.FirebaseRules.Types: trErrorPosition :: Lens' TestResult (Maybe SourcePosition)
+ Network.Google.FirebaseRules.Types: trFunctionCalls :: Lens' TestResult [FunctionCall]
+ Network.Google.FirebaseRules.Types: trState :: Lens' TestResult (Maybe TestResultState)
+ Network.Google.FirebaseRules.Types: trVisitedExpressions :: Lens' TestResult [VisitedExpression]
+ Network.Google.FirebaseRules.Types: trrTestResults :: Lens' TestRulesetResponse [TestResult]
+ Network.Google.FirebaseRules.Types: trrTestSuite :: Lens' TestRulesetRequest (Maybe TestSuite)
+ Network.Google.FirebaseRules.Types: tsTestCases :: Lens' TestSuite [TestCase]
+ Network.Google.FirebaseRules.Types: updateReleaseRequest :: UpdateReleaseRequest
+ Network.Google.FirebaseRules.Types: urrRelease :: Lens' UpdateReleaseRequest (Maybe Release)
+ Network.Google.FirebaseRules.Types: urrUpdateMask :: Lens' UpdateReleaseRequest (Maybe GFieldMask)
+ Network.Google.FirebaseRules.Types: veSourcePosition :: Lens' VisitedExpression (Maybe SourcePosition)
+ Network.Google.FirebaseRules.Types: veValue :: Lens' VisitedExpression (Maybe JSONValue)
+ Network.Google.FirebaseRules.Types: visitedExpression :: VisitedExpression
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: data ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: instance Data.Data.Data Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable.ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: instance GHC.Classes.Eq Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable.ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: instance GHC.Generics.Generic Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable.ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: instance GHC.Show.Show Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable.ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: instance Network.Google.Types.GoogleRequest Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable.ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeAccessToken :: Lens' ProjectsReleasesGetExecutable (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeCallback :: Lens' ProjectsReleasesGetExecutable (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeExecutableVersion :: Lens' ProjectsReleasesGetExecutable (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeName :: Lens' ProjectsReleasesGetExecutable Text
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeUploadProtocol :: Lens' ProjectsReleasesGetExecutable (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeUploadType :: Lens' ProjectsReleasesGetExecutable (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: prgeXgafv :: Lens' ProjectsReleasesGetExecutable (Maybe Xgafv)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: projectsReleasesGetExecutable :: Text -> ProjectsReleasesGetExecutable
+ Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable: type ProjectsReleasesGetExecutableResource = "v1" :> CaptureMode "name" "getExecutable" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "executableVersion" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] GetReleaseExecutableResponse
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: data ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: instance Data.Data.Data Network.Google.Resource.FirebaseRules.Projects.Releases.Patch.ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: instance GHC.Classes.Eq Network.Google.Resource.FirebaseRules.Projects.Releases.Patch.ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: instance GHC.Generics.Generic Network.Google.Resource.FirebaseRules.Projects.Releases.Patch.ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: instance GHC.Show.Show Network.Google.Resource.FirebaseRules.Projects.Releases.Patch.ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: instance Network.Google.Types.GoogleRequest Network.Google.Resource.FirebaseRules.Projects.Releases.Patch.ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: projectsReleasesPatch :: UpdateReleaseRequest -> Text -> ProjectsReleasesPatch
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpAccessToken :: Lens' ProjectsReleasesPatch (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpCallback :: Lens' ProjectsReleasesPatch (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpName :: Lens' ProjectsReleasesPatch Text
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpPayload :: Lens' ProjectsReleasesPatch UpdateReleaseRequest
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpUploadProtocol :: Lens' ProjectsReleasesPatch (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpUploadType :: Lens' ProjectsReleasesPatch (Maybe Text)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: prpXgafv :: Lens' ProjectsReleasesPatch (Maybe Xgafv)
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Patch: type ProjectsReleasesPatchResource = "v1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] UpdateReleaseRequest :> Patch '[JSON] Release
+ Network.Google.Resource.FirebaseRules.Projects.Rulesets.List: prlFilter :: Lens' ProjectsRulesetsList (Maybe Text)
- Network.Google.FirebaseRules: type FirebaseRulesAPI = ProjectsRulesetsListResource :<|> (ProjectsRulesetsGetResource :<|> (ProjectsRulesetsCreateResource :<|> (ProjectsRulesetsDeleteResource :<|> (ProjectsReleasesListResource :<|> (ProjectsReleasesGetResource :<|> (ProjectsReleasesCreateResource :<|> (ProjectsReleasesDeleteResource :<|> (ProjectsReleasesUpdateResource :<|> ProjectsTestResource))))))))
+ Network.Google.FirebaseRules: type FirebaseRulesAPI = ProjectsRulesetsListResource :<|> ProjectsRulesetsGetResource :<|> ProjectsRulesetsCreateResource :<|> ProjectsRulesetsDeleteResource :<|> ProjectsReleasesListResource :<|> ProjectsReleasesPatchResource :<|> ProjectsReleasesGetResource :<|> ProjectsReleasesGetExecutableResource :<|> ProjectsReleasesCreateResource :<|> ProjectsReleasesDeleteResource :<|> ProjectsTestResource
- Network.Google.Resource.FirebaseRules.Projects.Releases.Create: type ProjectsReleasesCreateResource = "v1" :> (Capture "name" Text :> ("releases" :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Release :> Post '[JSON] Release)))))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Create: type ProjectsReleasesCreateResource = "v1" :> Capture "name" Text :> "releases" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Release :> Post '[JSON] Release
- Network.Google.Resource.FirebaseRules.Projects.Releases.Delete: type ProjectsReleasesDeleteResource = "v1" :> (Capture "name" Text :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty)))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Delete: type ProjectsReleasesDeleteResource = "v1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.FirebaseRules.Projects.Releases.Get: type ProjectsReleasesGetResource = "v1" :> (Capture "name" Text :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Release)))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Releases.Get: type ProjectsReleasesGetResource = "v1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Release
- Network.Google.Resource.FirebaseRules.Projects.Releases.List: type ProjectsReleasesListResource = "v1" :> (Capture "name" Text :> ("releases" :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "filter" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListReleasesResponse)))))))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Releases.List: type ProjectsReleasesListResource = "v1" :> Capture "name" Text :> "releases" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "filter" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListReleasesResponse
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create: type ProjectsRulesetsCreateResource = "v1" :> (Capture "name" Text :> ("rulesets" :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Ruleset :> Post '[JSON] Ruleset)))))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create: type ProjectsRulesetsCreateResource = "v1" :> Capture "name" Text :> "rulesets" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Ruleset :> Post '[JSON] Ruleset
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Delete: type ProjectsRulesetsDeleteResource = "v1" :> (Capture "name" Text :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty)))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Rulesets.Delete: type ProjectsRulesetsDeleteResource = "v1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.Get: type ProjectsRulesetsGetResource = "v1" :> (Capture "name" Text :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Ruleset)))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Rulesets.Get: type ProjectsRulesetsGetResource = "v1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Ruleset
- Network.Google.Resource.FirebaseRules.Projects.Rulesets.List: type ProjectsRulesetsListResource = "v1" :> (Capture "name" Text :> ("rulesets" :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListRulesetsResponse))))))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Rulesets.List: type ProjectsRulesetsListResource = "v1" :> Capture "name" Text :> "rulesets" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "filter" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListRulesetsResponse
- Network.Google.Resource.FirebaseRules.Projects.Test: type ProjectsTestResource = "v1" :> (CaptureMode "name" "test" Text :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] TestRulesetRequest :> Post '[JSON] TestRulesetResponse))))))))))
+ Network.Google.Resource.FirebaseRules.Projects.Test: type ProjectsTestResource = "v1" :> CaptureMode "name" "test" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] TestRulesetRequest :> Post '[JSON] TestRulesetResponse

Files

gen/Network/Google/FirebaseRules.hs view
@@ -41,11 +41,14 @@     -- ** firebaserules.projects.releases.get     , module Network.Google.Resource.FirebaseRules.Projects.Releases.Get +    -- ** firebaserules.projects.releases.getExecutable+    , module Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable+     -- ** firebaserules.projects.releases.list     , module Network.Google.Resource.FirebaseRules.Projects.Releases.List -    -- ** firebaserules.projects.releases.update-    , module Network.Google.Resource.FirebaseRules.Projects.Releases.Update+    -- ** firebaserules.projects.releases.patch+    , module Network.Google.Resource.FirebaseRules.Projects.Releases.Patch      -- ** firebaserules.projects.rulesets.create     , module Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create@@ -71,19 +74,56 @@     , spColumn     , spFileName +    -- ** TestCase+    , TestCase+    , testCase+    , tcResource+    , tcExpectation+    , tcFunctionMocks+    , tcRequest++    -- ** VisitedExpression+    , VisitedExpression+    , visitedExpression+    , veSourcePosition+    , veValue+     -- ** Empty     , Empty     , empty +    -- ** FunctionMock+    , FunctionMock+    , functionMock+    , fmArgs+    , fmFunction+    , fmResult++    -- ** TestResultState+    , TestResultState (..)++    -- ** FunctionCall+    , FunctionCall+    , functionCall+    , fcArgs+    , fcFunction+     -- ** ListReleasesResponse     , ListReleasesResponse     , listReleasesResponse     , lrrNextPageToken     , lrrReleases +    -- ** Result+    , Result+    , result+    , rValue+    , rUndefined+     -- ** TestRulesetResponse     , TestRulesetResponse     , testRulesetResponse+    , trrTestResults     , trrIssues      -- ** Release@@ -94,6 +134,12 @@     , rName     , rCreateTime +    -- ** Arg+    , Arg+    , arg+    , aAnyValue+    , aExactValue+     -- ** Ruleset     , Ruleset     , ruleset@@ -101,6 +147,25 @@     , rulSource     , rulCreateTime +    -- ** GetReleaseExecutableResponse+    , GetReleaseExecutableResponse+    , getReleaseExecutableResponse+    , grerExecutable+    , grerRulesetName+    , grerUpdateTime+    , grerSyncTime+    , grerExecutableVersion+    , grerLanguage++    -- ** TestResult+    , TestResult+    , testResult+    , trState+    , trFunctionCalls+    , trVisitedExpressions+    , trErrorPosition+    , trDebugMessages+     -- ** Xgafv     , Xgafv (..) @@ -112,10 +177,19 @@     , source     , sFiles +    -- ** TestCaseExpectation+    , TestCaseExpectation (..)++    -- ** TestSuite+    , TestSuite+    , testSuite+    , tsTestCases+     -- ** TestRulesetRequest     , TestRulesetRequest     , testRulesetRequest     , trrSource+    , trrTestSuite      -- ** File     , File@@ -124,6 +198,12 @@     , fContent     , fName +    -- ** GetReleaseExecutableResponseExecutableVersion+    , GetReleaseExecutableResponseExecutableVersion (..)++    -- ** GetReleaseExecutableResponseLanguage+    , GetReleaseExecutableResponseLanguage (..)+     -- ** ListRulesetsResponse     , ListRulesetsResponse     , listRulesetsResponse@@ -136,6 +216,12 @@     , iSourcePosition     , iSeverity     , iDescription++    -- ** UpdateReleaseRequest+    , UpdateReleaseRequest+    , updateReleaseRequest+    , urrUpdateMask+    , urrRelease     ) where  import           Network.Google.FirebaseRules.Types@@ -143,8 +229,9 @@ import           Network.Google.Resource.FirebaseRules.Projects.Releases.Create import           Network.Google.Resource.FirebaseRules.Projects.Releases.Delete import           Network.Google.Resource.FirebaseRules.Projects.Releases.Get+import           Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable import           Network.Google.Resource.FirebaseRules.Projects.Releases.List-import           Network.Google.Resource.FirebaseRules.Projects.Releases.Update+import           Network.Google.Resource.FirebaseRules.Projects.Releases.Patch import           Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create import           Network.Google.Resource.FirebaseRules.Projects.Rulesets.Delete import           Network.Google.Resource.FirebaseRules.Projects.Rulesets.Get@@ -162,8 +249,9 @@        :<|> ProjectsRulesetsCreateResource        :<|> ProjectsRulesetsDeleteResource        :<|> ProjectsReleasesListResource+       :<|> ProjectsReleasesPatchResource        :<|> ProjectsReleasesGetResource+       :<|> ProjectsReleasesGetExecutableResource        :<|> ProjectsReleasesCreateResource        :<|> ProjectsReleasesDeleteResource-       :<|> ProjectsReleasesUpdateResource        :<|> ProjectsTestResource
gen/Network/Google/FirebaseRules/Types.hs view
@@ -31,19 +31,56 @@     , spColumn     , spFileName +    -- * TestCase+    , TestCase+    , testCase+    , tcResource+    , tcExpectation+    , tcFunctionMocks+    , tcRequest++    -- * VisitedExpression+    , VisitedExpression+    , visitedExpression+    , veSourcePosition+    , veValue+     -- * Empty     , Empty     , empty +    -- * FunctionMock+    , FunctionMock+    , functionMock+    , fmArgs+    , fmFunction+    , fmResult++    -- * TestResultState+    , TestResultState (..)++    -- * FunctionCall+    , FunctionCall+    , functionCall+    , fcArgs+    , fcFunction+     -- * ListReleasesResponse     , ListReleasesResponse     , listReleasesResponse     , lrrNextPageToken     , lrrReleases +    -- * Result+    , Result+    , result+    , rValue+    , rUndefined+     -- * TestRulesetResponse     , TestRulesetResponse     , testRulesetResponse+    , trrTestResults     , trrIssues      -- * Release@@ -54,6 +91,12 @@     , rName     , rCreateTime +    -- * Arg+    , Arg+    , arg+    , aAnyValue+    , aExactValue+     -- * Ruleset     , Ruleset     , ruleset@@ -61,6 +104,25 @@     , rulSource     , rulCreateTime +    -- * GetReleaseExecutableResponse+    , GetReleaseExecutableResponse+    , getReleaseExecutableResponse+    , grerExecutable+    , grerRulesetName+    , grerUpdateTime+    , grerSyncTime+    , grerExecutableVersion+    , grerLanguage++    -- * TestResult+    , TestResult+    , testResult+    , trState+    , trFunctionCalls+    , trVisitedExpressions+    , trErrorPosition+    , trDebugMessages+     -- * Xgafv     , Xgafv (..) @@ -72,10 +134,19 @@     , source     , sFiles +    -- * TestCaseExpectation+    , TestCaseExpectation (..)++    -- * TestSuite+    , TestSuite+    , testSuite+    , tsTestCases+     -- * TestRulesetRequest     , TestRulesetRequest     , testRulesetRequest     , trrSource+    , trrTestSuite      -- * File     , File@@ -84,6 +155,12 @@     , fContent     , fName +    -- * GetReleaseExecutableResponseExecutableVersion+    , GetReleaseExecutableResponseExecutableVersion (..)++    -- * GetReleaseExecutableResponseLanguage+    , GetReleaseExecutableResponseLanguage (..)+     -- * ListRulesetsResponse     , ListRulesetsResponse     , listRulesetsResponse@@ -96,6 +173,12 @@     , iSourcePosition     , iSeverity     , iDescription++    -- * UpdateReleaseRequest+    , UpdateReleaseRequest+    , updateReleaseRequest+    , urrUpdateMask+    , urrRelease     ) where  import           Network.Google.FirebaseRules.Types.Product
gen/Network/Google/FirebaseRules/Types/Product.hs view
@@ -82,6 +82,146 @@                   ("column" .=) <$> _spColumn,                   ("fileName" .=) <$> _spFileName]) +-- | \`TestCase\` messages provide the request context and an expectation as+-- to whether the given context will be allowed or denied. Test cases may+-- specify the \`request\`, \`resource\`, and \`function_mocks\` to mock a+-- function call to a service-provided function. The \`request\` object+-- represents context present at request-time. The \`resource\` is the+-- value of the target resource as it appears in persistent storage before+-- the request is executed.+--+-- /See:/ 'testCase' smart constructor.+data TestCase = TestCase'+    { _tcResource      :: !(Maybe JSONValue)+    , _tcExpectation   :: !(Maybe TestCaseExpectation)+    , _tcFunctionMocks :: !(Maybe [FunctionMock])+    , _tcRequest       :: !(Maybe JSONValue)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TestCase' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tcResource'+--+-- * 'tcExpectation'+--+-- * 'tcFunctionMocks'+--+-- * 'tcRequest'+testCase+    :: TestCase+testCase =+    TestCase'+    { _tcResource = Nothing+    , _tcExpectation = Nothing+    , _tcFunctionMocks = Nothing+    , _tcRequest = Nothing+    }++-- | Optional resource value as it appears in persistent storage before the+-- request is fulfilled. The resource type depends on the \`request.path\`+-- value.+tcResource :: Lens' TestCase (Maybe JSONValue)+tcResource+  = lens _tcResource (\ s a -> s{_tcResource = a})++-- | Test expectation.+tcExpectation :: Lens' TestCase (Maybe TestCaseExpectation)+tcExpectation+  = lens _tcExpectation+      (\ s a -> s{_tcExpectation = a})++-- | Optional function mocks for service-defined functions. If not set, any+-- service defined function is expected to return an error, which may or+-- may not influence the test outcome.+tcFunctionMocks :: Lens' TestCase [FunctionMock]+tcFunctionMocks+  = lens _tcFunctionMocks+      (\ s a -> s{_tcFunctionMocks = a})+      . _Default+      . _Coerce++-- | Request context. The exact format of the request context is+-- service-dependent. See the appropriate service documentation for+-- information about the supported fields and types on the request.+-- Minimally, all services support the following fields and types: Request+-- field | Type ---------------|----------------- auth.uid | \`string\`+-- auth.token | \`map\` headers | \`map\` method | \`string\` params |+-- \`map\` path | \`string\` time | \`google.protobuf.Timestamp\` If the+-- request value is not well-formed for the service, the request will be+-- rejected as an invalid argument.+tcRequest :: Lens' TestCase (Maybe JSONValue)+tcRequest+  = lens _tcRequest (\ s a -> s{_tcRequest = a})++instance FromJSON TestCase where+        parseJSON+          = withObject "TestCase"+              (\ o ->+                 TestCase' <$>+                   (o .:? "resource") <*> (o .:? "expectation") <*>+                     (o .:? "functionMocks" .!= mempty)+                     <*> (o .:? "request"))++instance ToJSON TestCase where+        toJSON TestCase'{..}+          = object+              (catMaybes+                 [("resource" .=) <$> _tcResource,+                  ("expectation" .=) <$> _tcExpectation,+                  ("functionMocks" .=) <$> _tcFunctionMocks,+                  ("request" .=) <$> _tcRequest])++-- | Store the position and access outcome for an expression visited in+-- rules.+--+-- /See:/ 'visitedExpression' smart constructor.+data VisitedExpression = VisitedExpression'+    { _veSourcePosition :: !(Maybe SourcePosition)+    , _veValue          :: !(Maybe JSONValue)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VisitedExpression' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'veSourcePosition'+--+-- * 'veValue'+visitedExpression+    :: VisitedExpression+visitedExpression =+    VisitedExpression'+    { _veSourcePosition = Nothing+    , _veValue = Nothing+    }++-- | Position in the \`Source\` or \`Ruleset\` where an expression was+-- visited.+veSourcePosition :: Lens' VisitedExpression (Maybe SourcePosition)+veSourcePosition+  = lens _veSourcePosition+      (\ s a -> s{_veSourcePosition = a})++-- | The evaluated value for the visited expression, e.g. true\/false+veValue :: Lens' VisitedExpression (Maybe JSONValue)+veValue = lens _veValue (\ s a -> s{_veValue = a})++instance FromJSON VisitedExpression where+        parseJSON+          = withObject "VisitedExpression"+              (\ o ->+                 VisitedExpression' <$>+                   (o .:? "sourcePosition") <*> (o .:? "value"))++instance ToJSON VisitedExpression where+        toJSON VisitedExpression'{..}+          = object+              (catMaybes+                 [("sourcePosition" .=) <$> _veSourcePosition,+                  ("value" .=) <$> _veValue])+ -- | A generic empty message that you can re-use to avoid defining duplicated -- empty messages in your APIs. A typical example is to use it as the -- request or the response type of an API method. For instance: service Foo@@ -105,6 +245,123 @@ instance ToJSON Empty where         toJSON = const emptyObject +-- | Mock function definition. Mocks must refer to a function declared by the+-- target service. The type of the function args and result will be+-- inferred at test time. If either the arg or result values are not+-- compatible with function type declaration, the request will be+-- considered invalid. More than one \`FunctionMock\` may be provided for a+-- given function name so long as the \`Arg\` matchers are distinct. There+-- may be only one function for a given overload where all \`Arg\` values+-- are \`Arg.any_value\`.+--+-- /See:/ 'functionMock' smart constructor.+data FunctionMock = FunctionMock'+    { _fmArgs     :: !(Maybe [Arg])+    , _fmFunction :: !(Maybe Text)+    , _fmResult   :: !(Maybe Result)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'FunctionMock' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fmArgs'+--+-- * 'fmFunction'+--+-- * 'fmResult'+functionMock+    :: FunctionMock+functionMock =+    FunctionMock'+    { _fmArgs = Nothing+    , _fmFunction = Nothing+    , _fmResult = Nothing+    }++-- | The list of \`Arg\` values to match. The order in which the arguments+-- are provided is the order in which they must appear in the function+-- invocation.+fmArgs :: Lens' FunctionMock [Arg]+fmArgs+  = lens _fmArgs (\ s a -> s{_fmArgs = a}) . _Default .+      _Coerce++-- | The name of the function. The function name must match one provided by a+-- service declaration.+fmFunction :: Lens' FunctionMock (Maybe Text)+fmFunction+  = lens _fmFunction (\ s a -> s{_fmFunction = a})++-- | The mock result of the function call.+fmResult :: Lens' FunctionMock (Maybe Result)+fmResult = lens _fmResult (\ s a -> s{_fmResult = a})++instance FromJSON FunctionMock where+        parseJSON+          = withObject "FunctionMock"+              (\ o ->+                 FunctionMock' <$>+                   (o .:? "args" .!= mempty) <*> (o .:? "function") <*>+                     (o .:? "result"))++instance ToJSON FunctionMock where+        toJSON FunctionMock'{..}+          = object+              (catMaybes+                 [("args" .=) <$> _fmArgs,+                  ("function" .=) <$> _fmFunction,+                  ("result" .=) <$> _fmResult])++-- | Represents a service-defined function call that was invoked during test+-- execution.+--+-- /See:/ 'functionCall' smart constructor.+data FunctionCall = FunctionCall'+    { _fcArgs     :: !(Maybe [JSONValue])+    , _fcFunction :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'FunctionCall' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fcArgs'+--+-- * 'fcFunction'+functionCall+    :: FunctionCall+functionCall =+    FunctionCall'+    { _fcArgs = Nothing+    , _fcFunction = Nothing+    }++-- | The arguments that were provided to the function.+fcArgs :: Lens' FunctionCall [JSONValue]+fcArgs+  = lens _fcArgs (\ s a -> s{_fcArgs = a}) . _Default .+      _Coerce++-- | Name of the function invoked.+fcFunction :: Lens' FunctionCall (Maybe Text)+fcFunction+  = lens _fcFunction (\ s a -> s{_fcFunction = a})++instance FromJSON FunctionCall where+        parseJSON+          = withObject "FunctionCall"+              (\ o ->+                 FunctionCall' <$>+                   (o .:? "args" .!= mempty) <*> (o .:? "function"))++instance ToJSON FunctionCall where+        toJSON FunctionCall'{..}+          = object+              (catMaybes+                 [("args" .=) <$> _fcArgs,+                  ("function" .=) <$> _fcFunction])+ -- | The response for FirebaseRulesService.ListReleases. -- -- /See:/ 'listReleasesResponse' smart constructor.@@ -157,25 +414,85 @@                  [("nextPageToken" .=) <$> _lrrNextPageToken,                   ("releases" .=) <$> _lrrReleases]) +-- | Possible result values from the function mock invocation.+--+-- /See:/ 'result' smart constructor.+data Result = Result'+    { _rValue     :: !(Maybe JSONValue)+    , _rUndefined :: !(Maybe Empty)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Result' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rValue'+--+-- * 'rUndefined'+result+    :: Result+result =+    Result'+    { _rValue = Nothing+    , _rUndefined = Nothing+    }++-- | The result is an actual value. The type of the value must match that of+-- the type declared by the service.+rValue :: Lens' Result (Maybe JSONValue)+rValue = lens _rValue (\ s a -> s{_rValue = a})++-- | The result is undefined, meaning the result could not be computed.+rUndefined :: Lens' Result (Maybe Empty)+rUndefined+  = lens _rUndefined (\ s a -> s{_rUndefined = a})++instance FromJSON Result where+        parseJSON+          = withObject "Result"+              (\ o ->+                 Result' <$> (o .:? "value") <*> (o .:? "undefined"))++instance ToJSON Result where+        toJSON Result'{..}+          = object+              (catMaybes+                 [("value" .=) <$> _rValue,+                  ("undefined" .=) <$> _rUndefined])+ -- | The response for FirebaseRulesService.TestRuleset. -- -- /See:/ 'testRulesetResponse' smart constructor.-newtype TestRulesetResponse = TestRulesetResponse'-    { _trrIssues :: Maybe [Issue]+data TestRulesetResponse = TestRulesetResponse'+    { _trrTestResults :: !(Maybe [TestResult])+    , _trrIssues      :: !(Maybe [Issue])     } deriving (Eq,Show,Data,Typeable,Generic)  -- | Creates a value of 'TestRulesetResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: --+-- * 'trrTestResults'+-- -- * 'trrIssues' testRulesetResponse     :: TestRulesetResponse testRulesetResponse =     TestRulesetResponse'-    { _trrIssues = Nothing+    { _trrTestResults = Nothing+    , _trrIssues = Nothing     } +-- | The set of test results given the test cases in the \`TestSuite\`. The+-- results will appear in the same order as the test cases appear in the+-- \`TestSuite\`.+trrTestResults :: Lens' TestRulesetResponse [TestResult]+trrTestResults+  = lens _trrTestResults+      (\ s a -> s{_trrTestResults = a})+      . _Default+      . _Coerce+ -- | Syntactic and semantic \`Source\` issues of varying severity. Issues of -- \`ERROR\` severity will prevent tests from executing. trrIssues :: Lens' TestRulesetResponse [Issue]@@ -188,11 +505,16 @@         parseJSON           = withObject "TestRulesetResponse"               (\ o ->-                 TestRulesetResponse' <$> (o .:? "issues" .!= mempty))+                 TestRulesetResponse' <$>+                   (o .:? "testResults" .!= mempty) <*>+                     (o .:? "issues" .!= mempty))  instance ToJSON TestRulesetResponse where         toJSON TestRulesetResponse'{..}-          = object (catMaybes [("issues" .=) <$> _trrIssues])+          = object+              (catMaybes+                 [("testResults" .=) <$> _trrTestResults,+                  ("issues" .=) <$> _trrIssues])  -- | \`Release\` is a named reference to a \`Ruleset\`. Once a \`Release\` -- refers to a \`Ruleset\`, rules-enabled services will be able to enforce@@ -233,7 +555,7 @@ rRulesetName   = lens _rRulesetName (\ s a -> s{_rRulesetName = a}) --- | Time the release was updated. \'OutputOnly+-- | Time the release was updated. Output only. rUpdateTime :: Lens' Release (Maybe UTCTime) rUpdateTime   = lens _rUpdateTime (\ s a -> s{_rUpdateTime = a}) .@@ -259,7 +581,7 @@ rName :: Lens' Release (Maybe Text) rName = lens _rName (\ s a -> s{_rName = a}) --- | Time the release was created. \'OutputOnly+-- | Time the release was created. Output only. rCreateTime :: Lens' Release (Maybe UTCTime) rCreateTime   = lens _rCreateTime (\ s a -> s{_rCreateTime = a}) .@@ -283,6 +605,52 @@                   ("name" .=) <$> _rName,                   ("createTime" .=) <$> _rCreateTime]) +-- | Arg matchers for the mock function.+--+-- /See:/ 'arg' smart constructor.+data Arg = Arg'+    { _aAnyValue   :: !(Maybe Empty)+    , _aExactValue :: !(Maybe JSONValue)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Arg' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aAnyValue'+--+-- * 'aExactValue'+arg+    :: Arg+arg =+    Arg'+    { _aAnyValue = Nothing+    , _aExactValue = Nothing+    }++-- | Argument matches any value provided.+aAnyValue :: Lens' Arg (Maybe Empty)+aAnyValue+  = lens _aAnyValue (\ s a -> s{_aAnyValue = a})++-- | Argument exactly matches value provided.+aExactValue :: Lens' Arg (Maybe JSONValue)+aExactValue+  = lens _aExactValue (\ s a -> s{_aExactValue = a})++instance FromJSON Arg where+        parseJSON+          = withObject "Arg"+              (\ o ->+                 Arg' <$> (o .:? "anyValue") <*> (o .:? "exactValue"))++instance ToJSON Arg where+        toJSON Arg'{..}+          = object+              (catMaybes+                 [("anyValue" .=) <$> _aAnyValue,+                  ("exactValue" .=) <$> _aExactValue])+ -- | \`Ruleset\` is an immutable copy of \`Source\` with a globally unique -- identifier and a creation time. --@@ -313,7 +681,7 @@  -- | Name of the \`Ruleset\`. The ruleset_id is auto generated by the -- service. Format: \`projects\/{project_id}\/rulesets\/{ruleset_id}\`--- \'OutputOnly+-- Output only. rulName :: Lens' Ruleset (Maybe Text) rulName = lens _rulName (\ s a -> s{_rulName = a}) @@ -322,7 +690,7 @@ rulSource   = lens _rulSource (\ s a -> s{_rulSource = a}) --- | Time the \`Ruleset\` was created. \'OutputOnly+-- | Time the \`Ruleset\` was created. Output only. rulCreateTime :: Lens' Ruleset (Maybe UTCTime) rulCreateTime   = lens _rulCreateTime@@ -345,6 +713,210 @@                   ("source" .=) <$> _rulSource,                   ("createTime" .=) <$> _rulCreateTime]) +-- | The response for FirebaseRulesService.GetReleaseExecutable+--+-- /See:/ 'getReleaseExecutableResponse' smart constructor.+data GetReleaseExecutableResponse = GetReleaseExecutableResponse'+    { _grerExecutable        :: !(Maybe Bytes)+    , _grerRulesetName       :: !(Maybe Text)+    , _grerUpdateTime        :: !(Maybe DateTime')+    , _grerSyncTime          :: !(Maybe DateTime')+    , _grerExecutableVersion :: !(Maybe GetReleaseExecutableResponseExecutableVersion)+    , _grerLanguage          :: !(Maybe GetReleaseExecutableResponseLanguage)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetReleaseExecutableResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'grerExecutable'+--+-- * 'grerRulesetName'+--+-- * 'grerUpdateTime'+--+-- * 'grerSyncTime'+--+-- * 'grerExecutableVersion'+--+-- * 'grerLanguage'+getReleaseExecutableResponse+    :: GetReleaseExecutableResponse+getReleaseExecutableResponse =+    GetReleaseExecutableResponse'+    { _grerExecutable = Nothing+    , _grerRulesetName = Nothing+    , _grerUpdateTime = Nothing+    , _grerSyncTime = Nothing+    , _grerExecutableVersion = Nothing+    , _grerLanguage = Nothing+    }++-- | Executable view of the \`Ruleset\` referenced by the \`Release\`.+grerExecutable :: Lens' GetReleaseExecutableResponse (Maybe ByteString)+grerExecutable+  = lens _grerExecutable+      (\ s a -> s{_grerExecutable = a})+      . mapping _Bytes++-- | \`Ruleset\` name associated with the \`Release\` executable.+grerRulesetName :: Lens' GetReleaseExecutableResponse (Maybe Text)+grerRulesetName+  = lens _grerRulesetName+      (\ s a -> s{_grerRulesetName = a})++-- | Timestamp for the most recent \`Release.update_time\`.+grerUpdateTime :: Lens' GetReleaseExecutableResponse (Maybe UTCTime)+grerUpdateTime+  = lens _grerUpdateTime+      (\ s a -> s{_grerUpdateTime = a})+      . mapping _DateTime++-- | Optional, indicates the freshness of the result. The response is+-- guaranteed to be the latest within an interval up to the sync_time+-- (inclusive).+grerSyncTime :: Lens' GetReleaseExecutableResponse (Maybe UTCTime)+grerSyncTime+  = lens _grerSyncTime (\ s a -> s{_grerSyncTime = a})+      . mapping _DateTime++-- | The Rules runtime version of the executable.+grerExecutableVersion :: Lens' GetReleaseExecutableResponse (Maybe GetReleaseExecutableResponseExecutableVersion)+grerExecutableVersion+  = lens _grerExecutableVersion+      (\ s a -> s{_grerExecutableVersion = a})++-- | \`Language\` used to generate the executable bytes.+grerLanguage :: Lens' GetReleaseExecutableResponse (Maybe GetReleaseExecutableResponseLanguage)+grerLanguage+  = lens _grerLanguage (\ s a -> s{_grerLanguage = a})++instance FromJSON GetReleaseExecutableResponse where+        parseJSON+          = withObject "GetReleaseExecutableResponse"+              (\ o ->+                 GetReleaseExecutableResponse' <$>+                   (o .:? "executable") <*> (o .:? "rulesetName") <*>+                     (o .:? "updateTime")+                     <*> (o .:? "syncTime")+                     <*> (o .:? "executableVersion")+                     <*> (o .:? "language"))++instance ToJSON GetReleaseExecutableResponse where+        toJSON GetReleaseExecutableResponse'{..}+          = object+              (catMaybes+                 [("executable" .=) <$> _grerExecutable,+                  ("rulesetName" .=) <$> _grerRulesetName,+                  ("updateTime" .=) <$> _grerUpdateTime,+                  ("syncTime" .=) <$> _grerSyncTime,+                  ("executableVersion" .=) <$> _grerExecutableVersion,+                  ("language" .=) <$> _grerLanguage])++-- | Test result message containing the state of the test as well as a+-- description and source position for test failures.+--+-- /See:/ 'testResult' smart constructor.+data TestResult = TestResult'+    { _trState              :: !(Maybe TestResultState)+    , _trFunctionCalls      :: !(Maybe [FunctionCall])+    , _trVisitedExpressions :: !(Maybe [VisitedExpression])+    , _trErrorPosition      :: !(Maybe SourcePosition)+    , _trDebugMessages      :: !(Maybe [Text])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TestResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'trState'+--+-- * 'trFunctionCalls'+--+-- * 'trVisitedExpressions'+--+-- * 'trErrorPosition'+--+-- * 'trDebugMessages'+testResult+    :: TestResult+testResult =+    TestResult'+    { _trState = Nothing+    , _trFunctionCalls = Nothing+    , _trVisitedExpressions = Nothing+    , _trErrorPosition = Nothing+    , _trDebugMessages = Nothing+    }++-- | State of the test.+trState :: Lens' TestResult (Maybe TestResultState)+trState = lens _trState (\ s a -> s{_trState = a})++-- | The set of function calls made to service-defined methods. Function+-- calls are included in the order in which they are encountered during+-- evaluation, are provided for both mocked and unmocked functions, and+-- included on the response regardless of the test \`state\`.+trFunctionCalls :: Lens' TestResult [FunctionCall]+trFunctionCalls+  = lens _trFunctionCalls+      (\ s a -> s{_trFunctionCalls = a})+      . _Default+      . _Coerce++-- | The set of visited expressions for a given test. This returns positions+-- and evaluation results of all visited expressions.+trVisitedExpressions :: Lens' TestResult [VisitedExpression]+trVisitedExpressions+  = lens _trVisitedExpressions+      (\ s a -> s{_trVisitedExpressions = a})+      . _Default+      . _Coerce++-- | Position in the \`Source\` or \`Ruleset\` where the principle runtime+-- error occurs. Evaluation of an expression may result in an error. Rules+-- are deny by default, so a \`DENY\` expectation when an error is+-- generated is valid. When there is a \`DENY\` with an error, the+-- \`SourcePosition\` is returned. E.g. \`error_position { line: 19 column:+-- 37 }\`+trErrorPosition :: Lens' TestResult (Maybe SourcePosition)+trErrorPosition+  = lens _trErrorPosition+      (\ s a -> s{_trErrorPosition = a})++-- | Debug messages related to test execution issues encountered during+-- evaluation. Debug messages may be related to too many or too few+-- invocations of function mocks or to runtime errors that occur during+-- evaluation. For example: \`\`\`Unable to read variable [name:+-- \"resource\"]\`\`\`+trDebugMessages :: Lens' TestResult [Text]+trDebugMessages+  = lens _trDebugMessages+      (\ s a -> s{_trDebugMessages = a})+      . _Default+      . _Coerce++instance FromJSON TestResult where+        parseJSON+          = withObject "TestResult"+              (\ o ->+                 TestResult' <$>+                   (o .:? "state") <*>+                     (o .:? "functionCalls" .!= mempty)+                     <*> (o .:? "visitedExpressions" .!= mempty)+                     <*> (o .:? "errorPosition")+                     <*> (o .:? "debugMessages" .!= mempty))++instance ToJSON TestResult where+        toJSON TestResult'{..}+          = object+              (catMaybes+                 [("state" .=) <$> _trState,+                  ("functionCalls" .=) <$> _trFunctionCalls,+                  ("visitedExpressions" .=) <$> _trVisitedExpressions,+                  ("errorPosition" .=) <$> _trErrorPosition,+                  ("debugMessages" .=) <$> _trDebugMessages])+ -- | \`Source\` is one or more \`File\` messages comprising a logical set of -- rules. --@@ -380,11 +952,52 @@         toJSON Source'{..}           = object (catMaybes [("files" .=) <$> _sFiles]) +-- | \`TestSuite\` is a collection of \`TestCase\` instances that validate+-- the logical correctness of a \`Ruleset\`. The \`TestSuite\` may be+-- referenced in-line within a \`TestRuleset\` invocation or as part of a+-- \`Release\` object as a pre-release check.+--+-- /See:/ 'testSuite' smart constructor.+newtype TestSuite = TestSuite'+    { _tsTestCases :: Maybe [TestCase]+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TestSuite' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tsTestCases'+testSuite+    :: TestSuite+testSuite =+    TestSuite'+    { _tsTestCases = Nothing+    }++-- | Collection of test cases associated with the \`TestSuite\`.+tsTestCases :: Lens' TestSuite [TestCase]+tsTestCases+  = lens _tsTestCases (\ s a -> s{_tsTestCases = a}) .+      _Default+      . _Coerce++instance FromJSON TestSuite where+        parseJSON+          = withObject "TestSuite"+              (\ o ->+                 TestSuite' <$> (o .:? "testCases" .!= mempty))++instance ToJSON TestSuite where+        toJSON TestSuite'{..}+          = object+              (catMaybes [("testCases" .=) <$> _tsTestCases])+ -- | The request for FirebaseRulesService.TestRuleset. -- -- /See:/ 'testRulesetRequest' smart constructor.-newtype TestRulesetRequest = TestRulesetRequest'-    { _trrSource :: Maybe Source+data TestRulesetRequest = TestRulesetRequest'+    { _trrSource    :: !(Maybe Source)+    , _trrTestSuite :: !(Maybe TestSuite)     } deriving (Eq,Show,Data,Typeable,Generic)  -- | Creates a value of 'TestRulesetRequest' with the minimum fields required to make a request.@@ -392,26 +1005,40 @@ -- Use one of the following lenses to modify other fields as desired: -- -- * 'trrSource'+--+-- * 'trrTestSuite' testRulesetRequest     :: TestRulesetRequest testRulesetRequest =     TestRulesetRequest'     { _trrSource = Nothing+    , _trrTestSuite = Nothing     } --- | \`Source\` to be checked for correctness.+-- | Optional \`Source\` to be checked for correctness. This field must not+-- be set when the resource name refers to a \`Ruleset\`. trrSource :: Lens' TestRulesetRequest (Maybe Source) trrSource   = lens _trrSource (\ s a -> s{_trrSource = a}) +-- | Inline \`TestSuite\` to run.+trrTestSuite :: Lens' TestRulesetRequest (Maybe TestSuite)+trrTestSuite+  = lens _trrTestSuite (\ s a -> s{_trrTestSuite = a})+ instance FromJSON TestRulesetRequest where         parseJSON           = withObject "TestRulesetRequest"-              (\ o -> TestRulesetRequest' <$> (o .:? "source"))+              (\ o ->+                 TestRulesetRequest' <$>+                   (o .:? "source") <*> (o .:? "testSuite"))  instance ToJSON TestRulesetRequest where         toJSON TestRulesetRequest'{..}-          = object (catMaybes [("source" .=) <$> _trrSource])+          = object+              (catMaybes+                 [("source" .=) <$> _trrSource,+                  ("testSuite" .=) <$> _trrTestSuite])  -- | \`File\` containing source content. --@@ -470,7 +1097,7 @@                   ("content" .=) <$> _fContent,                   ("name" .=) <$> _fName]) --- | The response for FirebaseRulesService.ListRulesets+-- | The response for FirebaseRulesService.ListRulesets. -- -- /See:/ 'listRulesetsResponse' smart constructor. data ListRulesetsResponse = ListRulesetsResponse'@@ -580,3 +1207,51 @@                  [("sourcePosition" .=) <$> _iSourcePosition,                   ("severity" .=) <$> _iSeverity,                   ("description" .=) <$> _iDescription])++-- | The request for FirebaseRulesService.UpdateReleasePatch.+--+-- /See:/ 'updateReleaseRequest' smart constructor.+data UpdateReleaseRequest = UpdateReleaseRequest'+    { _urrUpdateMask :: !(Maybe GFieldMask)+    , _urrRelease    :: !(Maybe Release)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UpdateReleaseRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'urrUpdateMask'+--+-- * 'urrRelease'+updateReleaseRequest+    :: UpdateReleaseRequest+updateReleaseRequest =+    UpdateReleaseRequest'+    { _urrUpdateMask = Nothing+    , _urrRelease = Nothing+    }++-- | Specifies which fields to update.+urrUpdateMask :: Lens' UpdateReleaseRequest (Maybe GFieldMask)+urrUpdateMask+  = lens _urrUpdateMask+      (\ s a -> s{_urrUpdateMask = a})++-- | \`Release\` to update.+urrRelease :: Lens' UpdateReleaseRequest (Maybe Release)+urrRelease+  = lens _urrRelease (\ s a -> s{_urrRelease = a})++instance FromJSON UpdateReleaseRequest where+        parseJSON+          = withObject "UpdateReleaseRequest"+              (\ o ->+                 UpdateReleaseRequest' <$>+                   (o .:? "updateMask") <*> (o .:? "release"))++instance ToJSON UpdateReleaseRequest where+        toJSON UpdateReleaseRequest'{..}+          = object+              (catMaybes+                 [("updateMask" .=) <$> _urrUpdateMask,+                  ("release" .=) <$> _urrRelease])
gen/Network/Google/FirebaseRules/Types/Sum.hs view
@@ -16,8 +16,42 @@ -- module Network.Google.FirebaseRules.Types.Sum where -import           Network.Google.Prelude+import           Network.Google.Prelude hiding (Bytes) +-- | State of the test.+data TestResultState+    = StateUnspecified+      -- ^ @STATE_UNSPECIFIED@+      -- Test state is not set.+    | Success+      -- ^ @SUCCESS@+      -- Test is a success.+    | Failure+      -- ^ @FAILURE@+      -- Test is a failure.+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable TestResultState++instance FromHttpApiData TestResultState where+    parseQueryParam = \case+        "STATE_UNSPECIFIED" -> Right StateUnspecified+        "SUCCESS" -> Right Success+        "FAILURE" -> Right Failure+        x -> Left ("Unable to parse TestResultState from: " <> x)++instance ToHttpApiData TestResultState where+    toQueryParam = \case+        StateUnspecified -> "STATE_UNSPECIFIED"+        Success -> "SUCCESS"+        Failure -> "FAILURE"++instance FromJSON TestResultState where+    parseJSON = parseJSONText "TestResultState"++instance ToJSON TestResultState where+    toJSON = toJSONText+ -- | V1 error format. data Xgafv     = X1@@ -85,4 +119,107 @@     parseJSON = parseJSONText "IssueSeverity"  instance ToJSON IssueSeverity where+    toJSON = toJSONText++-- | Test expectation.+data TestCaseExpectation+    = ExpectationUnspecified+      -- ^ @EXPECTATION_UNSPECIFIED@+      -- Unspecified expectation.+    | Allow+      -- ^ @ALLOW@+      -- Expect an allowed result.+    | Deny+      -- ^ @DENY@+      -- Expect a denied result.+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable TestCaseExpectation++instance FromHttpApiData TestCaseExpectation where+    parseQueryParam = \case+        "EXPECTATION_UNSPECIFIED" -> Right ExpectationUnspecified+        "ALLOW" -> Right Allow+        "DENY" -> Right Deny+        x -> Left ("Unable to parse TestCaseExpectation from: " <> x)++instance ToHttpApiData TestCaseExpectation where+    toQueryParam = \case+        ExpectationUnspecified -> "EXPECTATION_UNSPECIFIED"+        Allow -> "ALLOW"+        Deny -> "DENY"++instance FromJSON TestCaseExpectation where+    parseJSON = parseJSONText "TestCaseExpectation"++instance ToJSON TestCaseExpectation where+    toJSON = toJSONText++-- | The Rules runtime version of the executable.+data GetReleaseExecutableResponseExecutableVersion+    = ReleaseExecutableVersionUnspecified+      -- ^ @RELEASE_EXECUTABLE_VERSION_UNSPECIFIED@+      -- Executable format unspecified. Defaults to FIREBASE_RULES_EXECUTABLE_V1+    | FirebaseRulesExecutableV1+      -- ^ @FIREBASE_RULES_EXECUTABLE_V1@+      -- Firebase Rules syntax \'rules2\' executable versions: Custom AST for use+      -- with Java clients.+    | FirebaseRulesExecutableV2+      -- ^ @FIREBASE_RULES_EXECUTABLE_V2@+      -- CEL-based executable for use with C++ clients.+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable GetReleaseExecutableResponseExecutableVersion++instance FromHttpApiData GetReleaseExecutableResponseExecutableVersion where+    parseQueryParam = \case+        "RELEASE_EXECUTABLE_VERSION_UNSPECIFIED" -> Right ReleaseExecutableVersionUnspecified+        "FIREBASE_RULES_EXECUTABLE_V1" -> Right FirebaseRulesExecutableV1+        "FIREBASE_RULES_EXECUTABLE_V2" -> Right FirebaseRulesExecutableV2+        x -> Left ("Unable to parse GetReleaseExecutableResponseExecutableVersion from: " <> x)++instance ToHttpApiData GetReleaseExecutableResponseExecutableVersion where+    toQueryParam = \case+        ReleaseExecutableVersionUnspecified -> "RELEASE_EXECUTABLE_VERSION_UNSPECIFIED"+        FirebaseRulesExecutableV1 -> "FIREBASE_RULES_EXECUTABLE_V1"+        FirebaseRulesExecutableV2 -> "FIREBASE_RULES_EXECUTABLE_V2"++instance FromJSON GetReleaseExecutableResponseExecutableVersion where+    parseJSON = parseJSONText "GetReleaseExecutableResponseExecutableVersion"++instance ToJSON GetReleaseExecutableResponseExecutableVersion where+    toJSON = toJSONText++-- | \`Language\` used to generate the executable bytes.+data GetReleaseExecutableResponseLanguage+    = LanguageUnspecified+      -- ^ @LANGUAGE_UNSPECIFIED@+      -- Language unspecified. Defaults to FIREBASE_RULES.+    | FirebaseRules+      -- ^ @FIREBASE_RULES@+      -- Firebase Rules language.+    | EventFlowTriggers+      -- ^ @EVENT_FLOW_TRIGGERS@+      -- Event Flow triggers.+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable GetReleaseExecutableResponseLanguage++instance FromHttpApiData GetReleaseExecutableResponseLanguage where+    parseQueryParam = \case+        "LANGUAGE_UNSPECIFIED" -> Right LanguageUnspecified+        "FIREBASE_RULES" -> Right FirebaseRules+        "EVENT_FLOW_TRIGGERS" -> Right EventFlowTriggers+        x -> Left ("Unable to parse GetReleaseExecutableResponseLanguage from: " <> x)++instance ToHttpApiData GetReleaseExecutableResponseLanguage where+    toQueryParam = \case+        LanguageUnspecified -> "LANGUAGE_UNSPECIFIED"+        FirebaseRules -> "FIREBASE_RULES"+        EventFlowTriggers -> "EVENT_FLOW_TRIGGERS"++instance FromJSON GetReleaseExecutableResponseLanguage where+    parseJSON = parseJSONText "GetReleaseExecutableResponseLanguage"++instance ToJSON GetReleaseExecutableResponseLanguage where     toJSON = toJSONText
gen/Network/Google/Resource/FirebaseRules/Projects/Releases/Create.hs view
@@ -35,9 +35,7 @@ -- The table reflects the \`Ruleset\` rollout in progress. The \`prod\` and -- \`prod\/beta\` releases refer to the same \`Ruleset\`. However, -- \`prod\/v23\` refers to a new \`Ruleset\`. The \`Ruleset\` reference for--- a \`Release\` may be updated using the UpdateRelease method, and the--- custom \`Release\` name may be referenced by specifying the--- \`X-Firebase-Rules-Release-Name\` header.+-- a \`Release\` may be updated using the UpdateRelease method. -- -- /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.releases.create@. module Network.Google.Resource.FirebaseRules.Projects.Releases.Create@@ -52,11 +50,9 @@     -- * Request Lenses     , prcrXgafv     , prcrUploadProtocol-    , prcrPp     , prcrAccessToken     , prcrUploadType     , prcrPayload-    , prcrBearerToken     , prcrName     , prcrCallback     ) where@@ -72,13 +68,11 @@          "releases" :>            QueryParam "$.xgafv" Xgafv :>              QueryParam "upload_protocol" Text :>-               QueryParam "pp" Bool :>-                 QueryParam "access_token" Text :>-                   QueryParam "uploadType" Text :>-                     QueryParam "bearer_token" Text :>-                       QueryParam "callback" Text :>-                         QueryParam "alt" AltJSON :>-                           ReqBody '[JSON] Release :> Post '[JSON] Release+               QueryParam "access_token" Text :>+                 QueryParam "uploadType" Text :>+                   QueryParam "callback" Text :>+                     QueryParam "alt" AltJSON :>+                       ReqBody '[JSON] Release :> Post '[JSON] Release  -- | Create a \`Release\`. Release names should reflect the developer\'s -- deployment practices. For example, the release name may include the@@ -95,19 +89,15 @@ -- The table reflects the \`Ruleset\` rollout in progress. The \`prod\` and -- \`prod\/beta\` releases refer to the same \`Ruleset\`. However, -- \`prod\/v23\` refers to a new \`Ruleset\`. The \`Ruleset\` reference for--- a \`Release\` may be updated using the UpdateRelease method, and the--- custom \`Release\` name may be referenced by specifying the--- \`X-Firebase-Rules-Release-Name\` header.+-- a \`Release\` may be updated using the UpdateRelease method. -- -- /See:/ 'projectsReleasesCreate' smart constructor. data ProjectsReleasesCreate = ProjectsReleasesCreate'     { _prcrXgafv          :: !(Maybe Xgafv)     , _prcrUploadProtocol :: !(Maybe Text)-    , _prcrPp             :: !Bool     , _prcrAccessToken    :: !(Maybe Text)     , _prcrUploadType     :: !(Maybe Text)     , _prcrPayload        :: !Release-    , _prcrBearerToken    :: !(Maybe Text)     , _prcrName           :: !Text     , _prcrCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -120,16 +110,12 @@ -- -- * 'prcrUploadProtocol' ----- * 'prcrPp'--- -- * 'prcrAccessToken' -- -- * 'prcrUploadType' -- -- * 'prcrPayload' ----- * 'prcrBearerToken'--- -- * 'prcrName' -- -- * 'prcrCallback'@@ -141,11 +127,9 @@     ProjectsReleasesCreate'     { _prcrXgafv = Nothing     , _prcrUploadProtocol = Nothing-    , _prcrPp = True     , _prcrAccessToken = Nothing     , _prcrUploadType = Nothing     , _prcrPayload = pPrcrPayload_-    , _prcrBearerToken = Nothing     , _prcrName = pPrcrName_     , _prcrCallback = Nothing     }@@ -161,10 +145,6 @@   = lens _prcrUploadProtocol       (\ s a -> s{_prcrUploadProtocol = a}) --- | Pretty-print response.-prcrPp :: Lens' ProjectsReleasesCreate Bool-prcrPp = lens _prcrPp (\ s a -> s{_prcrPp = a})- -- | OAuth access token. prcrAccessToken :: Lens' ProjectsReleasesCreate (Maybe Text) prcrAccessToken@@ -182,12 +162,6 @@ prcrPayload   = lens _prcrPayload (\ s a -> s{_prcrPayload = a}) --- | OAuth bearer token.-prcrBearerToken :: Lens' ProjectsReleasesCreate (Maybe Text)-prcrBearerToken-  = lens _prcrBearerToken-      (\ s a -> s{_prcrBearerToken = a})- -- | Resource name for the project which owns this \`Release\`. Format: -- \`projects\/{project_id}\` prcrName :: Lens' ProjectsReleasesCreate Text@@ -205,10 +179,8 @@                "https://www.googleapis.com/auth/firebase"]         requestClient ProjectsReleasesCreate'{..}           = go _prcrName _prcrXgafv _prcrUploadProtocol-              (Just _prcrPp)               _prcrAccessToken               _prcrUploadType-              _prcrBearerToken               _prcrCallback               (Just AltJSON)               _prcrPayload
gen/Network/Google/Resource/FirebaseRules/Projects/Releases/Delete.hs view
@@ -35,10 +35,8 @@     -- * Request Lenses     , prdXgafv     , prdUploadProtocol-    , prdPp     , prdAccessToken     , prdUploadType-    , prdBearerToken     , prdName     , prdCallback     ) where@@ -53,12 +51,10 @@        Capture "name" Text :>          QueryParam "$.xgafv" Xgafv :>            QueryParam "upload_protocol" Text :>-             QueryParam "pp" Bool :>-               QueryParam "access_token" Text :>-                 QueryParam "uploadType" Text :>-                   QueryParam "bearer_token" Text :>-                     QueryParam "callback" Text :>-                       QueryParam "alt" AltJSON :> Delete '[JSON] Empty+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "callback" Text :>+                   QueryParam "alt" AltJSON :> Delete '[JSON] Empty  -- | Delete a \`Release\` by resource name. --@@ -66,10 +62,8 @@ data ProjectsReleasesDelete = ProjectsReleasesDelete'     { _prdXgafv          :: !(Maybe Xgafv)     , _prdUploadProtocol :: !(Maybe Text)-    , _prdPp             :: !Bool     , _prdAccessToken    :: !(Maybe Text)     , _prdUploadType     :: !(Maybe Text)-    , _prdBearerToken    :: !(Maybe Text)     , _prdName           :: !Text     , _prdCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -82,14 +76,10 @@ -- -- * 'prdUploadProtocol' ----- * 'prdPp'--- -- * 'prdAccessToken' -- -- * 'prdUploadType' ----- * 'prdBearerToken'--- -- * 'prdName' -- -- * 'prdCallback'@@ -100,10 +90,8 @@     ProjectsReleasesDelete'     { _prdXgafv = Nothing     , _prdUploadProtocol = Nothing-    , _prdPp = True     , _prdAccessToken = Nothing     , _prdUploadType = Nothing-    , _prdBearerToken = Nothing     , _prdName = pPrdName_     , _prdCallback = Nothing     }@@ -118,10 +106,6 @@   = lens _prdUploadProtocol       (\ s a -> s{_prdUploadProtocol = a}) --- | Pretty-print response.-prdPp :: Lens' ProjectsReleasesDelete Bool-prdPp = lens _prdPp (\ s a -> s{_prdPp = a})- -- | OAuth access token. prdAccessToken :: Lens' ProjectsReleasesDelete (Maybe Text) prdAccessToken@@ -134,12 +118,6 @@   = lens _prdUploadType       (\ s a -> s{_prdUploadType = a}) --- | OAuth bearer token.-prdBearerToken :: Lens' ProjectsReleasesDelete (Maybe Text)-prdBearerToken-  = lens _prdBearerToken-      (\ s a -> s{_prdBearerToken = a})- -- | Resource name for the \`Release\` to delete. Format: -- \`projects\/{project_id}\/releases\/{release_id}\` prdName :: Lens' ProjectsReleasesDelete Text@@ -157,10 +135,8 @@                "https://www.googleapis.com/auth/firebase"]         requestClient ProjectsReleasesDelete'{..}           = go _prdName _prdXgafv _prdUploadProtocol-              (Just _prdPp)               _prdAccessToken               _prdUploadType-              _prdBearerToken               _prdCallback               (Just AltJSON)               firebaseRulesService
gen/Network/Google/Resource/FirebaseRules/Projects/Releases/Get.hs view
@@ -35,10 +35,8 @@     -- * Request Lenses     , pXgafv     , pUploadProtocol-    , pPp     , pAccessToken     , pUploadType-    , pBearerToken     , pName     , pCallback     ) where@@ -53,12 +51,10 @@        Capture "name" Text :>          QueryParam "$.xgafv" Xgafv :>            QueryParam "upload_protocol" Text :>-             QueryParam "pp" Bool :>-               QueryParam "access_token" Text :>-                 QueryParam "uploadType" Text :>-                   QueryParam "bearer_token" Text :>-                     QueryParam "callback" Text :>-                       QueryParam "alt" AltJSON :> Get '[JSON] Release+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "callback" Text :>+                   QueryParam "alt" AltJSON :> Get '[JSON] Release  -- | Get a \`Release\` by name. --@@ -66,10 +62,8 @@ data ProjectsReleasesGet = ProjectsReleasesGet'     { _pXgafv          :: !(Maybe Xgafv)     , _pUploadProtocol :: !(Maybe Text)-    , _pPp             :: !Bool     , _pAccessToken    :: !(Maybe Text)     , _pUploadType     :: !(Maybe Text)-    , _pBearerToken    :: !(Maybe Text)     , _pName           :: !Text     , _pCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -82,14 +76,10 @@ -- -- * 'pUploadProtocol' ----- * 'pPp'--- -- * 'pAccessToken' -- -- * 'pUploadType' ----- * 'pBearerToken'--- -- * 'pName' -- -- * 'pCallback'@@ -100,10 +90,8 @@     ProjectsReleasesGet'     { _pXgafv = Nothing     , _pUploadProtocol = Nothing-    , _pPp = True     , _pAccessToken = Nothing     , _pUploadType = Nothing-    , _pBearerToken = Nothing     , _pName = pPName_     , _pCallback = Nothing     }@@ -118,10 +106,6 @@   = lens _pUploadProtocol       (\ s a -> s{_pUploadProtocol = a}) --- | Pretty-print response.-pPp :: Lens' ProjectsReleasesGet Bool-pPp = lens _pPp (\ s a -> s{_pPp = a})- -- | OAuth access token. pAccessToken :: Lens' ProjectsReleasesGet (Maybe Text) pAccessToken@@ -132,11 +116,6 @@ pUploadType   = lens _pUploadType (\ s a -> s{_pUploadType = a}) --- | OAuth bearer token.-pBearerToken :: Lens' ProjectsReleasesGet (Maybe Text)-pBearerToken-  = lens _pBearerToken (\ s a -> s{_pBearerToken = a})- -- | Resource name of the \`Release\`. Format: -- \`projects\/{project_id}\/releases\/{release_id}\` pName :: Lens' ProjectsReleasesGet Text@@ -154,10 +133,8 @@                "https://www.googleapis.com/auth/firebase",                "https://www.googleapis.com/auth/firebase.readonly"]         requestClient ProjectsReleasesGet'{..}-          = go _pName _pXgafv _pUploadProtocol (Just _pPp)-              _pAccessToken+          = go _pName _pXgafv _pUploadProtocol _pAccessToken               _pUploadType-              _pBearerToken               _pCallback               (Just AltJSON)               firebaseRulesService
+ gen/Network/Google/Resource/FirebaseRules/Projects/Releases/GetExecutable.hs view
@@ -0,0 +1,166 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable+-- Copyright   : (c) 2015-2016 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get the \`Release\` executable to use when enforcing rules.+--+-- /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.releases.getExecutable@.+module Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable+    (+    -- * REST Resource+      ProjectsReleasesGetExecutableResource++    -- * Creating a Request+    , projectsReleasesGetExecutable+    , ProjectsReleasesGetExecutable++    -- * Request Lenses+    , prgeXgafv+    , prgeUploadProtocol+    , prgeAccessToken+    , prgeUploadType+    , prgeName+    , prgeExecutableVersion+    , prgeCallback+    ) where++import           Network.Google.FirebaseRules.Types+import           Network.Google.Prelude++-- | A resource alias for @firebaserules.projects.releases.getExecutable@ method which the+-- 'ProjectsReleasesGetExecutable' request conforms to.+type ProjectsReleasesGetExecutableResource =+     "v1" :>+       CaptureMode "name" "getExecutable" Text :>+         QueryParam "$.xgafv" Xgafv :>+           QueryParam "upload_protocol" Text :>+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "executableVersion" Text :>+                   QueryParam "callback" Text :>+                     QueryParam "alt" AltJSON :>+                       Get '[JSON] GetReleaseExecutableResponse++-- | Get the \`Release\` executable to use when enforcing rules.+--+-- /See:/ 'projectsReleasesGetExecutable' smart constructor.+data ProjectsReleasesGetExecutable = ProjectsReleasesGetExecutable'+    { _prgeXgafv             :: !(Maybe Xgafv)+    , _prgeUploadProtocol    :: !(Maybe Text)+    , _prgeAccessToken       :: !(Maybe Text)+    , _prgeUploadType        :: !(Maybe Text)+    , _prgeName              :: !Text+    , _prgeExecutableVersion :: !(Maybe Text)+    , _prgeCallback          :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProjectsReleasesGetExecutable' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'prgeXgafv'+--+-- * 'prgeUploadProtocol'+--+-- * 'prgeAccessToken'+--+-- * 'prgeUploadType'+--+-- * 'prgeName'+--+-- * 'prgeExecutableVersion'+--+-- * 'prgeCallback'+projectsReleasesGetExecutable+    :: Text -- ^ 'prgeName'+    -> ProjectsReleasesGetExecutable+projectsReleasesGetExecutable pPrgeName_ =+    ProjectsReleasesGetExecutable'+    { _prgeXgafv = Nothing+    , _prgeUploadProtocol = Nothing+    , _prgeAccessToken = Nothing+    , _prgeUploadType = Nothing+    , _prgeName = pPrgeName_+    , _prgeExecutableVersion = Nothing+    , _prgeCallback = Nothing+    }++-- | V1 error format.+prgeXgafv :: Lens' ProjectsReleasesGetExecutable (Maybe Xgafv)+prgeXgafv+  = lens _prgeXgafv (\ s a -> s{_prgeXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+prgeUploadProtocol :: Lens' ProjectsReleasesGetExecutable (Maybe Text)+prgeUploadProtocol+  = lens _prgeUploadProtocol+      (\ s a -> s{_prgeUploadProtocol = a})++-- | OAuth access token.+prgeAccessToken :: Lens' ProjectsReleasesGetExecutable (Maybe Text)+prgeAccessToken+  = lens _prgeAccessToken+      (\ s a -> s{_prgeAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+prgeUploadType :: Lens' ProjectsReleasesGetExecutable (Maybe Text)+prgeUploadType+  = lens _prgeUploadType+      (\ s a -> s{_prgeUploadType = a})++-- | Resource name of the \`Release\`. Format:+-- \`projects\/{project_id}\/releases\/{release_id}\`+prgeName :: Lens' ProjectsReleasesGetExecutable Text+prgeName = lens _prgeName (\ s a -> s{_prgeName = a})++-- | The requested runtime executable version. Defaults to+-- FIREBASE_RULES_EXECUTABLE_V1.+prgeExecutableVersion :: Lens' ProjectsReleasesGetExecutable (Maybe Text)+prgeExecutableVersion+  = lens _prgeExecutableVersion+      (\ s a -> s{_prgeExecutableVersion = a})++-- | JSONP+prgeCallback :: Lens' ProjectsReleasesGetExecutable (Maybe Text)+prgeCallback+  = lens _prgeCallback (\ s a -> s{_prgeCallback = a})++instance GoogleRequest ProjectsReleasesGetExecutable+         where+        type Rs ProjectsReleasesGetExecutable =+             GetReleaseExecutableResponse+        type Scopes ProjectsReleasesGetExecutable =+             '["https://www.googleapis.com/auth/cloud-platform",+               "https://www.googleapis.com/auth/firebase",+               "https://www.googleapis.com/auth/firebase.readonly"]+        requestClient ProjectsReleasesGetExecutable'{..}+          = go _prgeName _prgeXgafv _prgeUploadProtocol+              _prgeAccessToken+              _prgeUploadType+              _prgeExecutableVersion+              _prgeCallback+              (Just AltJSON)+              firebaseRulesService+          where go+                  = buildClient+                      (Proxy ::+                         Proxy ProjectsReleasesGetExecutableResource)+                      mempty
gen/Network/Google/Resource/FirebaseRules/Projects/Releases/List.hs view
@@ -21,7 +21,8 @@ -- Portability : non-portable (GHC extensions) -- -- List the \`Release\` values for a project. This list may optionally be--- filtered by \`Release\` name or \`Ruleset\` id or both.+-- filtered by \`Release\` name, \`Ruleset\` name, \`TestSuite\` name, or+-- any combination thereof. -- -- /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.releases.list@. module Network.Google.Resource.FirebaseRules.Projects.Releases.List@@ -36,10 +37,8 @@     -- * Request Lenses     , prlrXgafv     , prlrUploadProtocol-    , prlrPp     , prlrAccessToken     , prlrUploadType-    , prlrBearerToken     , prlrName     , prlrFilter     , prlrPageToken@@ -58,28 +57,25 @@          "releases" :>            QueryParam "$.xgafv" Xgafv :>              QueryParam "upload_protocol" Text :>-               QueryParam "pp" Bool :>-                 QueryParam "access_token" Text :>-                   QueryParam "uploadType" Text :>-                     QueryParam "bearer_token" Text :>-                       QueryParam "filter" Text :>-                         QueryParam "pageToken" Text :>-                           QueryParam "pageSize" (Textual Int32) :>-                             QueryParam "callback" Text :>-                               QueryParam "alt" AltJSON :>-                                 Get '[JSON] ListReleasesResponse+               QueryParam "access_token" Text :>+                 QueryParam "uploadType" Text :>+                   QueryParam "filter" Text :>+                     QueryParam "pageToken" Text :>+                       QueryParam "pageSize" (Textual Int32) :>+                         QueryParam "callback" Text :>+                           QueryParam "alt" AltJSON :>+                             Get '[JSON] ListReleasesResponse  -- | List the \`Release\` values for a project. This list may optionally be--- filtered by \`Release\` name or \`Ruleset\` id or both.+-- filtered by \`Release\` name, \`Ruleset\` name, \`TestSuite\` name, or+-- any combination thereof. -- -- /See:/ 'projectsReleasesList' smart constructor. data ProjectsReleasesList = ProjectsReleasesList'     { _prlrXgafv          :: !(Maybe Xgafv)     , _prlrUploadProtocol :: !(Maybe Text)-    , _prlrPp             :: !Bool     , _prlrAccessToken    :: !(Maybe Text)     , _prlrUploadType     :: !(Maybe Text)-    , _prlrBearerToken    :: !(Maybe Text)     , _prlrName           :: !Text     , _prlrFilter         :: !(Maybe Text)     , _prlrPageToken      :: !(Maybe Text)@@ -95,14 +91,10 @@ -- -- * 'prlrUploadProtocol' ----- * 'prlrPp'--- -- * 'prlrAccessToken' -- -- * 'prlrUploadType' ----- * 'prlrBearerToken'--- -- * 'prlrName' -- -- * 'prlrFilter'@@ -119,10 +111,8 @@     ProjectsReleasesList'     { _prlrXgafv = Nothing     , _prlrUploadProtocol = Nothing-    , _prlrPp = True     , _prlrAccessToken = Nothing     , _prlrUploadType = Nothing-    , _prlrBearerToken = Nothing     , _prlrName = pPrlrName_     , _prlrFilter = Nothing     , _prlrPageToken = Nothing@@ -141,10 +131,6 @@   = lens _prlrUploadProtocol       (\ s a -> s{_prlrUploadProtocol = a}) --- | Pretty-print response.-prlrPp :: Lens' ProjectsReleasesList Bool-prlrPp = lens _prlrPp (\ s a -> s{_prlrPp = a})- -- | OAuth access token. prlrAccessToken :: Lens' ProjectsReleasesList (Maybe Text) prlrAccessToken@@ -157,35 +143,28 @@   = lens _prlrUploadType       (\ s a -> s{_prlrUploadType = a}) --- | OAuth bearer token.-prlrBearerToken :: Lens' ProjectsReleasesList (Maybe Text)-prlrBearerToken-  = lens _prlrBearerToken-      (\ s a -> s{_prlrBearerToken = a})- -- | Resource name for the project. Format: \`projects\/{project_id}\` prlrName :: Lens' ProjectsReleasesList Text prlrName = lens _prlrName (\ s a -> s{_prlrName = a})  -- | \`Release\` filter. The list method supports filters with restrictions--- on the \`Release\` \`name\` and also on the \`Ruleset\`--- \`ruleset_name\`. Example 1) A filter of \'name=prod*\' might return--- \`Release\`s with names within \'projects\/foo\' prefixed with \'prod\':--- Name | Ruleset Name ------------------------------|-------------+-- on the \`Release.name\`, \`Release.ruleset_name\`, and+-- \`Release.test_suite_name\`. Example 1: A filter of \'name=prod*\' might+-- return \`Release\`s with names within \'projects\/foo\' prefixed with+-- \'prod\': Name | Ruleset Name+-- ------------------------------|------------- -- projects\/foo\/releases\/prod | projects\/foo\/rulesets\/uuid1234 -- projects\/foo\/releases\/prod\/v1 | projects\/foo\/rulesets\/uuid1234 -- projects\/foo\/releases\/prod\/v2 | projects\/foo\/rulesets\/uuid8888--- Example 2) A filter of \`name=prod* ruleset_name=uuid1234\` would return+-- Example 2: A filter of \`name=prod* ruleset_name=uuid1234\` would return -- only \`Release\` instances for \'projects\/foo\' with names prefixed -- with \'prod\' referring to the same \`Ruleset\` name of \'uuid1234\': -- Name | Ruleset Name ------------------------------|------------- -- projects\/foo\/releases\/prod | projects\/foo\/rulesets\/1234 -- projects\/foo\/releases\/prod\/v1 | projects\/foo\/rulesets\/1234 In the--- examples, the filter parameters refer to the search filters for release--- and ruleset names are relative to the project releases and rulesets--- collections. Fully qualified prefixed may also be used. e.g.--- \`name=projects\/foo\/releases\/prod*--- ruleset_name=projects\/foo\/rulesets\/uuid1\`+-- examples, the filter parameters refer to the search filters are relative+-- to the project. Fully qualified prefixed may also be used. e.g.+-- \`test_suite_name=projects\/foo\/testsuites\/uuid1\` prlrFilter :: Lens' ProjectsReleasesList (Maybe Text) prlrFilter   = lens _prlrFilter (\ s a -> s{_prlrFilter = a})@@ -197,9 +176,10 @@       (\ s a -> s{_prlrPageToken = a})  -- | Page size to load. Maximum of 100. Defaults to 10. Note: \`page_size\`--- is just a hint and the service may choose to load less than--- \`page_size\` due to the size of the output. To traverse all of the--- releases, caller should iterate until the \`page_token\` is empty.+-- is just a hint and the service may choose to load fewer than+-- \`page_size\` results due to the size of the output. To traverse all of+-- the releases, the caller should iterate until the \`page_token\` on the+-- response is empty. prlrPageSize :: Lens' ProjectsReleasesList (Maybe Int32) prlrPageSize   = lens _prlrPageSize (\ s a -> s{_prlrPageSize = a})@@ -218,10 +198,8 @@                "https://www.googleapis.com/auth/firebase.readonly"]         requestClient ProjectsReleasesList'{..}           = go _prlrName _prlrXgafv _prlrUploadProtocol-              (Just _prlrPp)               _prlrAccessToken               _prlrUploadType-              _prlrBearerToken               _prlrFilter               _prlrPageToken               _prlrPageSize
+ gen/Network/Google/Resource/FirebaseRules/Projects/Releases/Patch.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DataKinds          #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE FlexibleInstances  #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}+{-# LANGUAGE TypeOperators      #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}++-- |+-- Module      : Network.Google.Resource.FirebaseRules.Projects.Releases.Patch+-- Copyright   : (c) 2015-2016 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update a \`Release\` via PATCH. Only updates to the \`ruleset_name\` and+-- \`test_suite_name\` fields will be honored. \`Release\` rename is not+-- supported. To create a \`Release\` use the CreateRelease method.+--+-- /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.releases.patch@.+module Network.Google.Resource.FirebaseRules.Projects.Releases.Patch+    (+    -- * REST Resource+      ProjectsReleasesPatchResource++    -- * Creating a Request+    , projectsReleasesPatch+    , ProjectsReleasesPatch++    -- * Request Lenses+    , prpXgafv+    , prpUploadProtocol+    , prpAccessToken+    , prpUploadType+    , prpPayload+    , prpName+    , prpCallback+    ) where++import           Network.Google.FirebaseRules.Types+import           Network.Google.Prelude++-- | A resource alias for @firebaserules.projects.releases.patch@ method which the+-- 'ProjectsReleasesPatch' request conforms to.+type ProjectsReleasesPatchResource =+     "v1" :>+       Capture "name" Text :>+         QueryParam "$.xgafv" Xgafv :>+           QueryParam "upload_protocol" Text :>+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "callback" Text :>+                   QueryParam "alt" AltJSON :>+                     ReqBody '[JSON] UpdateReleaseRequest :>+                       Patch '[JSON] Release++-- | Update a \`Release\` via PATCH. Only updates to the \`ruleset_name\` and+-- \`test_suite_name\` fields will be honored. \`Release\` rename is not+-- supported. To create a \`Release\` use the CreateRelease method.+--+-- /See:/ 'projectsReleasesPatch' smart constructor.+data ProjectsReleasesPatch = ProjectsReleasesPatch'+    { _prpXgafv          :: !(Maybe Xgafv)+    , _prpUploadProtocol :: !(Maybe Text)+    , _prpAccessToken    :: !(Maybe Text)+    , _prpUploadType     :: !(Maybe Text)+    , _prpPayload        :: !UpdateReleaseRequest+    , _prpName           :: !Text+    , _prpCallback       :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProjectsReleasesPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'prpXgafv'+--+-- * 'prpUploadProtocol'+--+-- * 'prpAccessToken'+--+-- * 'prpUploadType'+--+-- * 'prpPayload'+--+-- * 'prpName'+--+-- * 'prpCallback'+projectsReleasesPatch+    :: UpdateReleaseRequest -- ^ 'prpPayload'+    -> Text -- ^ 'prpName'+    -> ProjectsReleasesPatch+projectsReleasesPatch pPrpPayload_ pPrpName_ =+    ProjectsReleasesPatch'+    { _prpXgafv = Nothing+    , _prpUploadProtocol = Nothing+    , _prpAccessToken = Nothing+    , _prpUploadType = Nothing+    , _prpPayload = pPrpPayload_+    , _prpName = pPrpName_+    , _prpCallback = Nothing+    }++-- | V1 error format.+prpXgafv :: Lens' ProjectsReleasesPatch (Maybe Xgafv)+prpXgafv = lens _prpXgafv (\ s a -> s{_prpXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+prpUploadProtocol :: Lens' ProjectsReleasesPatch (Maybe Text)+prpUploadProtocol+  = lens _prpUploadProtocol+      (\ s a -> s{_prpUploadProtocol = a})++-- | OAuth access token.+prpAccessToken :: Lens' ProjectsReleasesPatch (Maybe Text)+prpAccessToken+  = lens _prpAccessToken+      (\ s a -> s{_prpAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+prpUploadType :: Lens' ProjectsReleasesPatch (Maybe Text)+prpUploadType+  = lens _prpUploadType+      (\ s a -> s{_prpUploadType = a})++-- | Multipart request metadata.+prpPayload :: Lens' ProjectsReleasesPatch UpdateReleaseRequest+prpPayload+  = lens _prpPayload (\ s a -> s{_prpPayload = a})++-- | Resource name for the project which owns this \`Release\`. Format:+-- \`projects\/{project_id}\`+prpName :: Lens' ProjectsReleasesPatch Text+prpName = lens _prpName (\ s a -> s{_prpName = a})++-- | JSONP+prpCallback :: Lens' ProjectsReleasesPatch (Maybe Text)+prpCallback+  = lens _prpCallback (\ s a -> s{_prpCallback = a})++instance GoogleRequest ProjectsReleasesPatch where+        type Rs ProjectsReleasesPatch = Release+        type Scopes ProjectsReleasesPatch =+             '["https://www.googleapis.com/auth/cloud-platform",+               "https://www.googleapis.com/auth/firebase"]+        requestClient ProjectsReleasesPatch'{..}+          = go _prpName _prpXgafv _prpUploadProtocol+              _prpAccessToken+              _prpUploadType+              _prpCallback+              (Just AltJSON)+              _prpPayload+              firebaseRulesService+          where go+                  = buildClient+                      (Proxy :: Proxy ProjectsReleasesPatchResource)+                      mempty
− gen/Network/Google/Resource/FirebaseRules/Projects/Releases/Update.hs
@@ -1,202 +0,0 @@-{-# LANGUAGE DataKinds          #-}-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE FlexibleInstances  #-}-{-# LANGUAGE NoImplicitPrelude  #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE RecordWildCards    #-}-{-# LANGUAGE TypeFamilies       #-}-{-# LANGUAGE TypeOperators      #-}--{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds      #-}-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}---- |--- Module      : Network.Google.Resource.FirebaseRules.Projects.Releases.Update--- Copyright   : (c) 2015-2016 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)------ Update a \`Release\`. Only updates to the \`ruleset_name\` field will be--- honored. \`Release\` rename is not supported. To create a \`Release\`--- use the CreateRelease method instead.------ /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.releases.update@.-module Network.Google.Resource.FirebaseRules.Projects.Releases.Update-    (-    -- * REST Resource-      ProjectsReleasesUpdateResource--    -- * Creating a Request-    , projectsReleasesUpdate-    , ProjectsReleasesUpdate--    -- * Request Lenses-    , pruXgafv-    , pruUploadProtocol-    , pruPp-    , pruAccessToken-    , pruUploadType-    , pruPayload-    , pruBearerToken-    , pruName-    , pruCallback-    ) where--import           Network.Google.FirebaseRules.Types-import           Network.Google.Prelude---- | A resource alias for @firebaserules.projects.releases.update@ method which the--- 'ProjectsReleasesUpdate' request conforms to.-type ProjectsReleasesUpdateResource =-     "v1" :>-       Capture "name" Text :>-         QueryParam "$.xgafv" Xgafv :>-           QueryParam "upload_protocol" Text :>-             QueryParam "pp" Bool :>-               QueryParam "access_token" Text :>-                 QueryParam "uploadType" Text :>-                   QueryParam "bearer_token" Text :>-                     QueryParam "callback" Text :>-                       QueryParam "alt" AltJSON :>-                         ReqBody '[JSON] Release :> Put '[JSON] Release---- | Update a \`Release\`. Only updates to the \`ruleset_name\` field will be--- honored. \`Release\` rename is not supported. To create a \`Release\`--- use the CreateRelease method instead.------ /See:/ 'projectsReleasesUpdate' smart constructor.-data ProjectsReleasesUpdate = ProjectsReleasesUpdate'-    { _pruXgafv          :: !(Maybe Xgafv)-    , _pruUploadProtocol :: !(Maybe Text)-    , _pruPp             :: !Bool-    , _pruAccessToken    :: !(Maybe Text)-    , _pruUploadType     :: !(Maybe Text)-    , _pruPayload        :: !Release-    , _pruBearerToken    :: !(Maybe Text)-    , _pruName           :: !Text-    , _pruCallback       :: !(Maybe Text)-    } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProjectsReleasesUpdate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pruXgafv'------ * 'pruUploadProtocol'------ * 'pruPp'------ * 'pruAccessToken'------ * 'pruUploadType'------ * 'pruPayload'------ * 'pruBearerToken'------ * 'pruName'------ * 'pruCallback'-projectsReleasesUpdate-    :: Release -- ^ 'pruPayload'-    -> Text -- ^ 'pruName'-    -> ProjectsReleasesUpdate-projectsReleasesUpdate pPruPayload_ pPruName_ =-    ProjectsReleasesUpdate'-    { _pruXgafv = Nothing-    , _pruUploadProtocol = Nothing-    , _pruPp = True-    , _pruAccessToken = Nothing-    , _pruUploadType = Nothing-    , _pruPayload = pPruPayload_-    , _pruBearerToken = Nothing-    , _pruName = pPruName_-    , _pruCallback = Nothing-    }---- | V1 error format.-pruXgafv :: Lens' ProjectsReleasesUpdate (Maybe Xgafv)-pruXgafv = lens _pruXgafv (\ s a -> s{_pruXgafv = a})---- | Upload protocol for media (e.g. \"raw\", \"multipart\").-pruUploadProtocol :: Lens' ProjectsReleasesUpdate (Maybe Text)-pruUploadProtocol-  = lens _pruUploadProtocol-      (\ s a -> s{_pruUploadProtocol = a})---- | Pretty-print response.-pruPp :: Lens' ProjectsReleasesUpdate Bool-pruPp = lens _pruPp (\ s a -> s{_pruPp = a})---- | OAuth access token.-pruAccessToken :: Lens' ProjectsReleasesUpdate (Maybe Text)-pruAccessToken-  = lens _pruAccessToken-      (\ s a -> s{_pruAccessToken = a})---- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").-pruUploadType :: Lens' ProjectsReleasesUpdate (Maybe Text)-pruUploadType-  = lens _pruUploadType-      (\ s a -> s{_pruUploadType = a})---- | Multipart request metadata.-pruPayload :: Lens' ProjectsReleasesUpdate Release-pruPayload-  = lens _pruPayload (\ s a -> s{_pruPayload = a})---- | OAuth bearer token.-pruBearerToken :: Lens' ProjectsReleasesUpdate (Maybe Text)-pruBearerToken-  = lens _pruBearerToken-      (\ s a -> s{_pruBearerToken = a})---- | Resource name for the \`Release\`. \`Release\` names may be structured--- \`app1\/prod\/v2\` or flat \`app1_prod_v2\` which affords developers a--- great deal of flexibility in mapping the name to the style that best--- fits their existing development practices. For example, a name could--- refer to an environment, an app, a version, or some combination of--- three. In the table below, for the project name \`projects\/foo\`, the--- following relative release paths show how flat and structured names--- might be chosen to match a desired development \/ deployment strategy.--- Use Case | Flat Name | Structured Name--- -------------|---------------------|---------------- Environments |--- releases\/qa | releases\/qa Apps | releases\/app1_qa |--- releases\/app1\/qa Versions | releases\/app1_v2_qa |--- releases\/app1\/v2\/qa The delimiter between the release name path--- elements can be almost anything and it should work equally well with the--- release name list filter, but in many ways the structured paths provide--- a clearer picture of the relationship between \`Release\` instances.--- Format: \`projects\/{project_id}\/releases\/{release_id}\`-pruName :: Lens' ProjectsReleasesUpdate Text-pruName = lens _pruName (\ s a -> s{_pruName = a})---- | JSONP-pruCallback :: Lens' ProjectsReleasesUpdate (Maybe Text)-pruCallback-  = lens _pruCallback (\ s a -> s{_pruCallback = a})--instance GoogleRequest ProjectsReleasesUpdate where-        type Rs ProjectsReleasesUpdate = Release-        type Scopes ProjectsReleasesUpdate =-             '["https://www.googleapis.com/auth/cloud-platform",-               "https://www.googleapis.com/auth/firebase"]-        requestClient ProjectsReleasesUpdate'{..}-          = go _pruName _pruXgafv _pruUploadProtocol-              (Just _pruPp)-              _pruAccessToken-              _pruUploadType-              _pruBearerToken-              _pruCallback-              (Just AltJSON)-              _pruPayload-              firebaseRulesService-          where go-                  = buildClient-                      (Proxy :: Proxy ProjectsReleasesUpdateResource)-                      mempty
gen/Network/Google/Resource/FirebaseRules/Projects/Rulesets/Create.hs view
@@ -39,11 +39,9 @@     -- * Request Lenses     , prcXgafv     , prcUploadProtocol-    , prcPp     , prcAccessToken     , prcUploadType     , prcPayload-    , prcBearerToken     , prcName     , prcCallback     ) where@@ -59,13 +57,11 @@          "rulesets" :>            QueryParam "$.xgafv" Xgafv :>              QueryParam "upload_protocol" Text :>-               QueryParam "pp" Bool :>-                 QueryParam "access_token" Text :>-                   QueryParam "uploadType" Text :>-                     QueryParam "bearer_token" Text :>-                       QueryParam "callback" Text :>-                         QueryParam "alt" AltJSON :>-                           ReqBody '[JSON] Ruleset :> Post '[JSON] Ruleset+               QueryParam "access_token" Text :>+                 QueryParam "uploadType" Text :>+                   QueryParam "callback" Text :>+                     QueryParam "alt" AltJSON :>+                       ReqBody '[JSON] Ruleset :> Post '[JSON] Ruleset  -- | Create a \`Ruleset\` from \`Source\`. The \`Ruleset\` is given a unique -- generated name which is returned to the caller. \`Source\` containing@@ -77,11 +73,9 @@ data ProjectsRulesetsCreate = ProjectsRulesetsCreate'     { _prcXgafv          :: !(Maybe Xgafv)     , _prcUploadProtocol :: !(Maybe Text)-    , _prcPp             :: !Bool     , _prcAccessToken    :: !(Maybe Text)     , _prcUploadType     :: !(Maybe Text)     , _prcPayload        :: !Ruleset-    , _prcBearerToken    :: !(Maybe Text)     , _prcName           :: !Text     , _prcCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -94,16 +88,12 @@ -- -- * 'prcUploadProtocol' ----- * 'prcPp'--- -- * 'prcAccessToken' -- -- * 'prcUploadType' -- -- * 'prcPayload' ----- * 'prcBearerToken'--- -- * 'prcName' -- -- * 'prcCallback'@@ -115,11 +105,9 @@     ProjectsRulesetsCreate'     { _prcXgafv = Nothing     , _prcUploadProtocol = Nothing-    , _prcPp = True     , _prcAccessToken = Nothing     , _prcUploadType = Nothing     , _prcPayload = pPrcPayload_-    , _prcBearerToken = Nothing     , _prcName = pPrcName_     , _prcCallback = Nothing     }@@ -134,10 +122,6 @@   = lens _prcUploadProtocol       (\ s a -> s{_prcUploadProtocol = a}) --- | Pretty-print response.-prcPp :: Lens' ProjectsRulesetsCreate Bool-prcPp = lens _prcPp (\ s a -> s{_prcPp = a})- -- | OAuth access token. prcAccessToken :: Lens' ProjectsRulesetsCreate (Maybe Text) prcAccessToken@@ -155,12 +139,6 @@ prcPayload   = lens _prcPayload (\ s a -> s{_prcPayload = a}) --- | OAuth bearer token.-prcBearerToken :: Lens' ProjectsRulesetsCreate (Maybe Text)-prcBearerToken-  = lens _prcBearerToken-      (\ s a -> s{_prcBearerToken = a})- -- | Resource name for Project which owns this \`Ruleset\`. Format: -- \`projects\/{project_id}\` prcName :: Lens' ProjectsRulesetsCreate Text@@ -178,10 +156,8 @@                "https://www.googleapis.com/auth/firebase"]         requestClient ProjectsRulesetsCreate'{..}           = go _prcName _prcXgafv _prcUploadProtocol-              (Just _prcPp)               _prcAccessToken               _prcUploadType-              _prcBearerToken               _prcCallback               (Just AltJSON)               _prcPayload
gen/Network/Google/Resource/FirebaseRules/Projects/Rulesets/Delete.hs view
@@ -36,10 +36,8 @@     -- * Request Lenses     , proXgafv     , proUploadProtocol-    , proPp     , proAccessToken     , proUploadType-    , proBearerToken     , proName     , proCallback     ) where@@ -54,12 +52,10 @@        Capture "name" Text :>          QueryParam "$.xgafv" Xgafv :>            QueryParam "upload_protocol" Text :>-             QueryParam "pp" Bool :>-               QueryParam "access_token" Text :>-                 QueryParam "uploadType" Text :>-                   QueryParam "bearer_token" Text :>-                     QueryParam "callback" Text :>-                       QueryParam "alt" AltJSON :> Delete '[JSON] Empty+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "callback" Text :>+                   QueryParam "alt" AltJSON :> Delete '[JSON] Empty  -- | Delete a \`Ruleset\` by resource name. If the \`Ruleset\` is referenced -- by a \`Release\` the operation will fail.@@ -68,10 +64,8 @@ data ProjectsRulesetsDelete = ProjectsRulesetsDelete'     { _proXgafv          :: !(Maybe Xgafv)     , _proUploadProtocol :: !(Maybe Text)-    , _proPp             :: !Bool     , _proAccessToken    :: !(Maybe Text)     , _proUploadType     :: !(Maybe Text)-    , _proBearerToken    :: !(Maybe Text)     , _proName           :: !Text     , _proCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -84,14 +78,10 @@ -- -- * 'proUploadProtocol' ----- * 'proPp'--- -- * 'proAccessToken' -- -- * 'proUploadType' ----- * 'proBearerToken'--- -- * 'proName' -- -- * 'proCallback'@@ -102,10 +92,8 @@     ProjectsRulesetsDelete'     { _proXgafv = Nothing     , _proUploadProtocol = Nothing-    , _proPp = True     , _proAccessToken = Nothing     , _proUploadType = Nothing-    , _proBearerToken = Nothing     , _proName = pProName_     , _proCallback = Nothing     }@@ -120,10 +108,6 @@   = lens _proUploadProtocol       (\ s a -> s{_proUploadProtocol = a}) --- | Pretty-print response.-proPp :: Lens' ProjectsRulesetsDelete Bool-proPp = lens _proPp (\ s a -> s{_proPp = a})- -- | OAuth access token. proAccessToken :: Lens' ProjectsRulesetsDelete (Maybe Text) proAccessToken@@ -136,12 +120,6 @@   = lens _proUploadType       (\ s a -> s{_proUploadType = a}) --- | OAuth bearer token.-proBearerToken :: Lens' ProjectsRulesetsDelete (Maybe Text)-proBearerToken-  = lens _proBearerToken-      (\ s a -> s{_proBearerToken = a})- -- | Resource name for the ruleset to delete. Format: -- \`projects\/{project_id}\/rulesets\/{ruleset_id}\` proName :: Lens' ProjectsRulesetsDelete Text@@ -159,10 +137,8 @@                "https://www.googleapis.com/auth/firebase"]         requestClient ProjectsRulesetsDelete'{..}           = go _proName _proXgafv _proUploadProtocol-              (Just _proPp)               _proAccessToken               _proUploadType-              _proBearerToken               _proCallback               (Just AltJSON)               firebaseRulesService
gen/Network/Google/Resource/FirebaseRules/Projects/Rulesets/Get.hs view
@@ -35,10 +35,8 @@     -- * Request Lenses     , prgXgafv     , prgUploadProtocol-    , prgPp     , prgAccessToken     , prgUploadType-    , prgBearerToken     , prgName     , prgCallback     ) where@@ -53,12 +51,10 @@        Capture "name" Text :>          QueryParam "$.xgafv" Xgafv :>            QueryParam "upload_protocol" Text :>-             QueryParam "pp" Bool :>-               QueryParam "access_token" Text :>-                 QueryParam "uploadType" Text :>-                   QueryParam "bearer_token" Text :>-                     QueryParam "callback" Text :>-                       QueryParam "alt" AltJSON :> Get '[JSON] Ruleset+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "callback" Text :>+                   QueryParam "alt" AltJSON :> Get '[JSON] Ruleset  -- | Get a \`Ruleset\` by name including the full \`Source\` contents. --@@ -66,10 +62,8 @@ data ProjectsRulesetsGet = ProjectsRulesetsGet'     { _prgXgafv          :: !(Maybe Xgafv)     , _prgUploadProtocol :: !(Maybe Text)-    , _prgPp             :: !Bool     , _prgAccessToken    :: !(Maybe Text)     , _prgUploadType     :: !(Maybe Text)-    , _prgBearerToken    :: !(Maybe Text)     , _prgName           :: !Text     , _prgCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -82,14 +76,10 @@ -- -- * 'prgUploadProtocol' ----- * 'prgPp'--- -- * 'prgAccessToken' -- -- * 'prgUploadType' ----- * 'prgBearerToken'--- -- * 'prgName' -- -- * 'prgCallback'@@ -100,10 +90,8 @@     ProjectsRulesetsGet'     { _prgXgafv = Nothing     , _prgUploadProtocol = Nothing-    , _prgPp = True     , _prgAccessToken = Nothing     , _prgUploadType = Nothing-    , _prgBearerToken = Nothing     , _prgName = pPrgName_     , _prgCallback = Nothing     }@@ -118,10 +106,6 @@   = lens _prgUploadProtocol       (\ s a -> s{_prgUploadProtocol = a}) --- | Pretty-print response.-prgPp :: Lens' ProjectsRulesetsGet Bool-prgPp = lens _prgPp (\ s a -> s{_prgPp = a})- -- | OAuth access token. prgAccessToken :: Lens' ProjectsRulesetsGet (Maybe Text) prgAccessToken@@ -134,12 +118,6 @@   = lens _prgUploadType       (\ s a -> s{_prgUploadType = a}) --- | OAuth bearer token.-prgBearerToken :: Lens' ProjectsRulesetsGet (Maybe Text)-prgBearerToken-  = lens _prgBearerToken-      (\ s a -> s{_prgBearerToken = a})- -- | Resource name for the ruleset to get. Format: -- \`projects\/{project_id}\/rulesets\/{ruleset_id}\` prgName :: Lens' ProjectsRulesetsGet Text@@ -158,10 +136,8 @@                "https://www.googleapis.com/auth/firebase.readonly"]         requestClient ProjectsRulesetsGet'{..}           = go _prgName _prgXgafv _prgUploadProtocol-              (Just _prgPp)               _prgAccessToken               _prgUploadType-              _prgBearerToken               _prgCallback               (Just AltJSON)               firebaseRulesService
gen/Network/Google/Resource/FirebaseRules/Projects/Rulesets/List.hs view
@@ -21,7 +21,7 @@ -- Portability : non-portable (GHC extensions) -- -- List \`Ruleset\` metadata only and optionally filter the results by--- Ruleset name. The full \`Source\` contents of a \`Ruleset\` may be+-- \`Ruleset\` name. The full \`Source\` contents of a \`Ruleset\` may be -- retrieved with GetRuleset. -- -- /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.rulesets.list@.@@ -37,11 +37,10 @@     -- * Request Lenses     , prlXgafv     , prlUploadProtocol-    , prlPp     , prlAccessToken     , prlUploadType-    , prlBearerToken     , prlName+    , prlFilter     , prlPageToken     , prlPageSize     , prlCallback@@ -58,29 +57,27 @@          "rulesets" :>            QueryParam "$.xgafv" Xgafv :>              QueryParam "upload_protocol" Text :>-               QueryParam "pp" Bool :>-                 QueryParam "access_token" Text :>-                   QueryParam "uploadType" Text :>-                     QueryParam "bearer_token" Text :>-                       QueryParam "pageToken" Text :>-                         QueryParam "pageSize" (Textual Int32) :>-                           QueryParam "callback" Text :>-                             QueryParam "alt" AltJSON :>-                               Get '[JSON] ListRulesetsResponse+               QueryParam "access_token" Text :>+                 QueryParam "uploadType" Text :>+                   QueryParam "filter" Text :>+                     QueryParam "pageToken" Text :>+                       QueryParam "pageSize" (Textual Int32) :>+                         QueryParam "callback" Text :>+                           QueryParam "alt" AltJSON :>+                             Get '[JSON] ListRulesetsResponse  -- | List \`Ruleset\` metadata only and optionally filter the results by--- Ruleset name. The full \`Source\` contents of a \`Ruleset\` may be+-- \`Ruleset\` name. The full \`Source\` contents of a \`Ruleset\` may be -- retrieved with GetRuleset. -- -- /See:/ 'projectsRulesetsList' smart constructor. data ProjectsRulesetsList = ProjectsRulesetsList'     { _prlXgafv          :: !(Maybe Xgafv)     , _prlUploadProtocol :: !(Maybe Text)-    , _prlPp             :: !Bool     , _prlAccessToken    :: !(Maybe Text)     , _prlUploadType     :: !(Maybe Text)-    , _prlBearerToken    :: !(Maybe Text)     , _prlName           :: !Text+    , _prlFilter         :: !(Maybe Text)     , _prlPageToken      :: !(Maybe Text)     , _prlPageSize       :: !(Maybe (Textual Int32))     , _prlCallback       :: !(Maybe Text)@@ -94,16 +91,14 @@ -- -- * 'prlUploadProtocol' ----- * 'prlPp'--- -- * 'prlAccessToken' -- -- * 'prlUploadType' ----- * 'prlBearerToken'--- -- * 'prlName' --+-- * 'prlFilter'+-- -- * 'prlPageToken' -- -- * 'prlPageSize'@@ -116,11 +111,10 @@     ProjectsRulesetsList'     { _prlXgafv = Nothing     , _prlUploadProtocol = Nothing-    , _prlPp = True     , _prlAccessToken = Nothing     , _prlUploadType = Nothing-    , _prlBearerToken = Nothing     , _prlName = pPrlName_+    , _prlFilter = Nothing     , _prlPageToken = Nothing     , _prlPageSize = Nothing     , _prlCallback = Nothing@@ -136,10 +130,6 @@   = lens _prlUploadProtocol       (\ s a -> s{_prlUploadProtocol = a}) --- | Pretty-print response.-prlPp :: Lens' ProjectsRulesetsList Bool-prlPp = lens _prlPp (\ s a -> s{_prlPp = a})- -- | OAuth access token. prlAccessToken :: Lens' ProjectsRulesetsList (Maybe Text) prlAccessToken@@ -152,16 +142,19 @@   = lens _prlUploadType       (\ s a -> s{_prlUploadType = a}) --- | OAuth bearer token.-prlBearerToken :: Lens' ProjectsRulesetsList (Maybe Text)-prlBearerToken-  = lens _prlBearerToken-      (\ s a -> s{_prlBearerToken = a})- -- | Resource name for the project. Format: \`projects\/{project_id}\` prlName :: Lens' ProjectsRulesetsList Text prlName = lens _prlName (\ s a -> s{_prlName = a}) +-- | \`Ruleset\` filter. The list method supports filters with restrictions+-- on \`Ruleset.name\`. Filters on \`Ruleset.create_time\` should use the+-- \`date\` function which parses strings that conform to the RFC 3339+-- date\/time specifications. Example: \`create_time > date(\"2017-01-01\")+-- AND name=UUID-*\`+prlFilter :: Lens' ProjectsRulesetsList (Maybe Text)+prlFilter+  = lens _prlFilter (\ s a -> s{_prlFilter = a})+ -- | Next page token for loading the next batch of \`Ruleset\` instances. prlPageToken :: Lens' ProjectsRulesetsList (Maybe Text) prlPageToken@@ -189,10 +182,9 @@                "https://www.googleapis.com/auth/firebase.readonly"]         requestClient ProjectsRulesetsList'{..}           = go _prlName _prlXgafv _prlUploadProtocol-              (Just _prlPp)               _prlAccessToken               _prlUploadType-              _prlBearerToken+              _prlFilter               _prlPageToken               _prlPageSize               _prlCallback
gen/Network/Google/Resource/FirebaseRules/Projects/Test.hs view
@@ -20,20 +20,19 @@ -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) ----- Test \`Source\` for syntactic and semantic correctness. Issues present--- in the rules, if any, will be returned to the caller with a description,--- severity, and source location. The test method will typically be--- executed with a developer provided \`Source\`, but if regression testing--- is desired, this method may be executed against a \`Ruleset\` resource--- name and the \`Source\` will be retrieved from the persisted--- \`Ruleset\`. The following is an example of \`Source\` that permits+-- Test \`Source\` for syntactic and semantic correctness. Issues present,+-- if any, will be returned to the caller with a description, severity, and+-- source location. The test method may be executed with \`Source\` or a+-- \`Ruleset\` name. Passing \`Source\` is useful for unit testing new+-- rules. Passing a \`Ruleset\` name is useful for regression testing an+-- existing rule. The following is an example of \`Source\` that permits -- users to upload images to a bucket bearing their user id and matching -- the correct metadata: _*Example*_ \/\/ Users are allowed to subscribe -- and unsubscribe to the blog. service firebase.storage { match -- \/users\/{userId}\/images\/{imageName} { allow write: if userId ==--- request.userId && (imageName.endsWith(\'.png\') ||--- imageName.endsWith(\'.jpg\')) &&--- resource.mimeType.startsWith(\'image\/\') } }+-- request.auth.uid &&+-- (imageName.matches(\'*.png′)||/i//m//a//g//e//N//a//m//e/./m//a//t//c//h//e//s/(′ * ./j//p//g/\'))+-- && resource.mimeType.matches(\'^image\/\') } } -- -- /See:/ <https://firebase.google.com/docs/storage/security Firebase Rules API Reference> for @firebaserules.projects.test@. module Network.Google.Resource.FirebaseRules.Projects.Test@@ -48,11 +47,9 @@     -- * Request Lenses     , ptXgafv     , ptUploadProtocol-    , ptPp     , ptAccessToken     , ptUploadType     , ptPayload-    , ptBearerToken     , ptName     , ptCallback     ) where@@ -67,39 +64,34 @@        CaptureMode "name" "test" Text :>          QueryParam "$.xgafv" Xgafv :>            QueryParam "upload_protocol" Text :>-             QueryParam "pp" Bool :>-               QueryParam "access_token" Text :>-                 QueryParam "uploadType" Text :>-                   QueryParam "bearer_token" Text :>-                     QueryParam "callback" Text :>-                       QueryParam "alt" AltJSON :>-                         ReqBody '[JSON] TestRulesetRequest :>-                           Post '[JSON] TestRulesetResponse+             QueryParam "access_token" Text :>+               QueryParam "uploadType" Text :>+                 QueryParam "callback" Text :>+                   QueryParam "alt" AltJSON :>+                     ReqBody '[JSON] TestRulesetRequest :>+                       Post '[JSON] TestRulesetResponse --- | Test \`Source\` for syntactic and semantic correctness. Issues present--- in the rules, if any, will be returned to the caller with a description,--- severity, and source location. The test method will typically be--- executed with a developer provided \`Source\`, but if regression testing--- is desired, this method may be executed against a \`Ruleset\` resource--- name and the \`Source\` will be retrieved from the persisted--- \`Ruleset\`. The following is an example of \`Source\` that permits+-- | Test \`Source\` for syntactic and semantic correctness. Issues present,+-- if any, will be returned to the caller with a description, severity, and+-- source location. The test method may be executed with \`Source\` or a+-- \`Ruleset\` name. Passing \`Source\` is useful for unit testing new+-- rules. Passing a \`Ruleset\` name is useful for regression testing an+-- existing rule. The following is an example of \`Source\` that permits -- users to upload images to a bucket bearing their user id and matching -- the correct metadata: _*Example*_ \/\/ Users are allowed to subscribe -- and unsubscribe to the blog. service firebase.storage { match -- \/users\/{userId}\/images\/{imageName} { allow write: if userId ==--- request.userId && (imageName.endsWith(\'.png\') ||--- imageName.endsWith(\'.jpg\')) &&--- resource.mimeType.startsWith(\'image\/\') } }+-- request.auth.uid &&+-- (imageName.matches(\'*.png′)||/i//m//a//g//e//N//a//m//e/./m//a//t//c//h//e//s/(′ * ./j//p//g/\'))+-- && resource.mimeType.matches(\'^image\/\') } } -- -- /See:/ 'projectsTest' smart constructor. data ProjectsTest = ProjectsTest'     { _ptXgafv          :: !(Maybe Xgafv)     , _ptUploadProtocol :: !(Maybe Text)-    , _ptPp             :: !Bool     , _ptAccessToken    :: !(Maybe Text)     , _ptUploadType     :: !(Maybe Text)     , _ptPayload        :: !TestRulesetRequest-    , _ptBearerToken    :: !(Maybe Text)     , _ptName           :: !Text     , _ptCallback       :: !(Maybe Text)     } deriving (Eq,Show,Data,Typeable,Generic)@@ -112,16 +104,12 @@ -- -- * 'ptUploadProtocol' ----- * 'ptPp'--- -- * 'ptAccessToken' -- -- * 'ptUploadType' -- -- * 'ptPayload' ----- * 'ptBearerToken'--- -- * 'ptName' -- -- * 'ptCallback'@@ -133,11 +121,9 @@     ProjectsTest'     { _ptXgafv = Nothing     , _ptUploadProtocol = Nothing-    , _ptPp = True     , _ptAccessToken = Nothing     , _ptUploadType = Nothing     , _ptPayload = pPtPayload_-    , _ptBearerToken = Nothing     , _ptName = pPtName_     , _ptCallback = Nothing     }@@ -152,10 +138,6 @@   = lens _ptUploadProtocol       (\ s a -> s{_ptUploadProtocol = a}) --- | Pretty-print response.-ptPp :: Lens' ProjectsTest Bool-ptPp = lens _ptPp (\ s a -> s{_ptPp = a})- -- | OAuth access token. ptAccessToken :: Lens' ProjectsTest (Maybe Text) ptAccessToken@@ -172,13 +154,11 @@ ptPayload   = lens _ptPayload (\ s a -> s{_ptPayload = a}) --- | OAuth bearer token.-ptBearerToken :: Lens' ProjectsTest (Maybe Text)-ptBearerToken-  = lens _ptBearerToken-      (\ s a -> s{_ptBearerToken = a})---- | Name of the project. Format: \`projects\/{project_id}\`+-- | Tests may either provide \`source\` or a \`Ruleset\` resource name. For+-- tests against \`source\`, the resource name must refer to the project:+-- Format: \`projects\/{project_id}\` For tests against a \`Ruleset\`, this+-- must be the \`Ruleset\` resource name: Format:+-- \`projects\/{project_id}\/rulesets\/{ruleset_id}\` ptName :: Lens' ProjectsTest Text ptName = lens _ptName (\ s a -> s{_ptName = a}) @@ -194,10 +174,9 @@                "https://www.googleapis.com/auth/firebase",                "https://www.googleapis.com/auth/firebase.readonly"]         requestClient ProjectsTest'{..}-          = go _ptName _ptXgafv _ptUploadProtocol (Just _ptPp)+          = go _ptName _ptXgafv _ptUploadProtocol               _ptAccessToken               _ptUploadType-              _ptBearerToken               _ptCallback               (Just AltJSON)               _ptPayload
gogol-firebase-rules.cabal view
@@ -1,5 +1,5 @@ name:                  gogol-firebase-rules-version:               0.3.0+version:               0.4.0 synopsis:              Google Firebase Rules SDK. homepage:              https://github.com/brendanhay/gogol bug-reports:           https://github.com/brendanhay/gogol/issues@@ -39,8 +39,9 @@         , Network.Google.Resource.FirebaseRules.Projects.Releases.Create         , Network.Google.Resource.FirebaseRules.Projects.Releases.Delete         , Network.Google.Resource.FirebaseRules.Projects.Releases.Get+        , Network.Google.Resource.FirebaseRules.Projects.Releases.GetExecutable         , Network.Google.Resource.FirebaseRules.Projects.Releases.List-        , Network.Google.Resource.FirebaseRules.Projects.Releases.Update+        , Network.Google.Resource.FirebaseRules.Projects.Releases.Patch         , Network.Google.Resource.FirebaseRules.Projects.Rulesets.Create         , Network.Google.Resource.FirebaseRules.Projects.Rulesets.Delete         , Network.Google.Resource.FirebaseRules.Projects.Rulesets.Get@@ -52,5 +53,5 @@         , Network.Google.FirebaseRules.Types.Sum      build-depends:-          gogol-core == 0.3.0.*+          gogol-core == 0.4.0.*         , base       >= 4.7 && < 5