434 lines
17 KiB
TypeScript
434 lines
17 KiB
TypeScript
// Module ID: 13899
|
|
// Function ID: 106398
|
|
// Name: openTimePicker
|
|
// Dependencies: [5, 57, 31, 27, 1850, 653, 33, 4099, 8191, 1935, 4131, 689, 1273, 4542, 4127, 1212, 2199, 1456, 6273, 10185, 624, 13900, 13901, 4090, 5501, 5502, 5164, 5121, 4544, 2]
|
|
// Exports: default
|
|
|
|
// Module 13899 (openTimePicker)
|
|
import ME from "ME";
|
|
import _slicedToArray from "_slicedToArray";
|
|
import result from "result";
|
|
import get_ActivityIndicator from "SafeAreaPaddingView";
|
|
import _isNativeReflectConstruct from "_isNativeReflectConstruct";
|
|
import { UserSettingsSections } from "ME";
|
|
import jsxProd from "jsxProd";
|
|
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
|
|
|
|
let closure_11;
|
|
let closure_12;
|
|
let closure_6;
|
|
let closure_7;
|
|
let closure_8;
|
|
let require = arg1;
|
|
function openTimePicker(arg0, title, hours) {
|
|
const _require = arg3;
|
|
let obj = importDefault(4099);
|
|
obj = { title, mode: "time" };
|
|
const tmp = _require(1935)(8191, dependencyMap.paths);
|
|
obj.startDate = new Date(2025, 0, 1, hours.hours, hours.minutes, 0, 0);
|
|
obj.onSubmit = function onSubmit(hours) {
|
|
return callback({ hours: hours.hours(), minutes: hours.minutes() });
|
|
};
|
|
obj.openLazy(tmp, arg0, obj);
|
|
}
|
|
function OverlappingSchedulesWarning(conflictingEntries) {
|
|
conflictingEntries = conflictingEntries.conflictingEntries;
|
|
let tmp = null;
|
|
if (0 !== conflictingEntries.length) {
|
|
let obj = { messageType: require(1273) /* Button */.HelpMessageTypes.WARNING, borderRadius: importDefault(689).radii.md };
|
|
obj = { spacing: 8 };
|
|
obj = { variant: "text-sm/medium" };
|
|
const intl = require(1212) /* getSystemLocale */.intl;
|
|
obj.children = intl.string(importDefault(2199)["26A0Df"]);
|
|
const items = [callback2(require(4127) /* Text */.Text, obj), ];
|
|
const obj1 = {
|
|
spacing: 4,
|
|
children: conflictingEntries.map((dayLabel) => {
|
|
dayLabel = dayLabel.dayLabel;
|
|
const obj = { variant: "text-sm/medium", children: "" + dayLabel + " " + dayLabel.timeRange };
|
|
return outer1_11(outer1_0(outer1_2[14]).Text, obj, dayLabel);
|
|
})
|
|
};
|
|
items[1] = callback2(require(4542) /* Stack */.Stack, obj1);
|
|
obj.children = items;
|
|
obj.children = callback3(require(4542) /* Stack */.Stack, obj);
|
|
tmp = callback2(require(1273) /* Button */.HelpMessage, obj);
|
|
}
|
|
return tmp;
|
|
}
|
|
({ View: closure_6, Pressable: closure_7, ScrollView: closure_8 } = get_ActivityIndicator);
|
|
({ jsx: closure_11, jsxs: closure_12 } = jsxProd);
|
|
_createForOfIteratorHelperLoose = { container: { flex: 1 } };
|
|
_createForOfIteratorHelperLoose = { paddingHorizontal: require("_createForOfIteratorHelperLoose").space.PX_16, paddingTop: require("_createForOfIteratorHelperLoose").space.PX_24, gap: require("_createForOfIteratorHelperLoose").space.PX_24 };
|
|
_createForOfIteratorHelperLoose.scrollContent = _createForOfIteratorHelperLoose;
|
|
_createForOfIteratorHelperLoose.section = { gap: require("_createForOfIteratorHelperLoose").space.PX_8 };
|
|
let obj1 = { gap: require("_createForOfIteratorHelperLoose").space.PX_8 };
|
|
_createForOfIteratorHelperLoose.sectionHeader = { gap: require("_createForOfIteratorHelperLoose").space.PX_4 };
|
|
let obj2 = { gap: require("_createForOfIteratorHelperLoose").space.PX_4 };
|
|
_createForOfIteratorHelperLoose.daysContainer = { flexDirection: "row", gap: require("_createForOfIteratorHelperLoose").space.PX_8 };
|
|
let obj4 = { flex: 1, aspectRatio: 1, borderRadius: require("_createForOfIteratorHelperLoose").radii.round, alignItems: "center", justifyContent: "center", backgroundColor: require("_createForOfIteratorHelperLoose").colors.REDESIGN_BUTTON_TERTIARY_BACKGROUND, borderWidth: 1, borderColor: "transparent" };
|
|
_createForOfIteratorHelperLoose.dayButton = obj4;
|
|
_createForOfIteratorHelperLoose.dayButtonSelected = { backgroundColor: "rgba(88, 101, 242, 0.16)", borderColor: "rgba(88, 101, 242, 1)" };
|
|
let obj3 = { flexDirection: "row", gap: require("_createForOfIteratorHelperLoose").space.PX_8 };
|
|
_createForOfIteratorHelperLoose.overlapWarningContent = { marginTop: require("_createForOfIteratorHelperLoose").space.PX_24 };
|
|
let obj5 = { marginTop: require("_createForOfIteratorHelperLoose").space.PX_24 };
|
|
_createForOfIteratorHelperLoose.footer = { paddingHorizontal: require("_createForOfIteratorHelperLoose").space.PX_16, paddingVertical: require("_createForOfIteratorHelperLoose").space.PX_16, gap: require("_createForOfIteratorHelperLoose").space.PX_8 };
|
|
_createForOfIteratorHelperLoose = _createForOfIteratorHelperLoose.createStyles(_createForOfIteratorHelperLoose);
|
|
let obj6 = { paddingHorizontal: require("_createForOfIteratorHelperLoose").space.PX_16, paddingVertical: require("_createForOfIteratorHelperLoose").space.PX_16, gap: require("_createForOfIteratorHelperLoose").space.PX_8 };
|
|
let result = require("result").fileFinishedImporting("modules/parent_tools/native/ScheduleDowntimeScreen.tsx");
|
|
|
|
export default function ScheduleDowntimeScreen() {
|
|
function _handleSubmit() {
|
|
// CreateGeneratorClosureLongIndex (0x67)
|
|
const obj = dependencyMap(tmp);
|
|
return obj(...arguments);
|
|
}
|
|
const tmp = _createForOfIteratorHelperLoose();
|
|
const require = tmp;
|
|
let obj = require(rule[17]);
|
|
const stackNavigation = obj.useStackNavigation();
|
|
let obj1 = require(rule[18]);
|
|
const params = obj1.useSettingNavigationRoute().params;
|
|
rule = undefined;
|
|
if (null != params) {
|
|
rule = params.rule;
|
|
}
|
|
let callback = teenId.useMemo(() => tmp(rule[19]).getShortDayLabels("narrow"), []);
|
|
const memo = teenId.useMemo(() => tmp(rule[19]).getShortDayLabels("short"), []);
|
|
teenId = undefined;
|
|
if (null != params) {
|
|
teenId = params.teenId;
|
|
}
|
|
let closure_6 = tmp6;
|
|
let enabled;
|
|
if (null != rule) {
|
|
enabled = rule.enabled;
|
|
}
|
|
const tmp10 = memo(teenId.useState(null == enabled || enabled), 2);
|
|
const first = tmp10[0];
|
|
let closure_8 = tmp10[1];
|
|
let obj2 = require(rule[20]);
|
|
let items = [stateFromStores];
|
|
stateFromStores = obj2.useStateFromStores(items, () => {
|
|
if (null == teenId) {
|
|
let items = [];
|
|
} else {
|
|
const user = stateFromStores.getUser(teenId);
|
|
items = undefined;
|
|
if (null != user) {
|
|
const restrictedSchedule = user.restrictedSchedule;
|
|
if (null != restrictedSchedule) {
|
|
items = restrictedSchedule.rules;
|
|
}
|
|
}
|
|
if (null == items) {
|
|
items = [];
|
|
}
|
|
}
|
|
return items;
|
|
});
|
|
obj = {};
|
|
let startTime;
|
|
if (null != rule) {
|
|
startTime = rule.startTime;
|
|
}
|
|
let tmp15 = null;
|
|
if (null != startTime) {
|
|
obj = { hours: rule.startTime.hours };
|
|
const minutes = rule.startTime.minutes;
|
|
let num = 0;
|
|
if (null != minutes) {
|
|
num = minutes;
|
|
}
|
|
obj.minutes = num;
|
|
obj.seconds = 0;
|
|
obj.nanos = 0;
|
|
tmp15 = obj;
|
|
}
|
|
obj.initial = tmp15;
|
|
obj.defaultValue = { hours: 22, minutes: 0 };
|
|
const tmp16 = memo(stackNavigation(rule[21])(obj), 2);
|
|
const first1 = tmp16[0];
|
|
const callback2 = tmp16[1];
|
|
obj1 = {};
|
|
let endTime;
|
|
const tmp13 = stackNavigation(rule[21]);
|
|
const tmp9 = null == enabled || enabled;
|
|
if (null != rule) {
|
|
endTime = rule.endTime;
|
|
}
|
|
let tmp20 = null;
|
|
if (null != endTime) {
|
|
obj2 = { hours: rule.endTime.hours };
|
|
const minutes2 = rule.endTime.minutes;
|
|
let num2 = 0;
|
|
if (null != minutes2) {
|
|
num2 = minutes2;
|
|
}
|
|
obj2.minutes = num2;
|
|
obj2.seconds = 0;
|
|
obj2.nanos = 0;
|
|
tmp20 = obj2;
|
|
}
|
|
obj1.initial = tmp20;
|
|
obj1.defaultValue = { hours: 7, minutes: 0 };
|
|
const tmp21 = memo(stackNavigation(rule[21])(obj1), 2);
|
|
const first2 = tmp21[0];
|
|
_createForOfIteratorHelperLoose = tmp21[1];
|
|
let days;
|
|
if (null != rule) {
|
|
days = rule.days;
|
|
}
|
|
const tmp18 = stackNavigation(rule[21]);
|
|
const tmp26 = memo(teenId.useState(new Set(days)), 2);
|
|
const first3 = tmp26[0];
|
|
let closure_15 = tmp26[1];
|
|
const tmp29 = memo(teenId.useState(false), 2);
|
|
let str = tmp29[0];
|
|
let closure_17 = tmp29[1];
|
|
const items1 = [null != rule, , ];
|
|
let ruleId;
|
|
if (null != rule) {
|
|
ruleId = rule.ruleId;
|
|
}
|
|
items1[1] = ruleId;
|
|
items1[2] = stateFromStores;
|
|
const memo1 = teenId.useMemo(() => {
|
|
if (closure_6) {
|
|
let ruleId;
|
|
if (null != rule) {
|
|
ruleId = rule.ruleId;
|
|
}
|
|
if (null != ruleId) {
|
|
let found = stateFromStores.filter((ruleId) => ruleId.ruleId !== outer1_2.ruleId);
|
|
}
|
|
return found;
|
|
}
|
|
found = stateFromStores;
|
|
}, items1);
|
|
const items2 = [memo, memo1, first3];
|
|
const fn = () => tmp(rule[19]).computeOverlappingInfo(first3, memo1, memo);
|
|
const memo2 = teenId.useMemo(fn, items2);
|
|
// CreateGeneratorClosureLongIndex (0x67)
|
|
const items3 = [teenId, , ];
|
|
let ruleId1;
|
|
let set = new Set(days);
|
|
if (null != rule) {
|
|
ruleId1 = rule.ruleId;
|
|
}
|
|
items3[1] = ruleId1;
|
|
items3[2] = stackNavigation;
|
|
callback = teenId.useCallback(callback(fn), items3);
|
|
const items4 = [stackNavigation, null != rule, callback, str];
|
|
const layoutEffect = teenId.useLayoutEffect(() => {
|
|
if (closure_6) {
|
|
let obj = {
|
|
headerRight() {
|
|
let obj = { onPress: outer1_19, accessibilityRole: "button" };
|
|
const intl = callback(rule[15]).intl;
|
|
obj.accessibilityLabel = intl.string(callback(rule[15]).t.oyYWHE);
|
|
obj.hitSlop = 8;
|
|
obj.disabled = outer1_16;
|
|
obj = { color: stackNavigation(rule[11]).colors.ICON_FEEDBACK_CRITICAL, size: "md" };
|
|
obj.children = callback2(callback(rule[23]).TrashIcon, obj);
|
|
return callback2(first, obj);
|
|
}
|
|
};
|
|
stackNavigation.setOptions(obj);
|
|
}
|
|
}, items4);
|
|
let obj7 = require(rule[19]);
|
|
const timeToMinutesResult = obj7.timeToMinutes(first1);
|
|
let obj8 = require(rule[19]);
|
|
const timeToMinutesResult1 = obj8.timeToMinutes(first2);
|
|
const obj3 = {};
|
|
let obj10 = require(rule[19]);
|
|
obj3.startTime = obj10.formatTime(first1);
|
|
let obj11 = require(rule[19]);
|
|
obj3.endTime = obj11.formatTime(first2);
|
|
obj3.timeHook = function timeHook(children) {
|
|
const obj = { variant: "text-sm/medium", color: "text-default", children };
|
|
return callback2(tmp(rule[14]).Text, obj, arg1);
|
|
};
|
|
if (timeToMinutesResult > timeToMinutesResult1) {
|
|
const intl2 = require(rule[15]).intl;
|
|
let formatResult = intl2.format(stackNavigation(rule[16]).R87Y2K, obj3);
|
|
} else {
|
|
let intl = require(rule[15]).intl;
|
|
formatResult = intl.format(stackNavigation(rule[16]).vX7xid, obj3);
|
|
}
|
|
let str2 = first3.size > 0 && timeToMinutesResult !== timeToMinutesResult1 && !str;
|
|
if (null == teenId) {
|
|
return null;
|
|
} else {
|
|
const obj4 = { style: tmp.container };
|
|
const obj5 = {};
|
|
const obj6 = { style: tmp.scrollContent };
|
|
obj7 = { variant: "text-md/medium", color: "text-subtle" };
|
|
const intl3 = require(rule[15]).intl;
|
|
obj7.children = intl3.string(stackNavigation(rule[16]).AcJ4ke);
|
|
const items5 = [callback2(require(rule[14]).Text, obj7), , , ];
|
|
let tmp56 = tmp6;
|
|
if (tmp6) {
|
|
obj8 = { hasIcons: false };
|
|
const obj9 = {};
|
|
const intl4 = require(rule[15]).intl;
|
|
obj9.label = intl4.string(stackNavigation(rule[16])["30Owsd"]);
|
|
obj9.value = first;
|
|
obj9.onValueChange = function handleEnabledChange() {
|
|
callback((arg0) => !arg0);
|
|
};
|
|
obj8.children = callback2(require(rule[25]).TableSwitchRow, obj9);
|
|
tmp56 = callback2(require(rule[24]).TableRowGroup, obj8);
|
|
}
|
|
items5[1] = tmp56;
|
|
obj10 = { style: tmp.section };
|
|
obj11 = { variant: "text-sm/semibold", color: "text-subtle" };
|
|
const intl5 = require(rule[15]).intl;
|
|
obj11.children = intl5.string(stackNavigation(rule[16])["37z4a2"]);
|
|
const items6 = [callback2(require(rule[14]).Text, obj11), ];
|
|
const obj12 = { hasIcons: false };
|
|
const obj13 = {};
|
|
const intl6 = require(rule[15]).intl;
|
|
obj13.label = intl6.string(stackNavigation(rule[16]).DsXytO);
|
|
const obj14 = { variant: "text-md/normal" };
|
|
let obj23 = require(rule[19]);
|
|
obj14.children = obj23.formatTime(first1);
|
|
obj13.trailing = callback2(require(rule[14]).Text, obj14);
|
|
obj13.arrow = true;
|
|
obj13.onPress = function handleStartTimePress() {
|
|
const intl = tmp(rule[15]).intl;
|
|
};
|
|
const items7 = [callback2(require(rule[26]).TableRow, obj13), ];
|
|
const obj15 = {};
|
|
const intl7 = require(rule[15]).intl;
|
|
obj15.label = intl7.string(stackNavigation(rule[16])["5SHDP6"]);
|
|
const obj16 = { variant: "text-md/normal" };
|
|
let obj26 = require(rule[19]);
|
|
obj16.children = obj26.formatTime(first2);
|
|
obj15.trailing = callback2(require(rule[14]).Text, obj16);
|
|
obj15.arrow = true;
|
|
obj15.onPress = function handleEndTimePress() {
|
|
const intl = tmp(rule[15]).intl;
|
|
};
|
|
items7[1] = callback2(require(rule[26]).TableRow, obj15);
|
|
obj12.children = items7;
|
|
items6[1] = first2(require(rule[24]).TableRowGroup, obj12);
|
|
obj10.children = items6;
|
|
items5[2] = first2(closure_6, obj10);
|
|
const obj17 = { style: tmp.section };
|
|
const obj18 = { style: tmp.sectionHeader };
|
|
const obj19 = { variant: "text-sm/semibold", color: "text-subtle" };
|
|
const intl8 = require(rule[15]).intl;
|
|
obj19.children = intl8.string(stackNavigation(rule[16]).HaV0Sg);
|
|
const items8 = [callback2(require(rule[14]).Text, obj19), ];
|
|
const obj20 = { variant: "text-sm/normal", color: "text-muted", children: formatResult };
|
|
items8[1] = callback2(require(rule[14]).Text, obj20);
|
|
obj18.children = items8;
|
|
const items9 = [first2(closure_6, obj18), , ];
|
|
const obj21 = { style: tmp.daysContainer };
|
|
const DAYS_ORDERED = require(rule[19]).DAYS_ORDERED;
|
|
obj21.children = DAYS_ORDERED.map((arg0, arg1) => {
|
|
const hasItem = first3.has(arg0);
|
|
let obj = {};
|
|
const items = [arg0.dayButton, ];
|
|
let dayButtonSelected = hasItem;
|
|
if (hasItem) {
|
|
dayButtonSelected = tmp.dayButtonSelected;
|
|
}
|
|
items[1] = dayButtonSelected;
|
|
obj.style = items;
|
|
obj.onPress = function onPress() {
|
|
(function handleDayToggle(closure_0) {
|
|
outer2_15((items) => {
|
|
const set = new Set(items);
|
|
if (set.has(closure_0)) {
|
|
set.delete(closure_0);
|
|
} else {
|
|
set.add(closure_0);
|
|
}
|
|
return set;
|
|
});
|
|
})(closure_0);
|
|
};
|
|
obj.accessibilityRole = "button";
|
|
obj.accessibilityState = { selected: hasItem };
|
|
obj.accessibilityLabel = dependencyMap[arg1];
|
|
obj = { variant: "text-sm/semibold" };
|
|
let str = "text-muted";
|
|
if (hasItem) {
|
|
str = "control-secondary-text-default";
|
|
}
|
|
obj.color = str;
|
|
obj.children = dependencyMap[arg1];
|
|
obj.children = closure_11(arg0(rule[14]).Text, obj);
|
|
return closure_11(first, obj, arg0);
|
|
});
|
|
items9[1] = callback2(closure_6, obj21);
|
|
let tmp78 = memo2.conflictingEntries.length > 0;
|
|
if (tmp78) {
|
|
const obj22 = { style: tmp.overlapWarningContent };
|
|
obj23 = { conflictingEntries: memo2.conflictingEntries };
|
|
obj22.children = callback2(closure_15, obj23);
|
|
tmp78 = callback2(closure_6, obj22);
|
|
}
|
|
items9[2] = tmp78;
|
|
obj17.children = items9;
|
|
items5[3] = first2(closure_6, obj17);
|
|
obj6.children = items5;
|
|
obj5.children = first2(closure_6, obj6);
|
|
const items10 = [callback2(closure_8, obj5), ];
|
|
let obj24 = { bottom: true };
|
|
let obj25 = { style: tmp.footer };
|
|
let stringResult = callback2;
|
|
let num15 = 28;
|
|
let Button = require(rule[28]).Button;
|
|
obj26 = {};
|
|
let intl9 = require(rule[15]).intl;
|
|
let intl10 = intl9.string;
|
|
const tmp91 = stackNavigation(rule[16]);
|
|
obj26.text = intl10(tmp6 ? tmp91.TDc9mW : tmp91.pvcruO);
|
|
obj26.onPress = function handleSubmit() {
|
|
return _handleSubmit(...arguments);
|
|
};
|
|
obj26.disabled = !str2;
|
|
obj26.loading = str;
|
|
obj26.variant = "primary";
|
|
str2 = "lg";
|
|
obj26.size = "lg";
|
|
obj26 = [, ];
|
|
obj26[0] = stringResult(Button, obj26);
|
|
Button = callback2;
|
|
intl9 = require;
|
|
const obj27 = {};
|
|
intl10 = require(rule[15]).intl;
|
|
stringResult = intl10.string(require(rule[15]).t["ETE/oC"]);
|
|
obj27.text = stringResult;
|
|
obj27.onPress = function onPress() {
|
|
return stackNavigation.goBack();
|
|
};
|
|
obj27.disabled = str;
|
|
str = "secondary";
|
|
obj27.variant = "secondary";
|
|
obj27.size = "lg";
|
|
num15 = callback2(require(rule[num15]).Button, obj27);
|
|
obj26[1] = num15;
|
|
obj25.children = obj26;
|
|
obj25 = first2(closure_6, obj25);
|
|
obj24.children = obj25;
|
|
obj24 = callback2(require(rule[27]).SafeAreaPaddingView, obj24);
|
|
items10[1] = obj24;
|
|
obj4.children = items10;
|
|
first2(closure_6, obj4);
|
|
const stringResultResult = stringResult(Button, obj26);
|
|
const tmp47 = first2;
|
|
const tmp49 = callback2;
|
|
const tmp50 = closure_8;
|
|
const tmp51 = first2;
|
|
const tmp63 = closure_6;
|
|
const tmp73 = first2;
|
|
const tmp83 = callback2;
|
|
const tmp86 = first2;
|
|
const tmp87 = closure_6;
|
|
}
|
|
};
|