diff --git a/docs/schema/README.md b/docs/schema/README.md index e5f4bf8..cf8e11f 100644 --- a/docs/schema/README.md +++ b/docs/schema/README.md @@ -55,8 +55,8 @@ - [ParentPassword](./serializedchildaction-definitions-serializedchildchangepasswordaction-properties-parentpassword.md) – `https://timelimit.io/SerializedChildAction#/definitions/SerializedChildChangePasswordAction/properties/password` - [SerialiezdTriedDisablingDeviceAdminAction](./serializedapplogicaction-definitions-serialiezdtrieddisablingdeviceadminaction.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerialiezdTriedDisablingDeviceAdminAction` - [SerialiezdTriedDisablingDeviceAdminAction](./serializedapplogicaction-anyof-serialiezdtrieddisablingdeviceadminaction.md) – `https://timelimit.io/SerializedAppLogicAction#/anyOf/7` -- [SerialiizedUpdateNetworkTimeVerificationAction](./serializedparentaction-anyof-serialiizedupdatenetworktimeverificationaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/41` - [SerialiizedUpdateNetworkTimeVerificationAction](./serializedparentaction-definitions-serialiizedupdatenetworktimeverificationaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerialiizedUpdateNetworkTimeVerificationAction` +- [SerialiizedUpdateNetworkTimeVerificationAction](./serializedparentaction-anyof-serialiizedupdatenetworktimeverificationaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/40` - [SerializeResetCategoryNetworkIdsAction](./serializedparentaction-anyof-serializeresetcategorynetworkidsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/14` - [SerializeResetCategoryNetworkIdsAction](./serializedparentaction-definitions-serializeresetcategorynetworkidsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializeResetCategoryNetworkIdsAction` - [SerializedAddCategoryAppsAction](./serializedparentaction-definitions-serializedaddcategoryappsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedAddCategoryAppsAction` @@ -115,35 +115,33 @@ - [SerializedRemoveUserAction](./serializedparentaction-definitions-serializedremoveuseraction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedRemoveUserAction` - [SerializedRenameChildAction](./serializedparentaction-anyof-serializedrenamechildaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/13` - [SerializedRenameChildAction](./serializedparentaction-definitions-serializedrenamechildaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedRenameChildAction` -- [SerializedResetParentBlockedTimesAction](./serializedparentaction-definitions-serializedresetparentblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedResetParentBlockedTimesAction` -- [SerializedResetParentBlockedTimesAction](./serializedparentaction-anyof-serializedresetparentblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/15` -- [SerializedReviewChildTaskAction](./serializedparentaction-anyof-serializedreviewchildtaskaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/16` - [SerializedReviewChildTaskAction](./serializedparentaction-definitions-serializedreviewchildtaskaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedReviewChildTaskAction` +- [SerializedReviewChildTaskAction](./serializedparentaction-anyof-serializedreviewchildtaskaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/15` +- [SerializedSetCategoryExtraTimeAction](./serializedparentaction-anyof-serializedsetcategoryextratimeaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/16` - [SerializedSetCategoryExtraTimeAction](./serializedparentaction-definitions-serializedsetcategoryextratimeaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetCategoryExtraTimeAction` -- [SerializedSetCategoryExtraTimeAction](./serializedparentaction-anyof-serializedsetcategoryextratimeaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/17` -- [SerializedSetCategoryForUnassignedAppsAction](./serializedparentaction-anyof-serializedsetcategoryforunassignedappsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/18` - [SerializedSetCategoryForUnassignedAppsAction](./serializedparentaction-definitions-serializedsetcategoryforunassignedappsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetCategoryForUnassignedAppsAction` -- [SerializedSetChildPasswordAction](./serializedparentaction-anyof-serializedsetchildpasswordaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/19` +- [SerializedSetCategoryForUnassignedAppsAction](./serializedparentaction-anyof-serializedsetcategoryforunassignedappsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/17` - [SerializedSetChildPasswordAction](./serializedparentaction-definitions-serializedsetchildpasswordaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetChildPasswordAction` -- [SerializedSetConsiderRebootManipulationAction](./serializedparentaction-anyof-serializedsetconsiderrebootmanipulationaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/20` +- [SerializedSetChildPasswordAction](./serializedparentaction-anyof-serializedsetchildpasswordaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/18` - [SerializedSetConsiderRebootManipulationAction](./serializedparentaction-definitions-serializedsetconsiderrebootmanipulationaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetConsiderRebootManipulationAction` -- [SerializedSetDeviceDefaultUserAction](./serializedparentaction-anyof-serializedsetdevicedefaultuseraction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/21` +- [SerializedSetConsiderRebootManipulationAction](./serializedparentaction-anyof-serializedsetconsiderrebootmanipulationaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/19` - [SerializedSetDeviceDefaultUserAction](./serializedparentaction-definitions-serializedsetdevicedefaultuseraction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetDeviceDefaultUserAction` +- [SerializedSetDeviceDefaultUserAction](./serializedparentaction-anyof-serializedsetdevicedefaultuseraction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/20` - [SerializedSetDeviceDefaultUserTimeoutAction](./serializedparentaction-definitions-serializedsetdevicedefaultusertimeoutaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetDeviceDefaultUserTimeoutAction` -- [SerializedSetDeviceDefaultUserTimeoutAction](./serializedparentaction-anyof-serializedsetdevicedefaultusertimeoutaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/22` -- [SerializedSetDeviceUserAction](./serializedparentaction-anyof-serializedsetdeviceuseraction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/23` +- [SerializedSetDeviceDefaultUserTimeoutAction](./serializedparentaction-anyof-serializedsetdevicedefaultusertimeoutaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/21` - [SerializedSetDeviceUserAction](./serializedparentaction-definitions-serializedsetdeviceuseraction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetDeviceUserAction` -- [SerializedSetKeepSignedInAction](./serializedparentaction-anyof-serializedsetkeepsignedinaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/24` +- [SerializedSetDeviceUserAction](./serializedparentaction-anyof-serializedsetdeviceuseraction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/22` - [SerializedSetKeepSignedInAction](./serializedparentaction-definitions-serializedsetkeepsignedinaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetKeepSignedInAction` -- [SerializedSetParentCategoryAction](./serializedparentaction-anyof-serializedsetparentcategoryaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/25` +- [SerializedSetKeepSignedInAction](./serializedparentaction-anyof-serializedsetkeepsignedinaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/23` - [SerializedSetParentCategoryAction](./serializedparentaction-definitions-serializedsetparentcategoryaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetParentCategoryAction` -- [SerializedSetRelaxPrimaryDeviceAction](./serializedparentaction-anyof-serializedsetrelaxprimarydeviceaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/26` +- [SerializedSetParentCategoryAction](./serializedparentaction-anyof-serializedsetparentcategoryaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/24` +- [SerializedSetRelaxPrimaryDeviceAction](./serializedparentaction-anyof-serializedsetrelaxprimarydeviceaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/25` - [SerializedSetRelaxPrimaryDeviceAction](./serializedparentaction-definitions-serializedsetrelaxprimarydeviceaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetRelaxPrimaryDeviceAction` +- [SerializedSetSendDeviceConnected](./serializedparentaction-anyof-serializedsetsenddeviceconnected.md) – `https://timelimit.io/SerializedParentAction#/anyOf/26` - [SerializedSetSendDeviceConnected](./serializedparentaction-definitions-serializedsetsenddeviceconnected.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetSendDeviceConnected` -- [SerializedSetSendDeviceConnected](./serializedparentaction-anyof-serializedsetsenddeviceconnected.md) – `https://timelimit.io/SerializedParentAction#/anyOf/27` - [SerializedSetUserDisableLimitsUntilAction](./serializedparentaction-definitions-serializedsetuserdisablelimitsuntilaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetUserDisableLimitsUntilAction` -- [SerializedSetUserDisableLimitsUntilAction](./serializedparentaction-anyof-serializedsetuserdisablelimitsuntilaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/28` -- [SerializedSetUserTimezoneAction](./serializedparentaction-anyof-serializedsetusertimezoneaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/29` +- [SerializedSetUserDisableLimitsUntilAction](./serializedparentaction-anyof-serializedsetuserdisablelimitsuntilaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/27` +- [SerializedSetUserTimezoneAction](./serializedparentaction-anyof-serializedsetusertimezoneaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/28` - [SerializedSetUserTimezoneAction](./serializedparentaction-definitions-serializedsetusertimezoneaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedSetUserTimezoneAction` - [SerializedSignOutAtDeviceAction](./serializedapplogicaction-anyof-serializedsignoutatdeviceaction.md) – `https://timelimit.io/SerializedAppLogicAction#/anyOf/6` - [SerializedSignOutAtDeviceAction](./serializedapplogicaction-definitions-serializedsignoutatdeviceaction.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerializedSignOutAtDeviceAction` @@ -151,81 +149,79 @@ - [SerializedTimeLimitRule](./serializedparentaction-definitions-serializedcreatetimelimtruleaction-properties-serializedtimelimitrule.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedCreateTimelimtRuleAction/properties/rule` - [SerializedTimeLimitRule](./serializedparentaction-definitions-serializedcreatetimelimtruleaction-properties-serializedtimelimitrule.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedCreateTimelimtRuleAction/properties/rule` - [SerializedUpdatCategoryDisableLimitsAction](./serializedparentaction-definitions-serializedupdatcategorydisablelimitsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdatCategoryDisableLimitsAction` -- [SerializedUpdatCategoryDisableLimitsAction](./serializedparentaction-anyof-serializedupdatcategorydisablelimitsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/33` -- [SerializedUpdateAppActivitiesAction](./serializedapplogicaction-definitions-serializedupdateappactivitiesaction.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerializedUpdateAppActivitiesAction` +- [SerializedUpdatCategoryDisableLimitsAction](./serializedparentaction-anyof-serializedupdatcategorydisablelimitsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/32` - [SerializedUpdateAppActivitiesAction](./serializedapplogicaction-anyof-serializedupdateappactivitiesaction.md) – `https://timelimit.io/SerializedAppLogicAction#/anyOf/8` +- [SerializedUpdateAppActivitiesAction](./serializedapplogicaction-definitions-serializedupdateappactivitiesaction.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerializedUpdateAppActivitiesAction` - [SerializedUpdateCategoryBatteryLimitAction](./serializedparentaction-definitions-serializedupdatecategorybatterylimitaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategoryBatteryLimitAction` -- [SerializedUpdateCategoryBatteryLimitAction](./serializedparentaction-anyof-serializedupdatecategorybatterylimitaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/30` +- [SerializedUpdateCategoryBatteryLimitAction](./serializedparentaction-anyof-serializedupdatecategorybatterylimitaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/29` +- [SerializedUpdateCategoryBlockAllNotificationsAction](./serializedparentaction-anyof-serializedupdatecategoryblockallnotificationsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/30` - [SerializedUpdateCategoryBlockAllNotificationsAction](./serializedparentaction-definitions-serializedupdatecategoryblockallnotificationsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategoryBlockAllNotificationsAction` -- [SerializedUpdateCategoryBlockAllNotificationsAction](./serializedparentaction-anyof-serializedupdatecategoryblockallnotificationsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/31` +- [SerializedUpdateCategoryBlockedTimesAction](./serializedparentaction-anyof-serializedupdatecategoryblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/31` - [SerializedUpdateCategoryBlockedTimesAction](./serializedparentaction-definitions-serializedupdatecategoryblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategoryBlockedTimesAction` -- [SerializedUpdateCategoryBlockedTimesAction](./serializedparentaction-anyof-serializedupdatecategoryblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/32` -- [SerializedUpdateCategorySortingAction](./serializedparentaction-anyof-serializedupdatecategorysortingaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/34` - [SerializedUpdateCategorySortingAction](./serializedparentaction-definitions-serializedupdatecategorysortingaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategorySortingAction` -- [SerializedUpdateCategoryTemporarilyBlockedAction](./serializedparentaction-anyof-serializedupdatecategorytemporarilyblockedaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/35` +- [SerializedUpdateCategorySortingAction](./serializedparentaction-anyof-serializedupdatecategorysortingaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/33` - [SerializedUpdateCategoryTemporarilyBlockedAction](./serializedparentaction-definitions-serializedupdatecategorytemporarilyblockedaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategoryTemporarilyBlockedAction` -- [SerializedUpdateCategoryTimeWarningsAction](./serializedparentaction-anyof-serializedupdatecategorytimewarningsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/36` +- [SerializedUpdateCategoryTemporarilyBlockedAction](./serializedparentaction-anyof-serializedupdatecategorytemporarilyblockedaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/34` +- [SerializedUpdateCategoryTimeWarningsAction](./serializedparentaction-anyof-serializedupdatecategorytimewarningsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/35` - [SerializedUpdateCategoryTimeWarningsAction](./serializedparentaction-definitions-serializedupdatecategorytimewarningsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategoryTimeWarningsAction` -- [SerializedUpdateCategoryTitleAction](./serializedparentaction-anyof-serializedupdatecategorytitleaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/37` +- [SerializedUpdateCategoryTitleAction](./serializedparentaction-anyof-serializedupdatecategorytitleaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/36` - [SerializedUpdateCategoryTitleAction](./serializedparentaction-definitions-serializedupdatecategorytitleaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateCategoryTitleAction` -- [SerializedUpdateChildTaskAction](./serializedparentaction-anyof-serializedupdatechildtaskaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/38` - [SerializedUpdateChildTaskAction](./serializedparentaction-definitions-serializedupdatechildtaskaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateChildTaskAction` -- [SerializedUpdateDeviceNameAction](./serializedparentaction-anyof-serializedupdatedevicenameaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/39` +- [SerializedUpdateChildTaskAction](./serializedparentaction-anyof-serializedupdatechildtaskaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/37` +- [SerializedUpdateDeviceNameAction](./serializedparentaction-anyof-serializedupdatedevicenameaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/38` - [SerializedUpdateDeviceNameAction](./serializedparentaction-definitions-serializedupdatedevicenameaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateDeviceNameAction` -- [SerializedUpdateDeviceStatusAction](./serializedapplogicaction-anyof-serializedupdatedevicestatusaction.md) – `https://timelimit.io/SerializedAppLogicAction#/anyOf/9` - [SerializedUpdateDeviceStatusAction](./serializedapplogicaction-definitions-serializedupdatedevicestatusaction.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerializedUpdateDeviceStatusAction` -- [SerializedUpdateEnableActivityLevelBlockingAction](./serializedparentaction-anyof-serializedupdateenableactivitylevelblockingaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/40` +- [SerializedUpdateDeviceStatusAction](./serializedapplogicaction-anyof-serializedupdatedevicestatusaction.md) – `https://timelimit.io/SerializedAppLogicAction#/anyOf/9` - [SerializedUpdateEnableActivityLevelBlockingAction](./serializedparentaction-definitions-serializedupdateenableactivitylevelblockingaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateEnableActivityLevelBlockingAction` -- [SerializedUpdateParentBlockedTimesAction](./serializedparentaction-anyof-serializedupdateparentblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/42` -- [SerializedUpdateParentBlockedTimesAction](./serializedparentaction-definitions-serializedupdateparentblockedtimesaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction` -- [SerializedUpdateParentNotificationFlagsAction](./serializedparentaction-anyof-serializedupdateparentnotificationflagsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/43` +- [SerializedUpdateEnableActivityLevelBlockingAction](./serializedparentaction-anyof-serializedupdateenableactivitylevelblockingaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/39` - [SerializedUpdateParentNotificationFlagsAction](./serializedparentaction-definitions-serializedupdateparentnotificationflagsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentNotificationFlagsAction` +- [SerializedUpdateParentNotificationFlagsAction](./serializedparentaction-anyof-serializedupdateparentnotificationflagsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/41` - [SerializedUpdateTimelimitRuleAction](./serializedparentaction-definitions-serializedupdatetimelimitruleaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateTimelimitRuleAction` -- [SerializedUpdateTimelimitRuleAction](./serializedparentaction-anyof-serializedupdatetimelimitruleaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/44` -- [SerializedUpdateUserFlagsAction](./serializedparentaction-anyof-serializedupdateuserflagsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/45` +- [SerializedUpdateTimelimitRuleAction](./serializedparentaction-anyof-serializedupdatetimelimitruleaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/42` - [SerializedUpdateUserFlagsAction](./serializedparentaction-definitions-serializedupdateuserflagsaction.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateUserFlagsAction` -- [SerializedUpdateUserLimitLoginCategory](./serializedparentaction-anyof-serializedupdateuserlimitlogincategory.md) – `https://timelimit.io/SerializedParentAction#/anyOf/46` +- [SerializedUpdateUserFlagsAction](./serializedparentaction-anyof-serializedupdateuserflagsaction.md) – `https://timelimit.io/SerializedParentAction#/anyOf/43` - [SerializedUpdateUserLimitLoginCategory](./serializedparentaction-definitions-serializedupdateuserlimitlogincategory.md) – `https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateUserLimitLoginCategory` +- [SerializedUpdateUserLimitLoginCategory](./serializedparentaction-anyof-serializedupdateuserlimitlogincategory.md) – `https://timelimit.io/SerializedParentAction#/anyOf/44` - [ServerCategoryNetworkId](./serverdatastatus-definitions-servercategorynetworkid.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerCategoryNetworkId` - [ServerCategoryNetworkId](./serverdatastatus-definitions-serverupdatedcategorybasedata-properties-networks-servercategorynetworkid.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryBaseData/properties/networks/items` - [ServerCategoryNetworkId](./serverdatastatus-definitions-serverupdatedcategorybasedata-properties-networks-servercategorynetworkid.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryBaseData/properties/networks/items` - [ServerDeviceData](./serverdatastatus-definitions-serverdevicedata.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerDeviceData` - [ServerDeviceData](./serverdatastatus-definitions-serverdevicelist-properties-data-serverdevicedata.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerDeviceList/properties/data/items` - [ServerDeviceData](./serverdatastatus-definitions-serverdevicelist-properties-data-serverdevicedata.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerDeviceList/properties/data/items` -- [ServerDeviceList](./serverdatastatus-properties-serverdevicelist.md) – `https://timelimit.io/ServerDataStatus#/properties/devices` - [ServerDeviceList](./serverdatastatus-definitions-serverdevicelist.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerDeviceList` +- [ServerDeviceList](./serverdatastatus-properties-serverdevicelist.md) – `https://timelimit.io/ServerDataStatus#/properties/devices` - [ServerInstalledAppsData](./serverdatastatus-properties-apps-serverinstalledappsdata.md) – `https://timelimit.io/ServerDataStatus#/properties/apps/items` - [ServerInstalledAppsData](./serverdatastatus-definitions-serverinstalledappsdata.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerInstalledAppsData` -- [ServerSessionDurationItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-sessiondurations-serversessiondurationitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/sessionDurations/items` -- [ServerSessionDurationItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-sessiondurations-serversessiondurationitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/sessionDurations/items` - [ServerSessionDurationItem](./serverdatastatus-definitions-serversessiondurationitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerSessionDurationItem` -- [ServerTimeLimitRule](./serverdatastatus-definitions-serverupdatedtimelimitrules-properties-rules-servertimelimitrule.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedTimeLimitRules/properties/rules/items` +- [ServerSessionDurationItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-sessiondurations-serversessiondurationitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/sessionDurations/items` +- [ServerSessionDurationItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-sessiondurations-serversessiondurationitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/sessionDurations/items` - [ServerTimeLimitRule](./serverdatastatus-definitions-servertimelimitrule.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerTimeLimitRule` - [ServerTimeLimitRule](./serverdatastatus-definitions-serverupdatedtimelimitrules-properties-rules-servertimelimitrule.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedTimeLimitRules/properties/rules/items` -- [ServerUpdatedCategoryAssignedApps](./serverdatastatus-properties-categoryapp-serverupdatedcategoryassignedapps.md) – `https://timelimit.io/ServerDataStatus#/properties/categoryApp/items` +- [ServerTimeLimitRule](./serverdatastatus-definitions-serverupdatedtimelimitrules-properties-rules-servertimelimitrule.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedTimeLimitRules/properties/rules/items` - [ServerUpdatedCategoryAssignedApps](./serverdatastatus-definitions-serverupdatedcategoryassignedapps.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryAssignedApps` +- [ServerUpdatedCategoryAssignedApps](./serverdatastatus-properties-categoryapp-serverupdatedcategoryassignedapps.md) – `https://timelimit.io/ServerDataStatus#/properties/categoryApp/items` - [ServerUpdatedCategoryBaseData](./serverdatastatus-definitions-serverupdatedcategorybasedata.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryBaseData` - [ServerUpdatedCategoryBaseData](./serverdatastatus-properties-categorybase-serverupdatedcategorybasedata.md) – `https://timelimit.io/ServerDataStatus#/properties/categoryBase/items` +- [ServerUpdatedCategoryTask](./serverdatastatus-definitions-serverupdatedcategorytasks-properties-tasks-serverupdatedcategorytask.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryTasks/properties/tasks/items` - [ServerUpdatedCategoryTask](./serverdatastatus-definitions-serverupdatedcategorytask.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryTask` - [ServerUpdatedCategoryTask](./serverdatastatus-definitions-serverupdatedcategorytasks-properties-tasks-serverupdatedcategorytask.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryTasks/properties/tasks/items` -- [ServerUpdatedCategoryTask](./serverdatastatus-definitions-serverupdatedcategorytasks-properties-tasks-serverupdatedcategorytask.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryTasks/properties/tasks/items` -- [ServerUpdatedCategoryTasks](./serverdatastatus-definitions-serverupdatedcategorytasks.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryTasks` - [ServerUpdatedCategoryTasks](./serverdatastatus-properties-tasks-serverupdatedcategorytasks.md) – `https://timelimit.io/ServerDataStatus#/properties/tasks/items` -- [ServerUpdatedCategoryUsedTimes](./serverdatastatus-properties-usedtimes-serverupdatedcategoryusedtimes.md) – `https://timelimit.io/ServerDataStatus#/properties/usedTimes/items` +- [ServerUpdatedCategoryTasks](./serverdatastatus-definitions-serverupdatedcategorytasks.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryTasks` - [ServerUpdatedCategoryUsedTimes](./serverdatastatus-definitions-serverupdatedcategoryusedtimes.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes` +- [ServerUpdatedCategoryUsedTimes](./serverdatastatus-properties-usedtimes-serverupdatedcategoryusedtimes.md) – `https://timelimit.io/ServerDataStatus#/properties/usedTimes/items` - [ServerUpdatedTimeLimitRules](./serverdatastatus-definitions-serverupdatedtimelimitrules.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedTimeLimitRules` - [ServerUpdatedTimeLimitRules](./serverdatastatus-properties-rules-serverupdatedtimelimitrules.md) – `https://timelimit.io/ServerDataStatus#/properties/rules/items` - [ServerUsedTimeItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-times-serverusedtimeitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/times/items` -- [ServerUsedTimeItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-times-serverusedtimeitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/times/items` - [ServerUsedTimeItem](./serverdatastatus-definitions-serverusedtimeitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUsedTimeItem` +- [ServerUsedTimeItem](./serverdatastatus-definitions-serverupdatedcategoryusedtimes-properties-times-serverusedtimeitem.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUpdatedCategoryUsedTimes/properties/times/items` - [ServerUserEntry](./serverdatastatus-definitions-serveruserlist-properties-data-serveruserentry.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUserList/properties/data/items` - [ServerUserEntry](./serverdatastatus-definitions-serveruserlist-properties-data-serveruserentry.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUserList/properties/data/items` - [ServerUserEntry](./serverdatastatus-definitions-serveruserentry.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUserEntry` -- [ServerUserList](./serverdatastatus-definitions-serveruserlist.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUserList` - [ServerUserList](./serverdatastatus-properties-serveruserlist.md) – `https://timelimit.io/ServerDataStatus#/properties/users` +- [ServerUserList](./serverdatastatus-definitions-serveruserlist.md) – `https://timelimit.io/ServerDataStatus#/definitions/ServerUserList` +- [Untitled object in ClientPullChangesRequest](./clientpullchangesrequest-definitions-clientdatastatus-properties-apps.md) – `https://timelimit.io/ClientPullChangesRequest#/definitions/ClientDataStatus/properties/apps` - [Untitled object in ClientPullChangesRequest](./clientpullchangesrequest-definitions-clientdatastatus-properties-apps.md) – `https://timelimit.io/ClientPullChangesRequest#/definitions/ClientDataStatus/properties/apps` - [Untitled object in ClientPullChangesRequest](./clientpullchangesrequest-definitions-clientdatastatus-properties-categories.md) – `https://timelimit.io/ClientPullChangesRequest#/definitions/ClientDataStatus/properties/categories` -- [Untitled object in ClientPullChangesRequest](./clientpullchangesrequest-definitions-clientdatastatus-properties-apps.md) – `https://timelimit.io/ClientPullChangesRequest#/definitions/ClientDataStatus/properties/apps` - [Untitled object in ClientPullChangesRequest](./clientpullchangesrequest-definitions-clientdatastatus-properties-categories.md) – `https://timelimit.io/ClientPullChangesRequest#/definitions/ClientDataStatus/properties/categories` - [Untitled object in SerializedAppLogicAction](./serializedapplogicaction-definitions-serializedaddusedtimeactionversion2-properties-i-items.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerializedAddUsedTimeActionVersion2/properties/i/items` - [Untitled object in SerializedAppLogicAction](./serializedapplogicaction-definitions-serializedaddusedtimeactionversion2-properties-i-items.md) – `https://timelimit.io/SerializedAppLogicAction#/definitions/SerializedAddUsedTimeActionVersion2/properties/i/items` diff --git a/docs/schema/SerializedParentAction.schema.json b/docs/schema/SerializedParentAction.schema.json index ba05a46..2752579 100644 --- a/docs/schema/SerializedParentAction.schema.json +++ b/docs/schema/SerializedParentAction.schema.json @@ -45,9 +45,6 @@ { "$ref": "#/definitions/SerializeResetCategoryNetworkIdsAction" }, - { - "$ref": "#/definitions/SerializedResetParentBlockedTimesAction" - }, { "$ref": "#/definitions/SerializedReviewChildTaskAction" }, @@ -126,9 +123,6 @@ { "$ref": "#/definitions/SerialiizedUpdateNetworkTimeVerificationAction" }, - { - "$ref": "#/definitions/SerializedUpdateParentBlockedTimesAction" - }, { "$ref": "#/definitions/SerializedUpdateParentNotificationFlagsAction" }, @@ -623,26 +617,6 @@ ], "title": "SerializeResetCategoryNetworkIdsAction" }, - "SerializedResetParentBlockedTimesAction": { - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "RESET_PARENT_BLOCKED_TIMES" - ] - }, - "parentId": { - "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "parentId", - "type" - ], - "title": "SerializedResetParentBlockedTimesAction" - }, "SerializedReviewChildTaskAction": { "type": "object", "properties": { @@ -1299,30 +1273,6 @@ ], "title": "SerialiizedUpdateNetworkTimeVerificationAction" }, - "SerializedUpdateParentBlockedTimesAction": { - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "UPDATE_PARENT_BLOCKED_TIMES" - ] - }, - "parentId": { - "type": "string" - }, - "times": { - "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "parentId", - "times", - "type" - ], - "title": "SerializedUpdateParentBlockedTimesAction" - }, "SerializedUpdateParentNotificationFlagsAction": { "type": "object", "properties": { diff --git a/docs/schema/serializedparentaction.md b/docs/schema/serializedparentaction.md index 1f47ad0..654c139 100644 --- a/docs/schema/serializedparentaction.md +++ b/docs/schema/serializedparentaction.md @@ -32,7 +32,6 @@ any of - [SerializedRemoveUserAction](serializedparentaction-definitions-serializedremoveuseraction.md "check type definition") - [SerializedRenameChildAction](serializedparentaction-definitions-serializedrenamechildaction.md "check type definition") - [SerializeResetCategoryNetworkIdsAction](serializedparentaction-definitions-serializeresetcategorynetworkidsaction.md "check type definition") -- [SerializedResetParentBlockedTimesAction](serializedparentaction-definitions-serializedresetparentblockedtimesaction.md "check type definition") - [SerializedReviewChildTaskAction](serializedparentaction-definitions-serializedreviewchildtaskaction.md "check type definition") - [SerializedSetCategoryExtraTimeAction](serializedparentaction-definitions-serializedsetcategoryextratimeaction.md "check type definition") - [SerializedSetCategoryForUnassignedAppsAction](serializedparentaction-definitions-serializedsetcategoryforunassignedappsaction.md "check type definition") @@ -59,7 +58,6 @@ any of - [SerializedUpdateDeviceNameAction](serializedparentaction-definitions-serializedupdatedevicenameaction.md "check type definition") - [SerializedUpdateEnableActivityLevelBlockingAction](serializedparentaction-definitions-serializedupdateenableactivitylevelblockingaction.md "check type definition") - [SerialiizedUpdateNetworkTimeVerificationAction](serializedparentaction-definitions-serialiizedupdatenetworktimeverificationaction.md "check type definition") -- [SerializedUpdateParentBlockedTimesAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction.md "check type definition") - [SerializedUpdateParentNotificationFlagsAction](serializedparentaction-definitions-serializedupdateparentnotificationflagsaction.md "check type definition") - [SerializedUpdateTimelimitRuleAction](serializedparentaction-definitions-serializedupdatetimelimitruleaction.md "check type definition") - [SerializedUpdateUserFlagsAction](serializedparentaction-definitions-serializedupdateuserflagsaction.md "check type definition") @@ -1590,59 +1588,6 @@ Reference this group by using `string` -## Definitions group SerializedResetParentBlockedTimesAction - -Reference this group by using - -```json -{"$ref":"https://timelimit.io/SerializedParentAction#/definitions/SerializedResetParentBlockedTimesAction"} -``` - -| Property | Type | Required | Nullable | Defined by | -| :-------------------- | -------- | -------- | -------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| [type](#type) | `string` | Required | cannot be null | [SerializedParentAction](serializedparentaction-definitions-serializedresetparentblockedtimesaction-properties-type.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedResetParentBlockedTimesAction/properties/type") | -| [parentId](#parentId) | `string` | Required | cannot be null | [SerializedParentAction](serializedparentaction-definitions-serializedresetparentblockedtimesaction-properties-parentid.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedResetParentBlockedTimesAction/properties/parentId") | - -### type - - - - -`type` - -- is required -- Type: `string` -- cannot be null -- defined in: [SerializedParentAction](serializedparentaction-definitions-serializedresetparentblockedtimesaction-properties-type.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedResetParentBlockedTimesAction/properties/type") - -#### type Type - -`string` - -#### type Constraints - -**enum**: the value of this property must be equal to one of the following values: - -| Value | Explanation | -| :----------------------------- | ----------- | -| `"RESET_PARENT_BLOCKED_TIMES"` | | - -### parentId - - - - -`parentId` - -- is required -- Type: `string` -- cannot be null -- defined in: [SerializedParentAction](serializedparentaction-definitions-serializedresetparentblockedtimesaction-properties-parentid.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedResetParentBlockedTimesAction/properties/parentId") - -#### parentId Type - -`string` - ## Definitions group SerializedReviewChildTaskAction Reference this group by using @@ -3592,76 +3537,6 @@ Reference this group by using | `"enabled"` | | | `"if possible"` | | -## Definitions group SerializedUpdateParentBlockedTimesAction - -Reference this group by using - -```json -{"$ref":"https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction"} -``` - -| Property | Type | Required | Nullable | Defined by | -| :-------------------- | -------- | -------- | -------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [type](#type) | `string` | Required | cannot be null | [SerializedParentAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction-properties-type.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction/properties/type") | -| [parentId](#parentId) | `string` | Required | cannot be null | [SerializedParentAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction-properties-parentid.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction/properties/parentId") | -| [times](#times) | `string` | Required | cannot be null | [SerializedParentAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction-properties-times.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction/properties/times") | - -### type - - - - -`type` - -- is required -- Type: `string` -- cannot be null -- defined in: [SerializedParentAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction-properties-type.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction/properties/type") - -#### type Type - -`string` - -#### type Constraints - -**enum**: the value of this property must be equal to one of the following values: - -| Value | Explanation | -| :------------------------------ | ----------- | -| `"UPDATE_PARENT_BLOCKED_TIMES"` | | - -### parentId - - - - -`parentId` - -- is required -- Type: `string` -- cannot be null -- defined in: [SerializedParentAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction-properties-parentid.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction/properties/parentId") - -#### parentId Type - -`string` - -### times - - - - -`times` - -- is required -- Type: `string` -- cannot be null -- defined in: [SerializedParentAction](serializedparentaction-definitions-serializedupdateparentblockedtimesaction-properties-times.md "https://timelimit.io/SerializedParentAction#/definitions/SerializedUpdateParentBlockedTimesAction/properties/times") - -#### times Type - -`string` - ## Definitions group SerializedUpdateParentNotificationFlagsAction Reference this group by using diff --git a/src/action/index.ts b/src/action/index.ts index b3003a8..42927ba 100644 --- a/src/action/index.ts +++ b/src/action/index.ts @@ -38,7 +38,6 @@ export { RemoveInstalledAppsAction } from './removeinstalledapps' export { RemoveUserAction } from './removeuser' export { ResetCategoryNetworkIdsAction } from './resetcategorynetworkids' export { RenameChildAction } from './renamechild' -export { ResetParentBlockedTimesAction } from './resetparentblockedtimes' export { SetCategoryExtraTimeAction } from './setcategoryextratime' export { SetCategoryForUnassignedAppsAction } from './setcategoryforunassignedapps' export { SetChildPasswordAction } from './setchildpassword' @@ -67,7 +66,6 @@ export { UpdateDeviceNameAction } from './updatedevicename' export { UpdateDeviceStatusAction } from './updatedevicestatus' export { UpdateEnableActivityLevelBlockingAction } from './updateenableactivitylevelblocking' export { UpdateNetworkTimeVerificationAction } from './updatenetworktimeverification' -export { UpdateParentBlockedTimesAction } from './updateparentblockedtimes' export { UpdateParentNotificationFlagsAction } from './updateparentnotificationflags' export { UpdateTimelimitRuleAction } from './updatetimelimitrule' export { UpdateUserFlagsAction } from './updateuserflags' diff --git a/src/action/resetparentblockedtimes.ts b/src/action/resetparentblockedtimes.ts deleted file mode 100644 index 690095c..0000000 --- a/src/action/resetparentblockedtimes.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * server component for the TimeLimit App - * Copyright (C) 2019 - 2020 Jonas Lochmann - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, version 3 of the License. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -import { ParentAction } from './basetypes' -import { assertIdWithinFamily } from './meta/util' - -const actionType = 'ResetParentBlockedTimesAction' - -export class ResetParentBlockedTimesAction extends ParentAction { - readonly parentId: string - - constructor ({ parentId }: { - parentId: string - }) { - super() - - assertIdWithinFamily({ actionType, field: 'parentId', value: parentId }) - - this.parentId = parentId - } - - static parse = ({ parentId }: SerializedResetParentBlockedTimesAction) => ( - new ResetParentBlockedTimesAction({ - parentId - }) - ) -} - -export interface SerializedResetParentBlockedTimesAction { - type: 'RESET_PARENT_BLOCKED_TIMES' - parentId: string -} diff --git a/src/action/serialization/parentaction.ts b/src/action/serialization/parentaction.ts index b5ff43e..d760c6f 100644 --- a/src/action/serialization/parentaction.ts +++ b/src/action/serialization/parentaction.ts @@ -32,7 +32,6 @@ import { RemoveCategoryAppsAction, SerializedRemoveCategoryAppsAction } from '.. import { RemoveUserAction, SerializedRemoveUserAction } from '../removeuser' import { RenameChildAction, SerializedRenameChildAction } from '../renamechild' import { ResetCategoryNetworkIdsAction, SerializeResetCategoryNetworkIdsAction } from '../resetcategorynetworkids' -import { ResetParentBlockedTimesAction, SerializedResetParentBlockedTimesAction } from '../resetparentblockedtimes' import { ReviewChildTaskAction, SerializedReviewChildTaskAction } from '../reviewchildtaskaction' import { SerializedSetCategoryExtraTimeAction, SetCategoryExtraTimeAction } from '../setcategoryextratime' import { SerializedSetCategoryForUnassignedAppsAction, SetCategoryForUnassignedAppsAction } from '../setcategoryforunassignedapps' @@ -59,7 +58,6 @@ import { SerializedUpdateChildTaskAction, UpdateChildTaskAction } from '../updat import { SerializedUpdateDeviceNameAction, UpdateDeviceNameAction } from '../updatedevicename' import { SerializedUpdateEnableActivityLevelBlockingAction, UpdateEnableActivityLevelBlockingAction } from '../updateenableactivitylevelblocking' import { SerialiizedUpdateNetworkTimeVerificationAction, UpdateNetworkTimeVerificationAction } from '../updatenetworktimeverification' -import { SerializedUpdateParentBlockedTimesAction, UpdateParentBlockedTimesAction } from '../updateparentblockedtimes' import { SerializedUpdateParentNotificationFlagsAction, UpdateParentNotificationFlagsAction } from '../updateparentnotificationflags' import { SerializedUpdateTimelimitRuleAction, UpdateTimelimitRuleAction } from '../updatetimelimitrule' import { SerializedUpdateUserFlagsAction, UpdateUserFlagsAction } from '../updateuserflags' @@ -81,7 +79,6 @@ export type SerializedParentAction = SerializedRemoveUserAction | SerializedRenameChildAction | SerializeResetCategoryNetworkIdsAction | - SerializedResetParentBlockedTimesAction | SerializedReviewChildTaskAction | SerializedSetCategoryForUnassignedAppsAction | SerializedSetChildPasswordAction | @@ -108,7 +105,6 @@ export type SerializedParentAction = SerializedUpdateDeviceNameAction | SerializedUpdateEnableActivityLevelBlockingAction | SerialiizedUpdateNetworkTimeVerificationAction | - SerializedUpdateParentBlockedTimesAction | SerializedUpdateParentNotificationFlagsAction | SerializedUpdateTimelimitRuleAction | SerializedUpdateUserFlagsAction | @@ -145,8 +141,6 @@ export const parseParentAction = (action: SerializedParentAction): ParentAction return RenameChildAction.parse(action) } else if (action.type === 'RESET_CATEGORY_NETWORK_IDS') { return ResetCategoryNetworkIdsAction.parse(action) - } else if (action.type === 'RESET_PARENT_BLOCKED_TIMES') { - return ResetParentBlockedTimesAction.parse(action) } else if (action.type === 'REVIEW_CHILD_TASK') { return ReviewChildTaskAction.parse(action) } else if (action.type === 'SET_CATEGORY_EXTRA_TIME') { @@ -199,8 +193,6 @@ export const parseParentAction = (action: SerializedParentAction): ParentAction return UpdateEnableActivityLevelBlockingAction.parse(action) } else if (action.type === 'UPDATE_NETWORK_TIME_VERIFICATION') { return UpdateNetworkTimeVerificationAction.parse(action) - } else if (action.type === 'UPDATE_PARENT_BLOCKED_TIMES') { - return UpdateParentBlockedTimesAction.parse(action) } else if (action.type === 'UPDATE_PARENT_NOTIFICATION_FLAGS') { return UpdateParentNotificationFlagsAction.parse(action) } else if (action.type === 'UPDATE_TIMELIMIT_RULE') { diff --git a/src/action/updateparentblockedtimes.ts b/src/action/updateparentblockedtimes.ts deleted file mode 100644 index ff35725..0000000 --- a/src/action/updateparentblockedtimes.ts +++ /dev/null @@ -1,81 +0,0 @@ -/* - * server component for the TimeLimit App - * Copyright (C) 2019 - 2020 Jonas Lochmann - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, version 3 of the License. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -import { BitmapValidationException, validateAndParseBitmask } from '../util/bitmask' -import { ParentAction } from './basetypes' -import { InvalidActionParameterException } from './meta/exception' -import { assertIdWithinFamily } from './meta/util' - -const actionType = 'UpdateParentBlockedTimesAction' - -export class UpdateParentBlockedTimesAction extends ParentAction { - readonly parentId: string - readonly blockedTimes: string - - constructor ({ parentId, blockedTimes }: { - parentId: string - blockedTimes: string - }) { - super() - - assertIdWithinFamily({ actionType, field: 'parentId', value: parentId }) - - try { - const parsedBlockedTimes = validateAndParseBitmask(blockedTimes, 60 * 24 * 7 /* number of minutes per week */) - - for (let day = 0; day < 7; day++) { - let blockedMinutes = 0 - - for (let minute = 0; minute < 60 * 24 /* 1 day */; minute++) { - if (parsedBlockedTimes[day * 60 * 24 + minute]) { - blockedMinutes++ - } - } - - if (blockedMinutes > 60 * 18 /* 18 hours */) { - throw new InvalidActionParameterException({ - actionType, - staticMessage: 'too much blocked minutes per day' - }) - } - } - } catch (ex) { - if (ex instanceof BitmapValidationException) { - throw new InvalidActionParameterException({ - actionType, - staticMessage: 'invalid bitmask' - }) - } else throw ex - } - - this.parentId = parentId - this.blockedTimes = blockedTimes - } - - static parse = ({ parentId, times }: SerializedUpdateParentBlockedTimesAction) => ( - new UpdateParentBlockedTimesAction({ - parentId, - blockedTimes: times - }) - ) -} - -export interface SerializedUpdateParentBlockedTimesAction { - type: 'UPDATE_PARENT_BLOCKED_TIMES' - parentId: string - times: string -} diff --git a/src/api/validator.ts b/src/api/validator.ts index 3e204d8..d89725f 100644 --- a/src/api/validator.ts +++ b/src/api/validator.ts @@ -572,25 +572,6 @@ const definitions = { "type" ] }, - "SerializedResetParentBlockedTimesAction": { - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "RESET_PARENT_BLOCKED_TIMES" - ] - }, - "parentId": { - "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "parentId", - "type" - ] - }, "SerializedReviewChildTaskAction": { "type": "object", "properties": { @@ -1221,29 +1202,6 @@ const definitions = { "type" ] }, - "SerializedUpdateParentBlockedTimesAction": { - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "UPDATE_PARENT_BLOCKED_TIMES" - ] - }, - "parentId": { - "type": "string" - }, - "times": { - "type": "string" - } - }, - "additionalProperties": false, - "required": [ - "parentId", - "times", - "type" - ] - }, "SerializedUpdateParentNotificationFlagsAction": { "type": "object", "properties": { @@ -2648,9 +2606,6 @@ export const isSerializedParentAction: (value: object) => value is SerializedPar { "$ref": "#/definitions/SerializeResetCategoryNetworkIdsAction" }, - { - "$ref": "#/definitions/SerializedResetParentBlockedTimesAction" - }, { "$ref": "#/definitions/SerializedReviewChildTaskAction" }, @@ -2729,9 +2684,6 @@ export const isSerializedParentAction: (value: object) => value is SerializedPar { "$ref": "#/definitions/SerialiizedUpdateNetworkTimeVerificationAction" }, - { - "$ref": "#/definitions/SerializedUpdateParentBlockedTimesAction" - }, { "$ref": "#/definitions/SerializedUpdateParentNotificationFlagsAction" }, diff --git a/src/database/user.ts b/src/database/user.ts index 3d8c83b..b875492 100644 --- a/src/database/user.ts +++ b/src/database/user.ts @@ -52,6 +52,7 @@ export interface UserAttributesVersion4 { } export interface UserAttributesVersion5 { + // currently unused blockedTimes: string } diff --git a/src/function/sync/apply-actions/dispatch-parent-action/index.ts b/src/function/sync/apply-actions/dispatch-parent-action/index.ts index 593a36b..9911625 100644 --- a/src/function/sync/apply-actions/dispatch-parent-action/index.ts +++ b/src/function/sync/apply-actions/dispatch-parent-action/index.ts @@ -32,7 +32,6 @@ import { RemoveUserAction, RenameChildAction, ResetCategoryNetworkIdsAction, - ResetParentBlockedTimesAction, ReviewChildTaskAction, SetCategoryExtraTimeAction, SetCategoryForUnassignedAppsAction, @@ -59,7 +58,6 @@ import { UpdateDeviceNameAction, UpdateEnableActivityLevelBlockingAction, UpdateNetworkTimeVerificationAction, - UpdateParentBlockedTimesAction, UpdateParentNotificationFlagsAction, UpdateTimelimitRuleAction, UpdateUserFlagsAction, @@ -83,7 +81,6 @@ import { dispatchRemoveCategoryApps } from './removecategoryapps' import { dispatchRemoveUser } from './removeuser' import { dispatchRenameChild } from './renamechild' import { dispatchResetCategoryNetworkIds } from './resetcategorynetworkids' -import { dispatchResetParentBlockedTimes } from './resetparentblockedtimes' import { dispatchReviewChildTaskAction } from './reviewchildtaskaction' import { dispatchSetCategoryExtraTime } from './setcategoryextratime' import { dispatchSetCategoryForUnassignedApps } from './setcategoryforunassignedapps' @@ -110,7 +107,6 @@ import { dispatchUpdateChildTaskAction } from './updatechildtaskaction' import { dispatchUpdateDeviceName } from './updatedevicename' import { dispatchUpdateEnableActivityLevelBlocking } from './updateenableactivitylevelblocking' import { dispatchUpdateNetworkTimeVerification } from './updatenetworktimeverification' -import { dispatchUpdateParentBlockedTimes } from './updateparentblockedtimes' import { dispatchUpdateParentNotificationFlags } from './updateparentnotificationflags' import { dispatchUpdateTimelimitRule } from './updatetimelimitrule' import { dispatchUpdateUserFlagsAction } from './updateuserflags' @@ -208,10 +204,6 @@ export const dispatchParentAction = async ({ action, cache, parentUserId, source return dispatchIgnoreManipulation({ action, cache }) } else if (action instanceof UpdateCategoryTimeWarningsAction) { return dispatchUpdateCategoryTimeWarnings({ action, cache }) - } else if (action instanceof ResetParentBlockedTimesAction) { - return dispatchResetParentBlockedTimes({ action, cache }) - } else if (action instanceof UpdateParentBlockedTimesAction) { - return dispatchUpdateParentBlockedTimes({ action, cache, parentUserId }) } else if (action instanceof UpdateUserFlagsAction) { return dispatchUpdateUserFlagsAction({ action, cache }) } else if (action instanceof UpdateUserLimitLoginCategory) { diff --git a/src/function/sync/apply-actions/dispatch-parent-action/resetparentblockedtimes.ts b/src/function/sync/apply-actions/dispatch-parent-action/resetparentblockedtimes.ts deleted file mode 100644 index e1e2bda..0000000 --- a/src/function/sync/apply-actions/dispatch-parent-action/resetparentblockedtimes.ts +++ /dev/null @@ -1,52 +0,0 @@ -/* - * server component for the TimeLimit App - * Copyright (C) 2019 - 2020 Jonas Lochmann - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, version 3 of the License. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -import { ResetParentBlockedTimesAction } from '../../../../action' -import { Cache } from '../cache' -import { MissingUserException } from '../exception/missing-item' - -export async function dispatchResetParentBlockedTimes ({ action, cache }: { - action: ResetParentBlockedTimesAction - cache: Cache -}) { - const oldItem = await cache.database.user.findOne({ - where: { - familyId: cache.familyId, - userId: action.parentId, - type: 'parent' - }, - transaction: cache.transaction - }) - - if (!oldItem) { - throw new MissingUserException() - } - - await cache.database.user.update({ - blockedTimes: '' - }, { - where: { - familyId: cache.familyId, - userId: action.parentId, - type: 'parent' - }, - transaction: cache.transaction - }) - - cache.invalidiateUserList = true - cache.areChangesImportant = true -} diff --git a/src/function/sync/apply-actions/dispatch-parent-action/updateparentblockedtimes.ts b/src/function/sync/apply-actions/dispatch-parent-action/updateparentblockedtimes.ts deleted file mode 100644 index 12a46e4..0000000 --- a/src/function/sync/apply-actions/dispatch-parent-action/updateparentblockedtimes.ts +++ /dev/null @@ -1,58 +0,0 @@ -/* - * server component for the TimeLimit App - * Copyright (C) 2019 - 2020 Jonas Lochmann - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, version 3 of the License. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -import { UpdateParentBlockedTimesAction } from '../../../../action' -import { Cache } from '../cache' -import { ApplyActionException } from '../exception/index' -import { MissingUserException } from '../exception/missing-item' - -export async function dispatchUpdateParentBlockedTimes ({ action, cache, parentUserId }: { - action: UpdateParentBlockedTimesAction - cache: Cache - parentUserId: string -}) { - if (parentUserId !== action.parentId && action.blockedTimes !== '') { - throw new ApplyActionException({ staticMessage: 'only a parent itself can add limits' }) - } - - const oldUser = await cache.database.user.findOne({ - where: { - familyId: cache.familyId, - userId: action.parentId, - type: 'parent' - }, - transaction: cache.transaction - }) - - if (!oldUser) { - throw new MissingUserException() - } - - await cache.database.user.update({ - blockedTimes: action.blockedTimes - }, { - where: { - familyId: cache.familyId, - userId: action.parentId, - type: 'parent' - }, - transaction: cache.transaction - }) - - cache.invalidiateUserList = true - cache.areChangesImportant = true -} diff --git a/src/function/sync/get-server-data-status/user-list.ts b/src/function/sync/get-server-data-status/user-list.ts index f15426c..03c39d5 100644 --- a/src/function/sync/get-server-data-status/user-list.ts +++ b/src/function/sync/get-server-data-status/user-list.ts @@ -42,7 +42,6 @@ export async function getUserList ({ database, transaction, familyEntry }: { 'categoryForNotAssignedApps', 'relaxPrimaryDeviceRule', 'mailNotificationFlags', - 'blockedTimes', 'flags' ], transaction @@ -59,7 +58,6 @@ export async function getUserList ({ database, transaction, familyEntry }: { categoryForNotAssignedApps: item.categoryForNotAssignedApps, relaxPrimaryDeviceRule: item.relaxPrimaryDeviceRule, mailNotificationFlags: item.mailNotificationFlags, - blockedTimes: item.blockedTimes, flags: item.flags })) @@ -102,7 +100,7 @@ export async function getUserList ({ database, transaction, familyEntry }: { categoryForNotAssignedApps: item.categoryForNotAssignedApps, relaxPrimaryDevice: item.relaxPrimaryDeviceRule, mailNotificationFlags: item.mailNotificationFlags, - blockedTimes: item.blockedTimes, + blockedTimes: '', flags: parseInt(item.flags, 10), llc: getLimitLoginCategory(item.userId) }))