{"version":3,"file":"js/6427-6b701acbc9699cef3b2d.js","mappings":"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","sources":["webpack://wooftech/./node_modules/fbjs/lib/emptyFunction.js","webpack://wooftech/./node_modules/fbjs/lib/invariant.js","webpack://wooftech/./node_modules/fbjs/lib/warning.js","webpack://wooftech/./node_modules/lodash/isFunction.js","webpack://wooftech/./node_modules/lodash/isPlainObject.js","webpack://wooftech/./node_modules/nullthrows/nullthrows.js","webpack://wooftech/./node_modules/@kaspernj/api-maker/src/models.mjs.erb","webpack://wooftech/./node_modules/react-dom/client.js","webpack://wooftech/./node_modules/react-dom/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/AccessibilityInfo/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/ActivityIndicator/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Alert/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/NativeAnimatedModule.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/NativeAnimatedHelper.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Utilities/Platform.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/ReactNative/ReactNativeFeatureFlags.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/TurboModule/TurboModuleRegistry.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedNode.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedWithChildren.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedInterpolation.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedValue.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/AnimatedEvent.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedTransform.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedStyle.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedProps.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/useAnimatedProps.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Utilities/useRefEffect.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/createAnimatedComponent.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Utilities/useMergeRefs.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/components/AnimatedFlatList.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/components/AnimatedImage.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/components/AnimatedScrollView.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/components/AnimatedSectionList.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/components/AnimatedText.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/components/AnimatedView.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedAddition.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedDiffClamp.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedDivision.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedModulo.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedMultiplication.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedSubtraction.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedTracking.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedValueXY.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/animations/Animation.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/animations/DecayAnimation.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/SpringConfig.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/animations/SpringAnimation.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/animations/TimingAnimation.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/nodes/AnimatedColor.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/AnimatedImplementation.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/AnimatedMock.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/Animated.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Animated/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/AppRegistry/AppContainer.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/AppRegistry/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/AppRegistry/renderApplication.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/AppState/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Appearance/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/BackHandler/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Button/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/CheckBox/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Clipboard/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/DeviceEventEmitter/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Dimensions/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/bezier.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Animated/Easing.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Easing/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/deepDiffer/index.js","webpack://wooftech/./node_modules/memoize-one/dist/memoize-one.esm.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/FlatList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/FlatList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/I18nManager/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/AssetRegistry/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/ImageLoader/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Image/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/ImageBackground/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/InteractionManager/TaskQueue.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/requestIdleCallback/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/InteractionManager/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Keyboard/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/KeyboardAvoidingView/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/LayoutAnimation/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/LayoutAnimation/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Linking/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/LogBox/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Modal/ModalPortal.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Modal/ModalAnimation.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Modal/ModalContent.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Modal/ModalFocusTrap.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Modal/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/NativeEventEmitter/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/NativeModules/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/TouchHistoryMath/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/PanResponder/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/PanResponder/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Picker/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Picker/PickerItem.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/PixelRatio/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/addEventListener/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/modality/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/useEvent/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/useHover/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Pressable/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/ProgressBar/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/RefreshControl/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/SafeAreaView/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/ScrollView/ScrollViewBase.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/ScrollView/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedSectionList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/SectionList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/SectionList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Share/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/StatusBar/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/StyleSheet/preprocess.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/multiplyStyleLengthValue/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Switch/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Text/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/TextInput/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/PooledClass/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Touchable/BoundingDimensions.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Touchable/Position.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Touchable/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/TouchableHighlight/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/TouchableNativeFeedback/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/TouchableOpacity/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/TouchableWithoutFeedback/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/Vibration/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/VirtualizedList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/YellowBox/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/findNodeHandle/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/render/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/unmountComponentAtNode/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/useColorScheme/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/useLocaleContext/index.js","webpack://wooftech/./node_modules/react-native-web/dist/exports/useWindowDimensions/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/TextInputState/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/UnimplementedView/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/dismissKeyboard/index.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/usePressEvents/PressResponder.js","webpack://wooftech/./node_modules/react-native-web/dist/modules/usePressEvents/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/EventEmitter/NativeEventEmitter.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/EventEmitter/RCTDeviceEventEmitter.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Utilities/clamp.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizeUtils/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/Batchinator/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/infoLog/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/CellRenderMask.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/ChildListCollection.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/FillRateHelper/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/StateSafePureComponent.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/ViewabilityHelper/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/VirtualizedListContext.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js","webpack://wooftech/./node_modules/react-native-web/dist/vendor/react-native/vendor/emitter/EventEmitter.js","webpack://wooftech/./node_modules/react/index.js","webpack://wooftech/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://wooftech/./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js","webpack://wooftech/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://wooftech/./node_modules/@kaspernj/api-maker/src/base-model/reflection.mjs","webpack://wooftech/./node_modules/@kaspernj/api-maker/src/collection.mjs","webpack://wooftech/./node_modules/@kaspernj/api-maker/node_modules/set-state-compare/src/diff-utils.js","webpack://wooftech/./node_modules/set-state-compare/src/use-shape.js"],"sourcesContent":["\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\n\n\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\n\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\n\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n'use strict';\n\nvar validateFormat = process.env.NODE_ENV !== \"production\" ? function (format) {\n if (format === undefined) {\n throw new Error('invariant(...): Second argument must be a string.');\n }\n} : function (format) {};\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments to provide\n * information about what broke and what you were expecting.\n *\n * The invariant message will be stripped in production, but the invariant will\n * remain to ensure logic does not differ in production.\n */\n\nfunction invariant(condition, format) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n validateFormat(format);\n\n if (!condition) {\n var error;\n\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return String(args[argIndex++]);\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // Skip invariant's own stack frame.\n\n throw error;\n }\n}\n\nmodule.exports = invariant;","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n'use strict';\n\nvar emptyFunction = require(\"./emptyFunction\");\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\n\nfunction printWarning(format) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n}\n\nvar warning = process.env.NODE_ENV !== \"production\" ? function (condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(void 0, [format].concat(args));\n }\n} : emptyFunction;\nmodule.exports = warning;","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","'use strict';\n\nfunction nullthrows(x, message) {\n if (x != null) {\n return x;\n }\n var error = new Error(message !== undefined ? message : 'Got unexpected ' + x);\n error.framesToPop = 1; // Skip nullthrows's own stack frame.\n throw error;\n}\n\nmodule.exports = nullthrows;\nmodule.exports.default = nullthrows;\n\nObject.defineProperty(module.exports, '__esModule', {value: true});\n","/* rails-erb-loader-dependencies api_maker/resources/ models/ */\n\nimport {digg} from \"diggerize\"\nimport ModelRecipesLoader from \"./model-recipes-loader.mjs\"\n\nconst modelRecipes = {\"models\":{\"Account\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{\"create_new\":{\"name\":\"create_new\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"Account\",\"collectionKey\":\"accounts\",\"collectionName\":\"accounts\",\"i18nKey\":\"account\",\"camelizedLower\":\"account\",\"name\":\"Account\",\"nameDasherized\":\"account\",\"pluralName\":\"accounts\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"AccountSchool\",\"collectionName\":\"account_schools\",\"foreignKey\":\"account_id\",\"name\":\"account_schools\",\"macro\":\"has_many\",\"resource_name\":\"AccountSchool\",\"through\":null},{\"className\":\"AccountUser\",\"collectionName\":\"account_users\",\"foreignKey\":\"account_id\",\"name\":\"account_users\",\"macro\":\"has_many\",\"resource_name\":\"AccountUser\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"account_id\",\"name\":\"schools\",\"macro\":\"has_many\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"users\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":\"account_users\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"name\",\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"AccountUser\",\"collectionName\":\"account_users\",\"foreignKey\":\"account_id\",\"name\":\"account_users\",\"macro\":\"has_many\",\"resource_name\":\"AccountUser\",\"through\":null}],\"paramKey\":\"account\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"account_users\":{\"active_record\":{\"name\":\"Account\",\"primary_key\":\"id\"},\"class_name\":\"AccountUser\",\"foreign_key\":\"account_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"AccountUser\",\"type\":\"has_many\"}}},\"AccountSchool\":{\"attributes\":{\"account_id\":{\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":false,\"type\":null},\"name\":\"account_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"school_id\":{\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null},\"name\":\"school_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"account_id\":{\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":false,\"type\":null},\"name\":\"account_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"school_id\":{\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null},\"name\":\"school_id\",\"selected_by_default\":null}},\"className\":\"AccountSchool\",\"collectionKey\":\"account_schools\",\"collectionName\":\"account_schools\",\"i18nKey\":\"account_school\",\"camelizedLower\":\"accountSchool\",\"name\":\"AccountSchool\",\"nameDasherized\":\"account-school\",\"pluralName\":\"account_schools\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"account\",\"macro\":\"belongs_to\",\"resource_name\":\"Account\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"account_id\",\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":false,\"type\":null}},{\"name\":\"school_id\",\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"account\",\"macro\":\"belongs_to\",\"resource_name\":\"Account\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null}],\"paramKey\":\"account_school\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"account\":{\"active_record\":{\"name\":\"AccountSchool\",\"primary_key\":\"id\"},\"class_name\":\"Account\",\"foreign_key\":\"account_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Account\",\"type\":\"belongs_to\"},\"create_audit\":{\"active_record\":{\"name\":\"AccountSchool\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"auditable_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"auditable\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_one\"},\"school\":{\"active_record\":{\"name\":\"AccountSchool\",\"primary_key\":\"id\"},\"class_name\":\"School\",\"foreign_key\":\"school_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"School\",\"type\":\"belongs_to\"}}},\"AccountUser\":{\"attributes\":{\"account_id\":{\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":false,\"type\":null},\"name\":\"account_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role\":{\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"},\"name\":\"role\",\"selected_by_default\":null},\"translated_role\":{\"column\":null,\"name\":\"translated_role\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"account_id\":{\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":false,\"type\":null},\"name\":\"account_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role\":{\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"},\"name\":\"role\",\"selected_by_default\":null},\"translated_role\":{\"column\":null,\"name\":\"translated_role\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"AccountUser\",\"collectionKey\":\"account_users\",\"collectionName\":\"account_users\",\"i18nKey\":\"account_user\",\"camelizedLower\":\"accountUser\",\"name\":\"AccountUser\",\"nameDasherized\":\"account-user\",\"pluralName\":\"account_users\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"account\",\"macro\":\"belongs_to\",\"resource_name\":\"Account\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"account_id\",\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"role\",\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"account\",\"macro\":\"belongs_to\",\"resource_name\":\"Account\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"account_user\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"account\":{\"active_record\":{\"name\":\"AccountUser\",\"primary_key\":\"id\"},\"class_name\":\"Account\",\"foreign_key\":\"account_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Account\",\"type\":\"belongs_to\"},\"create_audit\":{\"active_record\":{\"name\":\"AccountUser\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"auditable_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"auditable\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_one\"},\"user\":{\"active_record\":{\"name\":\"AccountUser\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"AuditAction\":{\"attributes\":{\"action\":{\"column\":{\"default\":null,\"name\":\"action\",\"null\":false,\"type\":\"string\"},\"name\":\"action\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"action\":{\"column\":{\"default\":null,\"name\":\"action\",\"null\":false,\"type\":\"string\"},\"name\":\"action\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"ActiveRecordAuditable::AuditAction\",\"collectionKey\":\"active_record_auditable/audit_actions\",\"collectionName\":\"audit_actions\",\"i18nKey\":\"active_record_auditable/audit_action\",\"camelizedLower\":\"activeRecordAuditable::AuditAction\",\"name\":\"AuditAction\",\"nameDasherized\":\"audit-action\",\"pluralName\":\"active_record_auditable_audit_actions\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"audit_action_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"action\",\"column\":{\"default\":null,\"name\":\"action\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"audit_action_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null}],\"paramKey\":\"audit_action\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"audits\":{\"active_record\":{\"name\":\"ActiveRecordAuditable::AuditAction\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"audit_action_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_many\"}}},\"AuditAuditableType\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"ActiveRecordAuditable::AuditAuditableType\",\"collectionKey\":\"active_record_auditable/audit_auditable_types\",\"collectionName\":\"audit_auditable_types\",\"i18nKey\":\"active_record_auditable/audit_auditable_type\",\"camelizedLower\":\"activeRecordAuditable::AuditAuditableType\",\"name\":\"AuditAuditableType\",\"nameDasherized\":\"audit-auditable-type\",\"pluralName\":\"active_record_auditable_audit_auditable_types\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"audit_auditable_type_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"name\",\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"audit_auditable_type_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null}],\"paramKey\":\"audit_auditable_type\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"audits\":{\"active_record\":{\"name\":\"ActiveRecordAuditable::AuditAuditableType\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"audit_auditable_type_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_many\"}}},\"Audit\":{\"attributes\":{\"auditable_id\":{\"column\":{\"default\":null,\"name\":\"auditable_id\",\"null\":false,\"type\":null},\"name\":\"auditable_id\",\"selected_by_default\":null},\"auditable_type\":{\"column\":{\"default\":null,\"name\":\"auditable_type\",\"null\":false,\"type\":\"string\"},\"name\":\"auditable_type\",\"selected_by_default\":null},\"audited_changes\":{\"column\":{\"default\":null,\"name\":\"audited_changes\",\"null\":true,\"type\":\"text\"},\"name\":\"audited_changes\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":true,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null},\"auditable\":{\"column\":null,\"name\":\"auditable\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"auditable_id\":{\"column\":{\"default\":null,\"name\":\"auditable_id\",\"null\":false,\"type\":null},\"name\":\"auditable_id\",\"selected_by_default\":null},\"auditable_type\":{\"column\":{\"default\":null,\"name\":\"auditable_type\",\"null\":false,\"type\":\"string\"},\"name\":\"auditable_type\",\"selected_by_default\":null},\"audited_changes\":{\"column\":{\"default\":null,\"name\":\"audited_changes\",\"null\":true,\"type\":\"text\"},\"name\":\"audited_changes\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":true,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null},\"auditable\":{\"column\":null,\"name\":\"auditable\",\"selected_by_default\":false}},\"className\":\"ActiveRecordAuditable::Audit\",\"collectionKey\":\"active_record_auditable/audits\",\"collectionName\":\"audits\",\"i18nKey\":\"active_record_auditable/audit\",\"camelizedLower\":\"activeRecordAuditable::Audit\",\"name\":\"Audit\",\"nameDasherized\":\"audit\",\"pluralName\":\"active_record_auditable_audits\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::AuditAction\",\"collectionName\":\"audit_actions\",\"foreignKey\":\"audit_action_id\",\"name\":\"audit_action\",\"macro\":\"belongs_to\",\"resource_name\":\"AuditAction\",\"through\":null},{\"className\":\"ActiveRecordAuditable::AuditAuditableType\",\"collectionName\":\"audit_auditable_types\",\"foreignKey\":\"audit_auditable_type_id\",\"name\":\"audit_auditable_type\",\"macro\":\"belongs_to\",\"resource_name\":\"AuditAuditableType\",\"through\":null},{\"className\":\"Auditable\",\"collectionName\":null,\"foreignKey\":\"auditable_id\",\"name\":\"auditable\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"auditable_type\",\"column\":{\"default\":null,\"name\":\"auditable_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"auditable_id\",\"column\":{\"default\":null,\"name\":\"auditable_id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":true,\"type\":null}},{\"name\":\"audited_changes\",\"column\":{\"default\":null,\"name\":\"audited_changes\",\"null\":true,\"type\":\"text\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"school_id\",\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":true,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":true,\"type\":null}},{\"name\":\"extra_liquid_variables\",\"column\":{\"default\":null,\"name\":\"extra_liquid_variables\",\"null\":true,\"type\":\"text\"}},{\"name\":\"audit_action_id\",\"column\":{\"default\":null,\"name\":\"audit_action_id\",\"null\":false,\"type\":null}},{\"name\":\"audit_auditable_type_id\",\"column\":{\"default\":null,\"name\":\"audit_auditable_type_id\",\"null\":true,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ActiveRecordAuditable::AuditAction\",\"collectionName\":\"audit_actions\",\"foreignKey\":\"audit_action_id\",\"name\":\"audit_action\",\"macro\":\"belongs_to\",\"resource_name\":\"AuditAction\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"audit\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"audit_action\":{\"active_record\":{\"name\":\"ActiveRecordAuditable::Audit\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::AuditAction\",\"foreign_key\":\"audit_action_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"AuditAction\",\"type\":\"belongs_to\"},\"school\":{\"active_record\":{\"name\":\"ActiveRecordAuditable::Audit\",\"primary_key\":\"id\"},\"class_name\":\"School\",\"foreign_key\":\"school_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"School\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"ActiveRecordAuditable::Audit\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"},\"user\":{\"active_record\":{\"name\":\"ActiveRecordAuditable::Audit\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"BrainBreakClassStep\":{\"attributes\":{\"brain_break_id\":{\"column\":{\"default\":null,\"name\":\"brain_break_id\",\"null\":false,\"type\":null},\"name\":\"brain_break_id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"brain_break_id\":{\"column\":{\"default\":null,\"name\":\"brain_break_id\",\"null\":false,\"type\":null},\"name\":\"brain_break_id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"BrainBreakClassStep\",\"collectionKey\":\"brain_break_class_steps\",\"collectionName\":\"brain_break_class_steps\",\"i18nKey\":\"brain_break_class_step\",\"camelizedLower\":\"brainBreakClassStep\",\"name\":\"BrainBreakClassStep\",\"nameDasherized\":\"brain-break-class-step\",\"pluralName\":\"brain_break_class_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"BrainBreak\",\"collectionName\":\"brain_breaks\",\"foreignKey\":\"brain_break_id\",\"name\":\"brain_break\",\"macro\":\"belongs_to\",\"resource_name\":\"BrainBreak\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"brain_break_id\",\"column\":{\"default\":null,\"name\":\"brain_break_id\",\"null\":false,\"type\":null}},{\"name\":\"class_step_id\",\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"BrainBreak\",\"collectionName\":\"brain_breaks\",\"foreignKey\":\"brain_break_id\",\"name\":\"brain_break\",\"macro\":\"belongs_to\",\"resource_name\":\"BrainBreak\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"paramKey\":\"brain_break_class_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"brain_break\":{\"active_record\":{\"name\":\"BrainBreakClassStep\",\"primary_key\":\"id\"},\"class_name\":\"BrainBreak\",\"foreign_key\":\"brain_break_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"BrainBreak\",\"type\":\"belongs_to\"},\"class_step\":{\"active_record\":{\"name\":\"BrainBreakClassStep\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ClassStep\",\"type\":\"belongs_to\"}}},\"BrainBreak\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"BrainBreak\",\"collectionKey\":\"brain_breaks\",\"collectionName\":\"brain_breaks\",\"i18nKey\":\"brain_break\",\"camelizedLower\":\"brainBreak\",\"name\":\"BrainBreak\",\"nameDasherized\":\"brain-break\",\"pluralName\":\"brain_breaks\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"BrainBreak::Translation\",\"collectionName\":null,\"foreignKey\":\"brain_break_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"BrainBreak::Translation\",\"collectionName\":null,\"foreignKey\":\"brain_break_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"BrainBreakClassStep\",\"collectionName\":\"brain_break_class_steps\",\"foreignKey\":\"brain_break_id\",\"name\":\"brain_break_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"BrainBreakClassStep\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"brain_break_class_steps\"},{\"className\":\"SchoolClassBrainBreak\",\"collectionName\":\"school_class_brain_breaks\",\"foreignKey\":\"brain_break_id\",\"name\":\"school_class_brain_breaks\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassBrainBreak\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_id\",\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null}},{\"name\":\"public\",\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"BrainBreakClassStep\",\"collectionName\":\"brain_break_class_steps\",\"foreignKey\":\"brain_break_id\",\"name\":\"brain_break_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"BrainBreakClassStep\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null}],\"paramKey\":\"brain_break\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"brain_break_class_steps\":{\"active_record\":{\"name\":\"BrainBreak\",\"primary_key\":\"id\"},\"class_name\":\"BrainBreakClassStep\",\"foreign_key\":\"brain_break_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"BrainBreakClassStep\",\"type\":\"has_many\"},\"survey\":{\"active_record\":{\"name\":\"BrainBreak\",\"primary_key\":\"id\"},\"class_name\":\"Survey\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Survey\",\"type\":\"belongs_to\"}}},\"ChallengeClassStep\":{\"attributes\":{\"challenge_id\":{\"column\":{\"default\":null,\"name\":\"challenge_id\",\"null\":false,\"type\":null},\"name\":\"challenge_id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"challenge_id\":{\"column\":{\"default\":null,\"name\":\"challenge_id\",\"null\":false,\"type\":null},\"name\":\"challenge_id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"ChallengeClassStep\",\"collectionKey\":\"challenge_class_steps\",\"collectionName\":\"challenge_class_steps\",\"i18nKey\":\"challenge_class_step\",\"camelizedLower\":\"challengeClassStep\",\"name\":\"ChallengeClassStep\",\"nameDasherized\":\"challenge-class-step\",\"pluralName\":\"challenge_class_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Challenge\",\"collectionName\":\"challenges\",\"foreignKey\":\"challenge_id\",\"name\":\"challenge\",\"macro\":\"belongs_to\",\"resource_name\":\"Challenge\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"challenge_id\",\"column\":{\"default\":null,\"name\":\"challenge_id\",\"null\":false,\"type\":null}},{\"name\":\"class_step_id\",\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Challenge\",\"collectionName\":\"challenges\",\"foreignKey\":\"challenge_id\",\"name\":\"challenge\",\"macro\":\"belongs_to\",\"resource_name\":\"Challenge\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"paramKey\":\"challenge_class_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"challenge\":{\"active_record\":{\"name\":\"ChallengeClassStep\",\"primary_key\":\"id\"},\"class_name\":\"Challenge\",\"foreign_key\":\"challenge_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Challenge\",\"type\":\"belongs_to\"},\"class_step\":{\"active_record\":{\"name\":\"ChallengeClassStep\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ClassStep\",\"type\":\"belongs_to\"}}},\"Challenge\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Challenge\",\"collectionKey\":\"challenges\",\"collectionName\":\"challenges\",\"i18nKey\":\"challenge\",\"camelizedLower\":\"challenge\",\"name\":\"Challenge\",\"nameDasherized\":\"challenge\",\"pluralName\":\"challenges\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Challenge::Translation\",\"collectionName\":null,\"foreignKey\":\"challenge_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Challenge::Translation\",\"collectionName\":null,\"foreignKey\":\"challenge_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"ChallengeClassStep\",\"collectionName\":\"challenge_class_steps\",\"foreignKey\":\"challenge_id\",\"name\":\"challenge_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ChallengeClassStep\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"challenge_class_steps\"},{\"className\":\"SchoolClassChallenge\",\"collectionName\":\"school_class_challenges\",\"foreignKey\":\"challenge_id\",\"name\":\"school_class_challenges\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassChallenge\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_id\",\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"public\",\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ChallengeClassStep\",\"collectionName\":\"challenge_class_steps\",\"foreignKey\":\"challenge_id\",\"name\":\"challenge_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ChallengeClassStep\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null}],\"paramKey\":\"challenge\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"challenge_class_steps\":{\"active_record\":{\"name\":\"Challenge\",\"primary_key\":\"id\"},\"class_name\":\"ChallengeClassStep\",\"foreign_key\":\"challenge_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ChallengeClassStep\",\"type\":\"has_many\"},\"survey\":{\"active_record\":{\"name\":\"Challenge\",\"primary_key\":\"id\"},\"class_name\":\"Survey\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Survey\",\"type\":\"belongs_to\"}}},\"CheckInClassStep\":{\"attributes\":{\"check_in_id\":{\"column\":{\"default\":null,\"name\":\"check_in_id\",\"null\":false,\"type\":null},\"name\":\"check_in_id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"check_in_id\":{\"column\":{\"default\":null,\"name\":\"check_in_id\",\"null\":false,\"type\":null},\"name\":\"check_in_id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"CheckInClassStep\",\"collectionKey\":\"check_in_class_steps\",\"collectionName\":\"check_in_class_steps\",\"i18nKey\":\"check_in_class_step\",\"camelizedLower\":\"checkInClassStep\",\"name\":\"CheckInClassStep\",\"nameDasherized\":\"check-in-class-step\",\"pluralName\":\"check_in_class_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"CheckIn\",\"collectionName\":\"check_ins\",\"foreignKey\":\"check_in_id\",\"name\":\"check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"CheckIn\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"check_in_id\",\"column\":{\"default\":null,\"name\":\"check_in_id\",\"null\":false,\"type\":null}},{\"name\":\"class_step_id\",\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"CheckIn\",\"collectionName\":\"check_ins\",\"foreignKey\":\"check_in_id\",\"name\":\"check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"CheckIn\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"paramKey\":\"check_in_class_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"check_in\":{\"active_record\":{\"name\":\"CheckInClassStep\",\"primary_key\":\"id\"},\"class_name\":\"CheckIn\",\"foreign_key\":\"check_in_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CheckIn\",\"type\":\"belongs_to\"},\"class_step\":{\"active_record\":{\"name\":\"CheckInClassStep\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ClassStep\",\"type\":\"belongs_to\"}}},\"CheckIn\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"CheckIn\",\"collectionKey\":\"check_ins\",\"collectionName\":\"check_ins\",\"i18nKey\":\"check_in\",\"camelizedLower\":\"checkIn\",\"name\":\"CheckIn\",\"nameDasherized\":\"check-in\",\"pluralName\":\"check_ins\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"CheckIn::Translation\",\"collectionName\":null,\"foreignKey\":\"check_in_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"CheckIn::Translation\",\"collectionName\":null,\"foreignKey\":\"check_in_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"CheckInClassStep\",\"collectionName\":\"check_in_class_steps\",\"foreignKey\":\"check_in_id\",\"name\":\"check_in_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"CheckInClassStep\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"check_in_class_steps\"},{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"check_in_id\",\"name\":\"school_class_check_ins\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_id\",\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null}},{\"name\":\"public\",\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"CheckInClassStep\",\"collectionName\":\"check_in_class_steps\",\"foreignKey\":\"check_in_id\",\"name\":\"check_in_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"CheckInClassStep\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null}],\"paramKey\":\"check_in\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"check_in_class_steps\":{\"active_record\":{\"name\":\"CheckIn\",\"primary_key\":\"id\"},\"class_name\":\"CheckInClassStep\",\"foreign_key\":\"check_in_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CheckInClassStep\",\"type\":\"has_many\"},\"create_audit\":{\"active_record\":{\"name\":\"CheckIn\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"auditable_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"auditable\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_one\"},\"survey\":{\"active_record\":{\"name\":\"CheckIn\",\"primary_key\":\"id\"},\"class_name\":\"Survey\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Survey\",\"type\":\"belongs_to\"}}},\"ClassStatusExpansion\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"expanded\":{\"column\":{\"default\":\"0\",\"name\":\"expanded\",\"null\":false,\"type\":\"boolean\"},\"name\":\"expanded\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"expanded\":{\"column\":{\"default\":\"0\",\"name\":\"expanded\",\"null\":false,\"type\":\"boolean\"},\"name\":\"expanded\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"ClassStatusExpansion\",\"collectionKey\":\"class_status_expansions\",\"collectionName\":\"class_status_expansions\",\"i18nKey\":\"class_status_expansion\",\"camelizedLower\":\"classStatusExpansion\",\"name\":\"ClassStatusExpansion\",\"nameDasherized\":\"class-status-expansion\",\"pluralName\":\"class_status_expansions\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"expanded\",\"column\":{\"default\":\"0\",\"name\":\"expanded\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"class_status_expansion\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"user\":{\"active_record\":{\"name\":\"ClassStatusExpansion\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"ClassStep\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"primary_school_step\":{\"column\":{\"default\":null,\"name\":\"primary_school_step\",\"null\":true,\"type\":\"integer\"},\"name\":\"primary_school_step\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"primary_school_step\":{\"column\":{\"default\":null,\"name\":\"primary_school_step\",\"null\":true,\"type\":\"integer\"},\"name\":\"primary_school_step\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"ClassStep\",\"collectionKey\":\"class_steps\",\"collectionName\":\"class_steps\",\"i18nKey\":\"class_step\",\"camelizedLower\":\"classStep\",\"name\":\"ClassStep\",\"nameDasherized\":\"class-step\",\"pluralName\":\"class_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ClassStep::Translation\",\"collectionName\":null,\"foreignKey\":\"class_step_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"ClassStep::Translation\",\"collectionName\":null,\"foreignKey\":\"class_step_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"BrainBreakClassStep\",\"collectionName\":\"brain_break_class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"brain_break_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"BrainBreakClassStep\",\"through\":null},{\"className\":\"ChallengeClassStep\",\"collectionName\":\"challenge_class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"challenge_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ChallengeClassStep\",\"through\":null},{\"className\":\"CheckInClassStep\",\"collectionName\":\"check_in_class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"check_in_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"CheckInClassStep\",\"through\":null},{\"className\":\"CourseClassStep\",\"collectionName\":\"course_class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"course_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"CourseClassStep\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"class_step_id\",\"name\":\"school_classes\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"SchoolClassGroupClassStep\",\"collectionName\":\"school_class_group_class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"school_class_group_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassGroupClassStep\",\"through\":null},{\"className\":\"SchoolClassGroup\",\"collectionName\":\"school_class_groups\",\"foreignKey\":\"school_class_group_id\",\"name\":\"school_class_groups\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassGroup\",\"through\":\"school_class_group_class_steps\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"primary_school_step\",\"column\":{\"default\":null,\"name\":\"primary_school_step\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"position\",\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"class_step_id\",\"name\":\"school_classes\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"paramKey\":\"class_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"school_classes\":{\"active_record\":{\"name\":\"ClassStep\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"has_many\"}}},\"ContentAbsoluteContainer\":{\"attributes\":{\"body\":{\"column\":{\"default\":null,\"name\":\"body\",\"null\":true,\"type\":\"text\"},\"name\":\"body\",\"selected_by_default\":null},\"content_id\":{\"column\":{\"default\":null,\"name\":\"content_id\",\"null\":true,\"type\":null},\"name\":\"content_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"height_pixels\":{\"column\":{\"default\":null,\"name\":\"height_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"height_pixels\",\"selected_by_default\":null},\"height_percent\":{\"column\":{\"default\":null,\"name\":\"height_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"height_percent\",\"selected_by_default\":null},\"horizontal_align\":{\"column\":{\"default\":null,\"name\":\"horizontal_align\",\"null\":true,\"type\":\"string\"},\"name\":\"horizontal_align\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"left_pixels\":{\"column\":{\"default\":null,\"name\":\"left_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"left_pixels\",\"selected_by_default\":null},\"left_percent\":{\"column\":{\"default\":null,\"name\":\"left_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"left_percent\",\"selected_by_default\":null},\"parent_id\":{\"column\":{\"default\":null,\"name\":\"parent_id\",\"null\":true,\"type\":null},\"name\":\"parent_id\",\"selected_by_default\":null},\"responsive\":{\"column\":{\"default\":\"0\",\"name\":\"responsive\",\"null\":false,\"type\":\"boolean\"},\"name\":\"responsive\",\"selected_by_default\":null},\"styling_id\":{\"column\":{\"default\":null,\"name\":\"styling_id\",\"null\":true,\"type\":null},\"name\":\"styling_id\",\"selected_by_default\":null},\"top_pixels\":{\"column\":{\"default\":null,\"name\":\"top_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"top_pixels\",\"selected_by_default\":null},\"top_percent\":{\"column\":{\"default\":null,\"name\":\"top_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"top_percent\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"vertical_align\":{\"column\":{\"default\":null,\"name\":\"vertical_align\",\"null\":true,\"type\":\"string\"},\"name\":\"vertical_align\",\"selected_by_default\":null},\"width_pixels\":{\"column\":{\"default\":null,\"name\":\"width_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"width_pixels\",\"selected_by_default\":null},\"width_percent\":{\"column\":{\"default\":null,\"name\":\"width_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"width_percent\",\"selected_by_default\":null},\"background_image\":{\"column\":null,\"name\":\"background_image\",\"selected_by_default\":false},\"background_image_url\":{\"column\":null,\"name\":\"background_image_url\",\"selected_by_default\":false},\"parsed_body\":{\"column\":null,\"name\":\"parsed_body\",\"selected_by_default\":false}},\"collection_commands\":{\"nested_set\":{\"name\":\"nested_set\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"body\":{\"column\":{\"default\":null,\"name\":\"body\",\"null\":true,\"type\":\"text\"},\"name\":\"body\",\"selected_by_default\":null},\"content_id\":{\"column\":{\"default\":null,\"name\":\"content_id\",\"null\":true,\"type\":null},\"name\":\"content_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"height_pixels\":{\"column\":{\"default\":null,\"name\":\"height_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"height_pixels\",\"selected_by_default\":null},\"height_percent\":{\"column\":{\"default\":null,\"name\":\"height_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"height_percent\",\"selected_by_default\":null},\"horizontal_align\":{\"column\":{\"default\":null,\"name\":\"horizontal_align\",\"null\":true,\"type\":\"string\"},\"name\":\"horizontal_align\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"left_pixels\":{\"column\":{\"default\":null,\"name\":\"left_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"left_pixels\",\"selected_by_default\":null},\"left_percent\":{\"column\":{\"default\":null,\"name\":\"left_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"left_percent\",\"selected_by_default\":null},\"parent_id\":{\"column\":{\"default\":null,\"name\":\"parent_id\",\"null\":true,\"type\":null},\"name\":\"parent_id\",\"selected_by_default\":null},\"responsive\":{\"column\":{\"default\":\"0\",\"name\":\"responsive\",\"null\":false,\"type\":\"boolean\"},\"name\":\"responsive\",\"selected_by_default\":null},\"styling_id\":{\"column\":{\"default\":null,\"name\":\"styling_id\",\"null\":true,\"type\":null},\"name\":\"styling_id\",\"selected_by_default\":null},\"top_pixels\":{\"column\":{\"default\":null,\"name\":\"top_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"top_pixels\",\"selected_by_default\":null},\"top_percent\":{\"column\":{\"default\":null,\"name\":\"top_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"top_percent\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"vertical_align\":{\"column\":{\"default\":null,\"name\":\"vertical_align\",\"null\":true,\"type\":\"string\"},\"name\":\"vertical_align\",\"selected_by_default\":null},\"width_pixels\":{\"column\":{\"default\":null,\"name\":\"width_pixels\",\"null\":false,\"type\":\"decimal\"},\"name\":\"width_pixels\",\"selected_by_default\":null},\"width_percent\":{\"column\":{\"default\":null,\"name\":\"width_percent\",\"null\":false,\"type\":\"decimal\"},\"name\":\"width_percent\",\"selected_by_default\":null},\"background_image\":{\"column\":null,\"name\":\"background_image\",\"selected_by_default\":false},\"background_image_url\":{\"column\":null,\"name\":\"background_image_url\",\"selected_by_default\":false},\"parsed_body\":{\"column\":null,\"name\":\"parsed_body\",\"selected_by_default\":false}},\"className\":\"ContentAbsoluteContainer\",\"collectionKey\":\"content_absolute_containers\",\"collectionName\":\"content_absolute_containers\",\"i18nKey\":\"content_absolute_container\",\"camelizedLower\":\"contentAbsoluteContainer\",\"name\":\"ContentAbsoluteContainer\",\"nameDasherized\":\"content-absolute-container\",\"pluralName\":\"content_absolute_containers\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ContentAbsoluteContainer\",\"collectionName\":\"content_absolute_containers\",\"foreignKey\":\"parent_id\",\"name\":\"parent\",\"macro\":\"belongs_to\",\"resource_name\":\"ContentAbsoluteContainer\",\"through\":null},{\"className\":\"ContentAbsoluteContainer\",\"collectionName\":\"content_absolute_containers\",\"foreignKey\":\"parent_id\",\"name\":\"children\",\"macro\":\"has_many\",\"resource_name\":\"ContentAbsoluteContainer\",\"through\":null},{\"className\":\"Styling\",\"collectionName\":\"stylings\",\"foreignKey\":\"styling_id\",\"name\":\"styling\",\"macro\":\"belongs_to\",\"resource_name\":\"Styling\",\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"content_id\",\"name\":\"content\",\"macro\":\"belongs_to\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"TextKey\",\"collectionName\":\"text_keys\",\"foreignKey\":\"resource_id\",\"name\":\"text_keys\",\"macro\":\"has_many\",\"resource_name\":\"TextKey\",\"through\":null},{\"className\":\"ActiveStorage::Attachment\",\"collectionName\":null,\"foreignKey\":\"record_id\",\"name\":\"background_image_attachment\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ActiveStorage::Blob\",\"collectionName\":null,\"foreignKey\":\"blob_id\",\"name\":\"background_image_blob\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":\"background_image_attachment\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"content_id\",\"column\":{\"default\":null,\"name\":\"content_id\",\"null\":true,\"type\":null}},{\"name\":\"width_pixels\",\"column\":{\"default\":null,\"name\":\"width_pixels\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"height_pixels\",\"column\":{\"default\":null,\"name\":\"height_pixels\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"top_pixels\",\"column\":{\"default\":null,\"name\":\"top_pixels\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"left_pixels\",\"column\":{\"default\":null,\"name\":\"left_pixels\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"body\",\"column\":{\"default\":null,\"name\":\"body\",\"null\":true,\"type\":\"text\"}},{\"name\":\"width_percent\",\"column\":{\"default\":null,\"name\":\"width_percent\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"height_percent\",\"column\":{\"default\":null,\"name\":\"height_percent\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"top_percent\",\"column\":{\"default\":null,\"name\":\"top_percent\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"left_percent\",\"column\":{\"default\":null,\"name\":\"left_percent\",\"null\":false,\"type\":\"decimal\"}},{\"name\":\"parent_id\",\"column\":{\"default\":null,\"name\":\"parent_id\",\"null\":true,\"type\":null}},{\"name\":\"lft\",\"column\":{\"default\":null,\"name\":\"lft\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"rgt\",\"column\":{\"default\":null,\"name\":\"rgt\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"depth\",\"column\":{\"default\":\"0\",\"name\":\"depth\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"children_count\",\"column\":{\"default\":\"0\",\"name\":\"children_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"responsive\",\"column\":{\"default\":\"0\",\"name\":\"responsive\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"styling_id\",\"column\":{\"default\":null,\"name\":\"styling_id\",\"null\":true,\"type\":null}},{\"name\":\"vertical_align\",\"column\":{\"default\":null,\"name\":\"vertical_align\",\"null\":true,\"type\":\"string\"}},{\"name\":\"horizontal_align\",\"column\":{\"default\":null,\"name\":\"horizontal_align\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Styling\",\"collectionName\":\"stylings\",\"foreignKey\":\"styling_id\",\"name\":\"styling\",\"macro\":\"belongs_to\",\"resource_name\":\"Styling\",\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"content_id\",\"name\":\"content\",\"macro\":\"belongs_to\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"TextKey\",\"collectionName\":\"text_keys\",\"foreignKey\":\"resource_id\",\"name\":\"text_keys\",\"macro\":\"has_many\",\"resource_name\":\"TextKey\",\"through\":null}],\"paramKey\":\"content_absolute_container\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"styling\":{\"active_record\":{\"name\":\"ContentAbsoluteContainer\",\"primary_key\":\"id\"},\"class_name\":\"Styling\",\"foreign_key\":\"styling_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Styling\",\"type\":\"belongs_to\"},\"content\":{\"active_record\":{\"name\":\"ContentAbsoluteContainer\",\"primary_key\":\"id\"},\"class_name\":\"Content\",\"foreign_key\":\"content_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Content\",\"type\":\"belongs_to\"},\"text_keys\":{\"active_record\":{\"name\":\"ContentAbsoluteContainer\",\"primary_key\":\"id\"},\"class_name\":\"TextKey\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"resource\",\"primary_key\":null,\"through\":null},\"resource_name\":\"TextKey\",\"type\":\"has_many\"}}},\"ContentPieceType\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"icon\":{\"column\":{\"default\":null,\"name\":\"icon\",\"null\":true,\"type\":\"string\"},\"name\":\"icon\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"show_on_digital_class_room\":{\"column\":{\"default\":\"0\",\"name\":\"show_on_digital_class_room\",\"null\":false,\"type\":\"boolean\"},\"name\":\"show_on_digital_class_room\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"icon\":{\"column\":{\"default\":null,\"name\":\"icon\",\"null\":true,\"type\":\"string\"},\"name\":\"icon\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"show_on_digital_class_room\":{\"column\":{\"default\":\"0\",\"name\":\"show_on_digital_class_room\",\"null\":false,\"type\":\"boolean\"},\"name\":\"show_on_digital_class_room\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"ContentPieceType\",\"collectionKey\":\"content_piece_types\",\"collectionName\":\"content_piece_types\",\"i18nKey\":\"content_piece_type\",\"camelizedLower\":\"contentPieceType\",\"name\":\"ContentPieceType\",\"nameDasherized\":\"content-piece-type\",\"pluralName\":\"content_piece_types\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ContentPieceType::Translation\",\"collectionName\":null,\"foreignKey\":\"content_piece_type_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"ContentPieceType::Translation\",\"collectionName\":null,\"foreignKey\":\"content_piece_type_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"SchoolClassContentPiece\",\"collectionName\":\"school_class_content_pieces\",\"foreignKey\":\"content_piece_type_id\",\"name\":\"school_class_content_pieces\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassContentPiece\",\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"content_piece_type_id\",\"name\":\"survey_step_elements\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElement\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"show_on_digital_class_room\",\"column\":{\"default\":\"0\",\"name\":\"show_on_digital_class_room\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"icon\",\"column\":{\"default\":null,\"name\":\"icon\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"content_piece_type\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"Content\":{\"attributes\":{\"attribute_name\":{\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":false,\"type\":\"string\"},\"name\":\"attribute_name\",\"selected_by_default\":null},\"body\":{\"column\":{\"default\":null,\"name\":\"body\",\"null\":true,\"type\":\"text\"},\"name\":\"body\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"attribute_name\":{\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":false,\"type\":\"string\"},\"name\":\"attribute_name\",\"selected_by_default\":null},\"body\":{\"column\":{\"default\":null,\"name\":\"body\",\"null\":true,\"type\":\"text\"},\"name\":\"body\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false}},\"className\":\"Content\",\"collectionKey\":\"contents\",\"collectionName\":\"contents\",\"i18nKey\":\"content\",\"camelizedLower\":\"content\",\"name\":\"Content\",\"nameDasherized\":\"content\",\"pluralName\":\"contents\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"resource_id\",\"name\":\"survey_step_element\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"ContentAbsoluteContainer\",\"collectionName\":\"content_absolute_containers\",\"foreignKey\":\"content_id\",\"name\":\"absolute_containers\",\"macro\":\"has_many\",\"resource_name\":\"ContentAbsoluteContainer\",\"through\":null},{\"className\":\"TextKey\",\"collectionName\":\"text_keys\",\"foreignKey\":\"resource_id\",\"name\":\"text_keys\",\"macro\":\"has_many\",\"resource_name\":\"TextKey\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"attribute_name\",\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"body\",\"column\":{\"default\":null,\"name\":\"body\",\"null\":true,\"type\":\"text\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ContentAbsoluteContainer\",\"collectionName\":\"content_absolute_containers\",\"foreignKey\":\"content_id\",\"name\":\"absolute_containers\",\"macro\":\"has_many\",\"resource_name\":\"ContentAbsoluteContainer\",\"through\":null},{\"className\":\"TextKey\",\"collectionName\":\"text_keys\",\"foreignKey\":\"resource_id\",\"name\":\"text_keys\",\"macro\":\"has_many\",\"resource_name\":\"TextKey\",\"through\":null}],\"paramKey\":\"content\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"absolute_containers\":{\"active_record\":{\"name\":\"Content\",\"primary_key\":\"id\"},\"class_name\":\"ContentAbsoluteContainer\",\"foreign_key\":\"content_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ContentAbsoluteContainer\",\"type\":\"has_many\"},\"text_keys\":{\"active_record\":{\"name\":\"Content\",\"primary_key\":\"id\"},\"class_name\":\"TextKey\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"resource\",\"primary_key\":null,\"through\":null},\"resource_name\":\"TextKey\",\"type\":\"has_many\"}}},\"Country\":{\"attributes\":{\"country_code\":{\"column\":{\"default\":null,\"name\":\"country_code\",\"null\":false,\"type\":\"string\"},\"name\":\"country_code\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"default_currency_id\":{\"column\":{\"default\":null,\"name\":\"default_currency_id\",\"null\":true,\"type\":null},\"name\":\"default_currency_id\",\"selected_by_default\":null},\"default_locale_id\":{\"column\":{\"default\":null,\"name\":\"default_locale_id\",\"null\":true,\"type\":null},\"name\":\"default_locale_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"country_code\":{\"column\":{\"default\":null,\"name\":\"country_code\",\"null\":false,\"type\":\"string\"},\"name\":\"country_code\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"default_currency_id\":{\"column\":{\"default\":null,\"name\":\"default_currency_id\",\"null\":true,\"type\":null},\"name\":\"default_currency_id\",\"selected_by_default\":null},\"default_locale_id\":{\"column\":{\"default\":null,\"name\":\"default_locale_id\",\"null\":true,\"type\":null},\"name\":\"default_locale_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Country\",\"collectionKey\":\"countries\",\"collectionName\":\"countries\",\"i18nKey\":\"country\",\"camelizedLower\":\"country\",\"name\":\"Country\",\"nameDasherized\":\"country\",\"pluralName\":\"countries\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Country::Translation\",\"collectionName\":null,\"foreignKey\":\"country_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Country::Translation\",\"collectionName\":null,\"foreignKey\":\"country_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Currency\",\"collectionName\":\"currencies\",\"foreignKey\":\"default_currency_id\",\"name\":\"default_currency\",\"macro\":\"belongs_to\",\"resource_name\":\"Currency\",\"through\":null},{\"className\":\"Locale\",\"collectionName\":\"locales\",\"foreignKey\":\"default_locale_id\",\"name\":\"default_locale\",\"macro\":\"belongs_to\",\"resource_name\":\"Locale\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"country_id\",\"name\":\"schools\",\"macro\":\"has_many\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"current_country_id\",\"name\":\"users_with_current_country\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"country_code\",\"column\":{\"default\":null,\"name\":\"country_code\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"default_currency_id\",\"column\":{\"default\":null,\"name\":\"default_currency_id\",\"null\":true,\"type\":null}},{\"name\":\"default_locale_id\",\"column\":{\"default\":null,\"name\":\"default_locale_id\",\"null\":true,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Currency\",\"collectionName\":\"currencies\",\"foreignKey\":\"default_currency_id\",\"name\":\"default_currency\",\"macro\":\"belongs_to\",\"resource_name\":\"Currency\",\"through\":null},{\"className\":\"Locale\",\"collectionName\":\"locales\",\"foreignKey\":\"default_locale_id\",\"name\":\"default_locale\",\"macro\":\"belongs_to\",\"resource_name\":\"Locale\",\"through\":null}],\"paramKey\":\"country\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"default_currency\":{\"active_record\":{\"name\":\"Country\",\"primary_key\":\"id\"},\"class_name\":\"Currency\",\"foreign_key\":\"default_currency_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Currency\",\"type\":\"belongs_to\"},\"default_locale\":{\"active_record\":{\"name\":\"Country\",\"primary_key\":\"id\"},\"class_name\":\"Locale\",\"foreign_key\":\"default_locale_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Locale\",\"type\":\"belongs_to\"}}},\"CourseClassStep\":{\"attributes\":{\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"CourseClassStep\",\"collectionKey\":\"course_class_steps\",\"collectionName\":\"course_class_steps\",\"i18nKey\":\"course_class_step\",\"camelizedLower\":\"courseClassStep\",\"name\":\"CourseClassStep\",\"nameDasherized\":\"course-class-step\",\"pluralName\":\"course_class_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"course_id\",\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null}},{\"name\":\"class_step_id\",\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null}],\"paramKey\":\"course_class_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"class_step\":{\"active_record\":{\"name\":\"CourseClassStep\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ClassStep\",\"type\":\"belongs_to\"},\"course\":{\"active_record\":{\"name\":\"CourseClassStep\",\"primary_key\":\"id\"},\"class_name\":\"Course\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Course\",\"type\":\"belongs_to\"}}},\"CourseGroupCourse\":{\"attributes\":{\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"course_group_id\":{\"column\":{\"default\":null,\"name\":\"course_group_id\",\"null\":false,\"type\":null},\"name\":\"course_group_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":true,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"course_group_id\":{\"column\":{\"default\":null,\"name\":\"course_group_id\",\"null\":false,\"type\":null},\"name\":\"course_group_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":true,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"CourseGroupCourse\",\"collectionKey\":\"course_group_courses\",\"collectionName\":\"course_group_courses\",\"i18nKey\":\"course_group_course\",\"camelizedLower\":\"courseGroupCourse\",\"name\":\"CourseGroupCourse\",\"nameDasherized\":\"course-group-course\",\"pluralName\":\"course_group_courses\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"CourseGroup\",\"collectionName\":\"course_groups\",\"foreignKey\":\"course_group_id\",\"name\":\"course_group\",\"macro\":\"belongs_to\",\"resource_name\":\"CourseGroup\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"course_id\",\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null}},{\"name\":\"course_group_id\",\"column\":{\"default\":null,\"name\":\"course_group_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"score_factor_id\",\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":true,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"CourseGroup\",\"collectionName\":\"course_groups\",\"foreignKey\":\"course_group_id\",\"name\":\"course_group\",\"macro\":\"belongs_to\",\"resource_name\":\"CourseGroup\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null}],\"paramKey\":\"course_group_course\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"course\":{\"active_record\":{\"name\":\"CourseGroupCourse\",\"primary_key\":\"id\"},\"class_name\":\"Course\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Course\",\"type\":\"belongs_to\"},\"course_group\":{\"active_record\":{\"name\":\"CourseGroupCourse\",\"primary_key\":\"id\"},\"class_name\":\"CourseGroup\",\"foreign_key\":\"course_group_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CourseGroup\",\"type\":\"belongs_to\"},\"score_factor\":{\"active_record\":{\"name\":\"CourseGroupCourse\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactor\",\"foreign_key\":\"score_factor_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ScoreFactor\",\"type\":\"belongs_to\"}}},\"CourseGroup\":{\"attributes\":{\"course_group_courses_count\":{\"column\":{\"default\":\"0\",\"name\":\"course_group_courses_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"course_group_courses_count\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"course_group_courses_count\":{\"column\":{\"default\":\"0\",\"name\":\"course_group_courses_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"course_group_courses_count\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"CourseGroup\",\"collectionKey\":\"course_groups\",\"collectionName\":\"course_groups\",\"i18nKey\":\"course_group\",\"camelizedLower\":\"courseGroup\",\"name\":\"CourseGroup\",\"nameDasherized\":\"course-group\",\"pluralName\":\"course_groups\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"CourseGroup::Translation\",\"collectionName\":null,\"foreignKey\":\"course_group_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"CourseGroup::Translation\",\"collectionName\":null,\"foreignKey\":\"course_group_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"CourseGroupCourse\",\"collectionName\":\"course_group_courses\",\"foreignKey\":\"course_group_id\",\"name\":\"course_group_courses\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroupCourse\",\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"courses\",\"macro\":\"has_many\",\"resource_name\":\"Course\",\"through\":\"course_group_courses\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"}},{\"name\":\"course_group_courses_count\",\"column\":{\"default\":\"0\",\"name\":\"course_group_courses_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"courses\",\"macro\":\"has_many\",\"resource_name\":\"Course\",\"through\":\"course_group_courses\"},{\"className\":\"CourseGroupCourse\",\"collectionName\":\"course_group_courses\",\"foreignKey\":\"course_group_id\",\"name\":\"course_group_courses\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroupCourse\",\"through\":null}],\"paramKey\":\"course_group\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"courses\":{\"active_record\":{\"name\":\"CourseGroup\",\"primary_key\":\"id\"},\"class_name\":\"Course\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"course_group_courses\"},\"resource_name\":\"Course\",\"type\":\"has_many\"},\"course_group_courses\":{\"active_record\":{\"name\":\"CourseGroup\",\"primary_key\":\"id\"},\"class_name\":\"CourseGroupCourse\",\"foreign_key\":\"course_group_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CourseGroupCourse\",\"type\":\"has_many\"}}},\"CourseModule\":{\"attributes\":{\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"expected_minutes\":{\"column\":{\"default\":null,\"name\":\"expected_minutes\",\"null\":true,\"type\":\"integer\"},\"name\":\"expected_minutes\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"appetizer\":{\"column\":null,\"name\":\"appetizer\",\"selected_by_default\":false},\"appetizer_da\":{\"column\":null,\"name\":\"appetizer_da\",\"selected_by_default\":false},\"appetizer_en\":{\"column\":null,\"name\":\"appetizer_en\",\"selected_by_default\":false},\"appetizer_no\":{\"column\":null,\"name\":\"appetizer_no\",\"selected_by_default\":false},\"appetizer_se\":{\"column\":null,\"name\":\"appetizer_se\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"expected_minutes\":{\"column\":{\"default\":null,\"name\":\"expected_minutes\",\"null\":true,\"type\":\"integer\"},\"name\":\"expected_minutes\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"appetizer\":{\"column\":null,\"name\":\"appetizer\",\"selected_by_default\":false},\"appetizer_da\":{\"column\":null,\"name\":\"appetizer_da\",\"selected_by_default\":false},\"appetizer_en\":{\"column\":null,\"name\":\"appetizer_en\",\"selected_by_default\":false},\"appetizer_no\":{\"column\":null,\"name\":\"appetizer_no\",\"selected_by_default\":false},\"appetizer_se\":{\"column\":null,\"name\":\"appetizer_se\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"CourseModule\",\"collectionKey\":\"course_modules\",\"collectionName\":\"course_modules\",\"i18nKey\":\"course_module\",\"camelizedLower\":\"courseModule\",\"name\":\"CourseModule\",\"nameDasherized\":\"course-module\",\"pluralName\":\"course_modules\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"CourseModule::Translation\",\"collectionName\":null,\"foreignKey\":\"course_module_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"CourseModule::Translation\",\"collectionName\":null,\"foreignKey\":\"course_module_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"SchoolClassCourseModule\",\"collectionName\":\"school_class_course_modules\",\"foreignKey\":\"course_module_id\",\"name\":\"school_class_course_modules\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCourseModule\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"course_id\",\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null}},{\"name\":\"survey_id\",\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null}},{\"name\":\"expected_minutes\",\"column\":{\"default\":null,\"name\":\"expected_minutes\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"position\",\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null}],\"paramKey\":\"course_module\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"course\":{\"active_record\":{\"name\":\"CourseModule\",\"primary_key\":\"id\"},\"class_name\":\"Course\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Course\",\"type\":\"belongs_to\"},\"survey\":{\"active_record\":{\"name\":\"CourseModule\",\"primary_key\":\"id\"},\"class_name\":\"Survey\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Survey\",\"type\":\"belongs_to\"}}},\"Course\":{\"attributes\":{\"background_image_content_type\":{\"column\":null,\"name\":\"background_image_content_type\",\"selected_by_default\":false},\"background_image_url\":{\"column\":null,\"name\":\"background_image_url\",\"selected_by_default\":false},\"course_modules_count\":{\"column\":{\"default\":\"0\",\"name\":\"course_modules_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"course_modules_count\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"value_points\":{\"column\":{\"default\":null,\"name\":\"value_points\",\"null\":true,\"type\":\"integer\"},\"name\":\"value_points\",\"selected_by_default\":null},\"description\":{\"column\":null,\"name\":\"description\",\"selected_by_default\":false},\"description_da\":{\"column\":null,\"name\":\"description_da\",\"selected_by_default\":false},\"description_en\":{\"column\":null,\"name\":\"description_en\",\"selected_by_default\":false},\"description_no\":{\"column\":null,\"name\":\"description_no\",\"selected_by_default\":false},\"description_se\":{\"column\":null,\"name\":\"description_se\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"take\":{\"name\":\"take\"}},\"model_class_data\":{\"attributes\":{\"background_image_content_type\":{\"column\":null,\"name\":\"background_image_content_type\",\"selected_by_default\":false},\"background_image_url\":{\"column\":null,\"name\":\"background_image_url\",\"selected_by_default\":false},\"course_modules_count\":{\"column\":{\"default\":\"0\",\"name\":\"course_modules_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"course_modules_count\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"public\":{\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"},\"name\":\"public\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"value_points\":{\"column\":{\"default\":null,\"name\":\"value_points\",\"null\":true,\"type\":\"integer\"},\"name\":\"value_points\",\"selected_by_default\":null},\"description\":{\"column\":null,\"name\":\"description\",\"selected_by_default\":false},\"description_da\":{\"column\":null,\"name\":\"description_da\",\"selected_by_default\":false},\"description_en\":{\"column\":null,\"name\":\"description_en\",\"selected_by_default\":false},\"description_no\":{\"column\":null,\"name\":\"description_no\",\"selected_by_default\":false},\"description_se\":{\"column\":null,\"name\":\"description_se\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Course\",\"collectionKey\":\"courses\",\"collectionName\":\"courses\",\"i18nKey\":\"course\",\"camelizedLower\":\"course\",\"name\":\"Course\",\"nameDasherized\":\"course\",\"pluralName\":\"courses\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Course::Translation\",\"collectionName\":null,\"foreignKey\":\"course_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Course::Translation\",\"collectionName\":null,\"foreignKey\":\"course_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null},{\"className\":\"CourseClassStep\",\"collectionName\":\"course_class_steps\",\"foreignKey\":\"course_id\",\"name\":\"course_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"CourseClassStep\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"course_class_steps\"},{\"className\":\"CourseGroupCourse\",\"collectionName\":\"course_group_courses\",\"foreignKey\":\"course_id\",\"name\":\"course_group_courses\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroupCourse\",\"through\":null},{\"className\":\"CourseGroup\",\"collectionName\":\"course_groups\",\"foreignKey\":\"course_group_id\",\"name\":\"course_groups\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroup\",\"through\":\"course_group_courses\"},{\"className\":\"CourseModule\",\"collectionName\":\"course_modules\",\"foreignKey\":\"course_id\",\"name\":\"course_modules\",\"macro\":\"has_many\",\"resource_name\":\"CourseModule\",\"through\":null},{\"className\":\"SchoolClassCourse\",\"collectionName\":\"school_class_courses\",\"foreignKey\":\"course_id\",\"name\":\"school_class_courses\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCourse\",\"through\":null},{\"className\":\"ActiveStorage::Attachment\",\"collectionName\":null,\"foreignKey\":\"record_id\",\"name\":\"background_image_attachment\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ActiveStorage::Blob\",\"collectionName\":null,\"foreignKey\":\"blob_id\",\"name\":\"background_image_blob\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":\"background_image_attachment\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"score_factor_id\",\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null}},{\"name\":\"course_modules_count\",\"column\":{\"default\":\"0\",\"name\":\"course_modules_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"value_points\",\"column\":{\"default\":null,\"name\":\"value_points\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"course_class_steps_count\",\"column\":{\"default\":\"0\",\"name\":\"course_class_steps_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"public\",\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"for_school_class\"},{\"name\":\"not_taken_by_school_classes\"}],\"relationships\":[{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"course_class_steps\"},{\"className\":\"CourseClassStep\",\"collectionName\":\"course_class_steps\",\"foreignKey\":\"course_id\",\"name\":\"course_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"CourseClassStep\",\"through\":null},{\"className\":\"CourseGroup\",\"collectionName\":\"course_groups\",\"foreignKey\":\"course_group_id\",\"name\":\"course_groups\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroup\",\"through\":\"course_group_courses\"},{\"className\":\"CourseGroupCourse\",\"collectionName\":\"course_group_courses\",\"foreignKey\":\"course_id\",\"name\":\"course_group_courses\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroupCourse\",\"through\":null},{\"className\":\"CourseModule\",\"collectionName\":\"course_modules\",\"foreignKey\":\"course_id\",\"name\":\"course_modules\",\"macro\":\"has_many\",\"resource_name\":\"CourseModule\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null}],\"paramKey\":\"course\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"class_steps\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"course_class_steps\"},\"resource_name\":\"ClassStep\",\"type\":\"has_many\"},\"course_class_steps\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"CourseClassStep\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CourseClassStep\",\"type\":\"has_many\"},\"course_groups\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"CourseGroup\",\"foreign_key\":\"course_group_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"course_group_courses\"},\"resource_name\":\"CourseGroup\",\"type\":\"has_many\"},\"course_group_courses\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"CourseGroupCourse\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CourseGroupCourse\",\"type\":\"has_many\"},\"course_modules\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"CourseModule\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CourseModule\",\"type\":\"has_many\"},\"create_audit\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"auditable_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"auditable\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_one\"},\"score_factor\":{\"active_record\":{\"name\":\"Course\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactor\",\"foreign_key\":\"score_factor_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ScoreFactor\",\"type\":\"belongs_to\"}}},\"Currency\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"currency_code\":{\"column\":{\"default\":null,\"name\":\"currency_code\",\"null\":false,\"type\":\"string\"},\"name\":\"currency_code\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"currency_code\":{\"column\":{\"default\":null,\"name\":\"currency_code\",\"null\":false,\"type\":\"string\"},\"name\":\"currency_code\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Currency\",\"collectionKey\":\"currencies\",\"collectionName\":\"currencies\",\"i18nKey\":\"currency\",\"camelizedLower\":\"currency\",\"name\":\"Currency\",\"nameDasherized\":\"currency\",\"pluralName\":\"currencies\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Currency::Translation\",\"collectionName\":null,\"foreignKey\":\"currency_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Currency::Translation\",\"collectionName\":null,\"foreignKey\":\"currency_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Country\",\"collectionName\":\"countries\",\"foreignKey\":\"default_currency_id\",\"name\":\"default_currency_on_countries\",\"macro\":\"has_many\",\"resource_name\":\"Country\",\"through\":null},{\"className\":\"PlanResourcePeriodPrice\",\"collectionName\":\"plan_resource_period_prices\",\"foreignKey\":\"price_currency\",\"name\":\"plan_resource_period_prices\",\"macro\":\"has_many\",\"resource_name\":\"PlanResourcePeriodPrice\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"currency_id\",\"name\":\"users\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"currency_code\",\"column\":{\"default\":null,\"name\":\"currency_code\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"currency\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"Dialogue\":{\"attributes\":{\"body\":{\"column\":{\"default\":null,\"name\":\"body\",\"null\":false,\"type\":\"text\"},\"name\":\"body\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"dialogue_type\":{\"column\":{\"default\":null,\"name\":\"dialogue_type\",\"null\":false,\"type\":\"string\"},\"name\":\"dialogue_type\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"translated_dialogue_type\":{\"column\":null,\"name\":\"translated_dialogue_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"body\":{\"column\":{\"default\":null,\"name\":\"body\",\"null\":false,\"type\":\"text\"},\"name\":\"body\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"dialogue_type\":{\"column\":{\"default\":null,\"name\":\"dialogue_type\",\"null\":false,\"type\":\"string\"},\"name\":\"dialogue_type\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"translated_dialogue_type\":{\"column\":null,\"name\":\"translated_dialogue_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"Dialogue\",\"collectionKey\":\"dialogues\",\"collectionName\":\"dialogues\",\"i18nKey\":\"dialogue\",\"camelizedLower\":\"dialogue\",\"name\":\"Dialogue\",\"nameDasherized\":\"dialogue\",\"pluralName\":\"dialogues\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"dialogue_type\",\"column\":{\"default\":null,\"name\":\"dialogue_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"body\",\"column\":{\"default\":null,\"name\":\"body\",\"null\":false,\"type\":\"text\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"dialogue\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"user\":{\"active_record\":{\"name\":\"Dialogue\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"EmailTemplatePreviewLiquidVariable\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"droppable_record_id\":{\"column\":{\"default\":null,\"name\":\"droppable_record_id\",\"null\":true,\"type\":null},\"name\":\"droppable_record_id\",\"selected_by_default\":null},\"droppable_record_type\":{\"column\":{\"default\":null,\"name\":\"droppable_record_type\",\"null\":true,\"type\":\"string\"},\"name\":\"droppable_record_type\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"string_value\":{\"column\":{\"default\":null,\"name\":\"string_value\",\"null\":true,\"type\":\"text\"},\"name\":\"string_value\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"variable_type\":{\"column\":{\"default\":\"string\",\"name\":\"variable_type\",\"null\":false,\"type\":\"string\"},\"name\":\"variable_type\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"droppable_record_id\":{\"column\":{\"default\":null,\"name\":\"droppable_record_id\",\"null\":true,\"type\":null},\"name\":\"droppable_record_id\",\"selected_by_default\":null},\"droppable_record_type\":{\"column\":{\"default\":null,\"name\":\"droppable_record_type\",\"null\":true,\"type\":\"string\"},\"name\":\"droppable_record_type\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"string_value\":{\"column\":{\"default\":null,\"name\":\"string_value\",\"null\":true,\"type\":\"text\"},\"name\":\"string_value\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"variable_type\":{\"column\":{\"default\":\"string\",\"name\":\"variable_type\",\"null\":false,\"type\":\"string\"},\"name\":\"variable_type\",\"selected_by_default\":null}},\"className\":\"EmailTemplatePreviewLiquidVariable\",\"collectionKey\":\"email_template_preview_liquid_variables\",\"collectionName\":\"email_template_preview_liquid_variables\",\"i18nKey\":\"email_template_preview_liquid_variable\",\"camelizedLower\":\"emailTemplatePreviewLiquidVariable\",\"name\":\"EmailTemplatePreviewLiquidVariable\",\"nameDasherized\":\"email-template-preview-liquid-variable\",\"pluralName\":\"email_template_preview_liquid_variables\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"EmailTemplatePreview\",\"collectionName\":\"email_template_previews\",\"foreignKey\":\"email_template_preview_id\",\"name\":\"email_template_preview\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplatePreview\",\"through\":null},{\"className\":\"DroppableRecord\",\"collectionName\":null,\"foreignKey\":\"droppable_record_id\",\"name\":\"droppable_record\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"email_template_preview_id\",\"column\":{\"default\":null,\"name\":\"email_template_preview_id\",\"null\":false,\"type\":null}},{\"name\":\"name\",\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"droppable_record_type\",\"column\":{\"default\":null,\"name\":\"droppable_record_type\",\"null\":true,\"type\":\"string\"}},{\"name\":\"droppable_record_id\",\"column\":{\"default\":null,\"name\":\"droppable_record_id\",\"null\":true,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"variable_type\",\"column\":{\"default\":\"string\",\"name\":\"variable_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"string_value\",\"column\":{\"default\":null,\"name\":\"string_value\",\"null\":true,\"type\":\"text\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"email_template_preview_liquid_variable\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"EmailTemplatePreview\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"email_template_id\":{\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":false,\"type\":null},\"name\":\"email_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"send_emails_to_workplace_users\":{\"name\":\"send_emails_to_workplace_users\"}},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"email_template_id\":{\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":false,\"type\":null},\"name\":\"email_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"EmailTemplatePreview\",\"collectionKey\":\"email_template_previews\",\"collectionName\":\"email_template_previews\",\"i18nKey\":\"email_template_preview\",\"camelizedLower\":\"emailTemplatePreview\",\"name\":\"EmailTemplatePreview\",\"nameDasherized\":\"email-template-preview\",\"pluralName\":\"email_template_previews\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplate\",\"through\":null},{\"className\":\"EmailTemplatePreviewLiquidVariable\",\"collectionName\":\"email_template_preview_liquid_variables\",\"foreignKey\":\"email_template_preview_id\",\"name\":\"liquid_variables\",\"macro\":\"has_many\",\"resource_name\":\"EmailTemplatePreviewLiquidVariable\",\"through\":null},{\"className\":\"EmailTemplatePreview::Translation\",\"collectionName\":null,\"foreignKey\":\"email_template_preview_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"EmailTemplatePreview::Translation\",\"collectionName\":null,\"foreignKey\":\"email_template_preview_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"email_template_id\",\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplate\",\"through\":null},{\"className\":\"EmailTemplatePreviewLiquidVariable\",\"collectionName\":\"email_template_preview_liquid_variables\",\"foreignKey\":\"email_template_preview_id\",\"name\":\"liquid_variables\",\"macro\":\"has_many\",\"resource_name\":\"EmailTemplatePreviewLiquidVariable\",\"through\":null}],\"paramKey\":\"email_template_preview\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"email_template\":{\"active_record\":{\"name\":\"EmailTemplatePreview\",\"primary_key\":\"id\"},\"class_name\":\"EmailTemplate\",\"foreign_key\":\"email_template_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"EmailTemplate\",\"type\":\"belongs_to\"},\"liquid_variables\":{\"active_record\":{\"name\":\"EmailTemplatePreview\",\"primary_key\":\"id\"},\"class_name\":\"EmailTemplatePreviewLiquidVariable\",\"foreign_key\":\"email_template_preview_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"EmailTemplatePreviewLiquidVariable\",\"type\":\"has_many\"}}},\"EmailTemplate\":{\"attributes\":{\"body\":{\"column\":null,\"name\":\"body\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false},\"subject\":{\"column\":null,\"name\":\"subject\",\"selected_by_default\":false},\"subject_da\":{\"column\":null,\"name\":\"subject_da\",\"selected_by_default\":false},\"subject_en\":{\"column\":null,\"name\":\"subject_en\",\"selected_by_default\":false},\"subject_no\":{\"column\":null,\"name\":\"subject_no\",\"selected_by_default\":false},\"subject_se\":{\"column\":null,\"name\":\"subject_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"liquid_variables_list\":{\"name\":\"liquid_variables_list\"}},\"model_class_data\":{\"attributes\":{\"body\":{\"column\":null,\"name\":\"body\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false},\"subject\":{\"column\":null,\"name\":\"subject\",\"selected_by_default\":false},\"subject_da\":{\"column\":null,\"name\":\"subject_da\",\"selected_by_default\":false},\"subject_en\":{\"column\":null,\"name\":\"subject_en\",\"selected_by_default\":false},\"subject_no\":{\"column\":null,\"name\":\"subject_no\",\"selected_by_default\":false},\"subject_se\":{\"column\":null,\"name\":\"subject_se\",\"selected_by_default\":false}},\"className\":\"EmailTemplate\",\"collectionKey\":\"email_templates\",\"collectionName\":\"email_templates\",\"i18nKey\":\"email_template\",\"camelizedLower\":\"emailTemplate\",\"name\":\"EmailTemplate\",\"nameDasherized\":\"email-template\",\"pluralName\":\"email_templates\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"EmailTemplate::Translation\",\"collectionName\":null,\"foreignKey\":\"email_template_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"EmailTemplate::Translation\",\"collectionName\":null,\"foreignKey\":\"email_template_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"body_model\",\"macro\":\"has_one\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"contents\",\"macro\":\"has_many\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"NewsletterTemplate\",\"collectionName\":\"newsletter_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"newsletter_templates\",\"macro\":\"has_many\",\"resource_name\":\"NewsletterTemplate\",\"through\":null},{\"className\":\"NotificationTypeAction\",\"collectionName\":\"notification_type_actions\",\"foreignKey\":\"email_template_id\",\"name\":\"notification_type_actions\",\"macro\":\"has_many\",\"resource_name\":\"NotificationTypeAction\",\"through\":null},{\"className\":\"EmailTemplatePreview\",\"collectionName\":\"email_template_previews\",\"foreignKey\":\"email_template_id\",\"name\":\"previews\",\"macro\":\"has_many\",\"resource_name\":\"EmailTemplatePreview\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"contents\",\"macro\":\"has_many\",\"resource_name\":\"Content\",\"through\":null}],\"paramKey\":\"email_template\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"contents\":{\"active_record\":{\"name\":\"EmailTemplate\",\"primary_key\":\"id\"},\"class_name\":\"Content\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"resource\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Content\",\"type\":\"has_many\"}}},\"InvoiceLine\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"invoice_id\":{\"column\":{\"default\":null,\"name\":\"invoice_id\",\"null\":false,\"type\":null},\"name\":\"invoice_id\",\"selected_by_default\":null},\"price\":{\"column\":null,\"name\":\"price\",\"selected_by_default\":null},\"price_cents\":{\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"},\"name\":\"price_cents\",\"selected_by_default\":null},\"price_currency\":{\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"},\"name\":\"price_currency\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"vat\":{\"column\":null,\"name\":\"vat\",\"selected_by_default\":null},\"vat_cents\":{\"column\":{\"default\":\"0\",\"name\":\"vat_cents\",\"null\":false,\"type\":\"integer\"},\"name\":\"vat_cents\",\"selected_by_default\":null},\"vat_currency\":{\"column\":{\"default\":\"USD\",\"name\":\"vat_currency\",\"null\":false,\"type\":\"string\"},\"name\":\"vat_currency\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"invoice_id\":{\"column\":{\"default\":null,\"name\":\"invoice_id\",\"null\":false,\"type\":null},\"name\":\"invoice_id\",\"selected_by_default\":null},\"price\":{\"column\":null,\"name\":\"price\",\"selected_by_default\":null},\"price_cents\":{\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"},\"name\":\"price_cents\",\"selected_by_default\":null},\"price_currency\":{\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"},\"name\":\"price_currency\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"vat\":{\"column\":null,\"name\":\"vat\",\"selected_by_default\":null},\"vat_cents\":{\"column\":{\"default\":\"0\",\"name\":\"vat_cents\",\"null\":false,\"type\":\"integer\"},\"name\":\"vat_cents\",\"selected_by_default\":null},\"vat_currency\":{\"column\":{\"default\":\"USD\",\"name\":\"vat_currency\",\"null\":false,\"type\":\"string\"},\"name\":\"vat_currency\",\"selected_by_default\":null}},\"className\":\"InvoiceLine\",\"collectionKey\":\"invoice_lines\",\"collectionName\":\"invoice_lines\",\"i18nKey\":\"invoice_line\",\"camelizedLower\":\"invoiceLine\",\"name\":\"InvoiceLine\",\"nameDasherized\":\"invoice-line\",\"pluralName\":\"invoice_lines\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Invoice\",\"collectionName\":\"invoices\",\"foreignKey\":\"invoice_id\",\"name\":\"invoice\",\"macro\":\"belongs_to\",\"resource_name\":\"Invoice\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"invoice_id\",\"column\":{\"default\":null,\"name\":\"invoice_id\",\"null\":false,\"type\":null}},{\"name\":\"price_cents\",\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"price_currency\",\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"}},{\"name\":\"vat_cents\",\"column\":{\"default\":\"0\",\"name\":\"vat_cents\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"vat_currency\",\"column\":{\"default\":\"USD\",\"name\":\"vat_currency\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Invoice\",\"collectionName\":\"invoices\",\"foreignKey\":\"invoice_id\",\"name\":\"invoice\",\"macro\":\"belongs_to\",\"resource_name\":\"Invoice\",\"through\":null}],\"paramKey\":\"invoice_line\",\"primaryKey\":\"id\"},\"monetized_attributes\":[{\"name\":\"price\"},{\"name\":\"vat\"}],\"relationships\":{\"invoice\":{\"active_record\":{\"name\":\"InvoiceLine\",\"primary_key\":\"id\"},\"class_name\":\"Invoice\",\"foreign_key\":\"invoice_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Invoice\",\"type\":\"belongs_to\"}}},\"Invoice\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"Invoice\",\"collectionKey\":\"invoices\",\"collectionName\":\"invoices\",\"i18nKey\":\"invoice\",\"camelizedLower\":\"invoice\",\"name\":\"Invoice\",\"nameDasherized\":\"invoice\",\"pluralName\":\"invoices\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"SubscriptionPeriod\",\"collectionName\":\"subscription_periods\",\"foreignKey\":\"resource_id\",\"name\":\"subscription_period\",\"macro\":\"has_one\",\"resource_name\":\"SubscriptionPeriod\",\"through\":null},{\"className\":\"InvoiceLine\",\"collectionName\":\"invoice_lines\",\"foreignKey\":\"invoice_id\",\"name\":\"invoice_lines\",\"macro\":\"has_many\",\"resource_name\":\"InvoiceLine\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"InvoiceLine\",\"collectionName\":\"invoice_lines\",\"foreignKey\":\"invoice_id\",\"name\":\"invoice_lines\",\"macro\":\"has_many\",\"resource_name\":\"InvoiceLine\",\"through\":null}],\"paramKey\":\"invoice\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"invoice_lines\":{\"active_record\":{\"name\":\"Invoice\",\"primary_key\":\"id\"},\"class_name\":\"InvoiceLine\",\"foreign_key\":\"invoice_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"InvoiceLine\",\"type\":\"has_many\"}}},\"Locale\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"locale\":{\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"},\"name\":\"locale\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"locale\":{\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"},\"name\":\"locale\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Locale\",\"collectionKey\":\"locales\",\"collectionName\":\"locales\",\"i18nKey\":\"locale\",\"camelizedLower\":\"locale\",\"name\":\"Locale\",\"nameDasherized\":\"locale\",\"pluralName\":\"locales\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Locale::Translation\",\"collectionName\":null,\"foreignKey\":\"locale_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Locale::Translation\",\"collectionName\":null,\"foreignKey\":\"locale_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Country\",\"collectionName\":\"countries\",\"foreignKey\":\"default_locale_id\",\"name\":\"default_locale_on_countries\",\"macro\":\"has_many\",\"resource_name\":\"Country\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"locale\",\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"locale\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"Newsletter\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"newsletter_template_id\":{\"column\":{\"default\":null,\"name\":\"newsletter_template_id\",\"null\":false,\"type\":null},\"name\":\"newsletter_template_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"newsletter_template_id\":{\"column\":{\"default\":null,\"name\":\"newsletter_template_id\",\"null\":false,\"type\":null},\"name\":\"newsletter_template_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"Newsletter\",\"collectionKey\":\"newsletters\",\"collectionName\":\"newsletters\",\"i18nKey\":\"newsletter\",\"camelizedLower\":\"newsletter\",\"name\":\"Newsletter\",\"nameDasherized\":\"newsletter\",\"pluralName\":\"newsletters\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"NewsletterTemplate\",\"collectionName\":\"newsletter_templates\",\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletter_template\",\"macro\":\"belongs_to\",\"resource_name\":\"NewsletterTemplate\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"has_one\",\"resource_name\":\"EmailTemplate\",\"through\":\"newsletter_template\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"newsletter_template_id\",\"column\":{\"default\":null,\"name\":\"newsletter_template_id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"has_one\",\"resource_name\":\"EmailTemplate\",\"through\":\"newsletter_template\"},{\"className\":\"NewsletterTemplate\",\"collectionName\":\"newsletter_templates\",\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletter_template\",\"macro\":\"belongs_to\",\"resource_name\":\"NewsletterTemplate\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"newsletter\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"email_template\":{\"active_record\":{\"name\":\"Newsletter\",\"primary_key\":\"id\"},\"class_name\":\"EmailTemplate\",\"foreign_key\":\"email_template_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"newsletter_template\"},\"resource_name\":\"EmailTemplate\",\"type\":\"has_one\"},\"newsletter_template\":{\"active_record\":{\"name\":\"Newsletter\",\"primary_key\":\"id\"},\"class_name\":\"NewsletterTemplate\",\"foreign_key\":\"newsletter_template_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"NewsletterTemplate\",\"type\":\"belongs_to\"},\"user\":{\"active_record\":{\"name\":\"Newsletter\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"NewsletterTemplate\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"email_template_id\":{\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":false,\"type\":null},\"name\":\"email_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"send_at\":{\"column\":{\"default\":null,\"name\":\"send_at\",\"null\":true,\"type\":\"datetime\"},\"name\":\"send_at\",\"selected_by_default\":null},\"send_at_without_time_zone\":{\"column\":null,\"name\":\"send_at_without_time_zone\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"draft\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"users_to_receive\":{\"name\":\"users_to_receive\"}},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"email_template_id\":{\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":false,\"type\":null},\"name\":\"email_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"send_at\":{\"column\":{\"default\":null,\"name\":\"send_at\",\"null\":true,\"type\":\"datetime\"},\"name\":\"send_at\",\"selected_by_default\":null},\"send_at_without_time_zone\":{\"column\":null,\"name\":\"send_at_without_time_zone\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"draft\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"NewsletterTemplate\",\"collectionKey\":\"newsletter_templates\",\"collectionName\":\"newsletter_templates\",\"i18nKey\":\"newsletter_template\",\"camelizedLower\":\"newsletterTemplate\",\"name\":\"NewsletterTemplate\",\"nameDasherized\":\"newsletter-template\",\"pluralName\":\"newsletter_templates\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplate\",\"through\":null},{\"className\":\"Newsletter\",\"collectionName\":\"newsletters\",\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletters\",\"macro\":\"has_many\",\"resource_name\":\"Newsletter\",\"through\":null},{\"className\":\"NewsletterTemplateTimeZoneState\",\"collectionName\":null,\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletter_template_time_zone_states\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"NewsletterTemplateTableSearch\",\"collectionName\":\"newsletter_template_table_searches\",\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletter_template_table_searches\",\"macro\":\"has_many\",\"resource_name\":\"NewsletterTemplateTableSearch\",\"through\":null},{\"className\":\"NewsletterTemplate::Translation\",\"collectionName\":null,\"foreignKey\":\"newsletter_template_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"NewsletterTemplate::Translation\",\"collectionName\":null,\"foreignKey\":\"newsletter_template_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"email_template_id\",\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":false,\"type\":null}},{\"name\":\"send_at\",\"column\":{\"default\":null,\"name\":\"send_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"state\",\"column\":{\"default\":\"draft\",\"name\":\"state\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplate\",\"through\":null}],\"paramKey\":\"newsletter_template\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"email_template\":{\"active_record\":{\"name\":\"NewsletterTemplate\",\"primary_key\":\"id\"},\"class_name\":\"EmailTemplate\",\"foreign_key\":\"email_template_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"EmailTemplate\",\"type\":\"belongs_to\"}}},\"NewsletterTemplateTableSearch\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"newsletter_template_id\":{\"column\":{\"default\":null,\"name\":\"newsletter_template_id\",\"null\":false,\"type\":null},\"name\":\"newsletter_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"table_search_id\":{\"column\":{\"default\":null,\"name\":\"table_search_id\",\"null\":false,\"type\":null},\"name\":\"table_search_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"newsletter_template_id\":{\"column\":{\"default\":null,\"name\":\"newsletter_template_id\",\"null\":false,\"type\":null},\"name\":\"newsletter_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"table_search_id\":{\"column\":{\"default\":null,\"name\":\"table_search_id\",\"null\":false,\"type\":null},\"name\":\"table_search_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"NewsletterTemplateTableSearch\",\"collectionKey\":\"newsletter_template_table_searches\",\"collectionName\":\"newsletter_template_table_searches\",\"i18nKey\":\"newsletter_template_table_search\",\"camelizedLower\":\"newsletterTemplateTableSearch\",\"name\":\"NewsletterTemplateTableSearch\",\"nameDasherized\":\"newsletter-template-table-search\",\"pluralName\":\"newsletter_template_table_searches\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"NewsletterTemplate\",\"collectionName\":\"newsletter_templates\",\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletter_template\",\"macro\":\"belongs_to\",\"resource_name\":\"NewsletterTemplate\",\"through\":null},{\"className\":\"ApiMakerTable::TableSearch\",\"collectionName\":\"table_searches\",\"foreignKey\":\"table_search_id\",\"name\":\"table_search\",\"macro\":\"belongs_to\",\"resource_name\":\"TableSearch\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"newsletter_template_id\",\"column\":{\"default\":null,\"name\":\"newsletter_template_id\",\"null\":false,\"type\":null}},{\"name\":\"table_search_id\",\"column\":{\"default\":null,\"name\":\"table_search_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"NewsletterTemplate\",\"collectionName\":\"newsletter_templates\",\"foreignKey\":\"newsletter_template_id\",\"name\":\"newsletter_template\",\"macro\":\"belongs_to\",\"resource_name\":\"NewsletterTemplate\",\"through\":null},{\"className\":\"ApiMakerTable::TableSearch\",\"collectionName\":\"table_searches\",\"foreignKey\":\"table_search_id\",\"name\":\"table_search\",\"macro\":\"belongs_to\",\"resource_name\":\"TableSearch\",\"through\":null}],\"paramKey\":\"newsletter_template_table_search\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"newsletter_template\":{\"active_record\":{\"name\":\"NewsletterTemplateTableSearch\",\"primary_key\":\"id\"},\"class_name\":\"NewsletterTemplate\",\"foreign_key\":\"newsletter_template_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"NewsletterTemplate\",\"type\":\"belongs_to\"},\"table_search\":{\"active_record\":{\"name\":\"NewsletterTemplateTableSearch\",\"primary_key\":\"id\"},\"class_name\":\"ApiMakerTable::TableSearch\",\"foreign_key\":\"table_search_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TableSearch\",\"type\":\"belongs_to\"}}},\"NotificationSetting\":{\"attributes\":{\"accept_marketing\":{\"column\":{\"default\":\"0\",\"name\":\"accept_marketing\",\"null\":false,\"type\":\"boolean\"},\"name\":\"accept_marketing\",\"selected_by_default\":null},\"accept_terms\":{\"column\":{\"default\":\"0\",\"name\":\"accept_terms\",\"null\":false,\"type\":\"boolean\"},\"name\":\"accept_terms\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"accept_marketing\":{\"column\":{\"default\":\"0\",\"name\":\"accept_marketing\",\"null\":false,\"type\":\"boolean\"},\"name\":\"accept_marketing\",\"selected_by_default\":null},\"accept_terms\":{\"column\":{\"default\":\"0\",\"name\":\"accept_terms\",\"null\":false,\"type\":\"boolean\"},\"name\":\"accept_terms\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"NotificationSetting\",\"collectionKey\":\"notification_settings\",\"collectionName\":\"notification_settings\",\"i18nKey\":\"notification_setting\",\"camelizedLower\":\"notificationSetting\",\"name\":\"NotificationSetting\",\"nameDasherized\":\"notification-setting\",\"pluralName\":\"notification_settings\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"accept_marketing\",\"column\":{\"default\":\"0\",\"name\":\"accept_marketing\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"accept_terms\",\"column\":{\"default\":\"0\",\"name\":\"accept_terms\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"unsubscribe_token\",\"column\":{\"default\":null,\"name\":\"unsubscribe_token\",\"null\":false,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"notification_setting\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"user\":{\"active_record\":{\"name\":\"NotificationSetting\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"NotificationTypeAction\":{\"attributes\":{\"action_type\":{\"column\":{\"default\":null,\"name\":\"action_type\",\"null\":false,\"type\":\"string\"},\"name\":\"action_type\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"delay\":{\"column\":{\"default\":null,\"name\":\"delay\",\"null\":true,\"type\":\"integer\"},\"name\":\"delay\",\"selected_by_default\":null},\"email_template_id\":{\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":true,\"type\":null},\"name\":\"email_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"notification_type_id\":{\"column\":{\"default\":null,\"name\":\"notification_type_id\",\"null\":false,\"type\":null},\"name\":\"notification_type_id\",\"selected_by_default\":null},\"translated_action_type\":{\"column\":null,\"name\":\"translated_action_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"action_type\":{\"column\":{\"default\":null,\"name\":\"action_type\",\"null\":false,\"type\":\"string\"},\"name\":\"action_type\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"delay\":{\"column\":{\"default\":null,\"name\":\"delay\",\"null\":true,\"type\":\"integer\"},\"name\":\"delay\",\"selected_by_default\":null},\"email_template_id\":{\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":true,\"type\":null},\"name\":\"email_template_id\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"notification_type_id\":{\"column\":{\"default\":null,\"name\":\"notification_type_id\",\"null\":false,\"type\":null},\"name\":\"notification_type_id\",\"selected_by_default\":null},\"translated_action_type\":{\"column\":null,\"name\":\"translated_action_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"NotificationTypeAction\",\"collectionKey\":\"notification_type_actions\",\"collectionName\":\"notification_type_actions\",\"i18nKey\":\"notification_type_action\",\"camelizedLower\":\"notificationTypeAction\",\"name\":\"NotificationTypeAction\",\"nameDasherized\":\"notification-type-action\",\"pluralName\":\"notification_type_actions\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplate\",\"through\":null},{\"className\":\"NotificationType\",\"collectionName\":\"notification_types\",\"foreignKey\":\"notification_type_id\",\"name\":\"notification_type\",\"macro\":\"belongs_to\",\"resource_name\":\"NotificationType\",\"through\":null},{\"className\":\"Notification\",\"collectionName\":null,\"foreignKey\":\"action_id\",\"name\":\"notifications\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"notification_type_id\",\"column\":{\"default\":null,\"name\":\"notification_type_id\",\"null\":false,\"type\":null}},{\"name\":\"action_type\",\"column\":{\"default\":null,\"name\":\"action_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"delay\",\"column\":{\"default\":null,\"name\":\"delay\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"email_template_id\",\"column\":{\"default\":null,\"name\":\"email_template_id\",\"null\":true,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"EmailTemplate\",\"collectionName\":\"email_templates\",\"foreignKey\":\"email_template_id\",\"name\":\"email_template\",\"macro\":\"belongs_to\",\"resource_name\":\"EmailTemplate\",\"through\":null},{\"className\":\"NotificationType\",\"collectionName\":\"notification_types\",\"foreignKey\":\"notification_type_id\",\"name\":\"notification_type\",\"macro\":\"belongs_to\",\"resource_name\":\"NotificationType\",\"through\":null}],\"paramKey\":\"notification_type_action\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"email_template\":{\"active_record\":{\"name\":\"NotificationTypeAction\",\"primary_key\":\"id\"},\"class_name\":\"EmailTemplate\",\"foreign_key\":\"email_template_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"EmailTemplate\",\"type\":\"belongs_to\"},\"notification_type\":{\"active_record\":{\"name\":\"NotificationTypeAction\",\"primary_key\":\"id\"},\"class_name\":\"NotificationType\",\"foreign_key\":\"notification_type_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"NotificationType\",\"type\":\"belongs_to\"}}},\"NotificationTypeAuditTrigger\":{\"attributes\":{\"audit_action\":{\"column\":{\"default\":null,\"name\":\"audit_action\",\"null\":false,\"type\":\"string\"},\"name\":\"audit_action\",\"selected_by_default\":null},\"auditable_type\":{\"column\":{\"default\":null,\"name\":\"auditable_type\",\"null\":true,\"type\":\"string\"},\"name\":\"auditable_type\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"notification_type_id\":{\"column\":{\"default\":null,\"name\":\"notification_type_id\",\"null\":false,\"type\":null},\"name\":\"notification_type_id\",\"selected_by_default\":null},\"target_user_liquid\":{\"column\":{\"default\":null,\"name\":\"target_user_liquid\",\"null\":true,\"type\":\"text\"},\"name\":\"target_user_liquid\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"audit_action\":{\"column\":{\"default\":null,\"name\":\"audit_action\",\"null\":false,\"type\":\"string\"},\"name\":\"audit_action\",\"selected_by_default\":null},\"auditable_type\":{\"column\":{\"default\":null,\"name\":\"auditable_type\",\"null\":true,\"type\":\"string\"},\"name\":\"auditable_type\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"notification_type_id\":{\"column\":{\"default\":null,\"name\":\"notification_type_id\",\"null\":false,\"type\":null},\"name\":\"notification_type_id\",\"selected_by_default\":null},\"target_user_liquid\":{\"column\":{\"default\":null,\"name\":\"target_user_liquid\",\"null\":true,\"type\":\"text\"},\"name\":\"target_user_liquid\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"NotificationTypeAuditTrigger\",\"collectionKey\":\"notification_type_audit_triggers\",\"collectionName\":\"notification_type_audit_triggers\",\"i18nKey\":\"notification_type_audit_trigger\",\"camelizedLower\":\"notificationTypeAuditTrigger\",\"name\":\"NotificationTypeAuditTrigger\",\"nameDasherized\":\"notification-type-audit-trigger\",\"pluralName\":\"notification_type_audit_triggers\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"NotificationType\",\"collectionName\":\"notification_types\",\"foreignKey\":\"notification_type_id\",\"name\":\"notification_type\",\"macro\":\"belongs_to\",\"resource_name\":\"NotificationType\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"notification_type_id\",\"column\":{\"default\":null,\"name\":\"notification_type_id\",\"null\":false,\"type\":null}},{\"name\":\"audit_action\",\"column\":{\"default\":null,\"name\":\"audit_action\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"auditable_type\",\"column\":{\"default\":null,\"name\":\"auditable_type\",\"null\":true,\"type\":\"string\"}},{\"name\":\"target_user_liquid\",\"column\":{\"default\":null,\"name\":\"target_user_liquid\",\"null\":true,\"type\":\"text\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"NotificationType\",\"collectionName\":\"notification_types\",\"foreignKey\":\"notification_type_id\",\"name\":\"notification_type\",\"macro\":\"belongs_to\",\"resource_name\":\"NotificationType\",\"through\":null}],\"paramKey\":\"notification_type_audit_trigger\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"notification_type\":{\"active_record\":{\"name\":\"NotificationTypeAuditTrigger\",\"primary_key\":\"id\"},\"class_name\":\"NotificationType\",\"foreign_key\":\"notification_type_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"NotificationType\",\"type\":\"belongs_to\"}}},\"NotificationType\":{\"attributes\":{\"active\":{\"column\":{\"default\":\"1\",\"name\":\"active\",\"null\":false,\"type\":\"boolean\"},\"name\":\"active\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"notification_type_actions_count\":{\"column\":{\"default\":\"0\",\"name\":\"notification_type_actions_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"notification_type_actions_count\",\"selected_by_default\":null},\"notification_type_audit_triggers_count\":{\"column\":{\"default\":\"0\",\"name\":\"notification_type_audit_triggers_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"notification_type_audit_triggers_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"active\":{\"column\":{\"default\":\"1\",\"name\":\"active\",\"null\":false,\"type\":\"boolean\"},\"name\":\"active\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"notification_type_actions_count\":{\"column\":{\"default\":\"0\",\"name\":\"notification_type_actions_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"notification_type_actions_count\",\"selected_by_default\":null},\"notification_type_audit_triggers_count\":{\"column\":{\"default\":\"0\",\"name\":\"notification_type_audit_triggers_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"notification_type_audit_triggers_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"NotificationType\",\"collectionKey\":\"notification_types\",\"collectionName\":\"notification_types\",\"i18nKey\":\"notification_type\",\"camelizedLower\":\"notificationType\",\"name\":\"NotificationType\",\"nameDasherized\":\"notification-type\",\"pluralName\":\"notification_types\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"NotificationType::Translation\",\"collectionName\":null,\"foreignKey\":\"notification_type_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"NotificationType::Translation\",\"collectionName\":null,\"foreignKey\":\"notification_type_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"NotificationTypeAction\",\"collectionName\":\"notification_type_actions\",\"foreignKey\":\"notification_type_id\",\"name\":\"actions\",\"macro\":\"has_many\",\"resource_name\":\"NotificationTypeAction\",\"through\":null},{\"className\":\"NotificationTypeAuditTrigger\",\"collectionName\":\"notification_type_audit_triggers\",\"foreignKey\":\"notification_type_id\",\"name\":\"audit_triggers\",\"macro\":\"has_many\",\"resource_name\":\"NotificationTypeAuditTrigger\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"active\",\"column\":{\"default\":\"1\",\"name\":\"active\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"notification_type_actions_count\",\"column\":{\"default\":\"0\",\"name\":\"notification_type_actions_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"notification_type_audit_triggers_count\",\"column\":{\"default\":\"0\",\"name\":\"notification_type_audit_triggers_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"notification_type\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"Plan\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"show_in_sign_up_modal\":{\"column\":{\"default\":\"0\",\"name\":\"show_in_sign_up_modal\",\"null\":false,\"type\":\"boolean\"},\"name\":\"show_in_sign_up_modal\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"description\":{\"column\":null,\"name\":\"description\",\"selected_by_default\":false},\"description_da\":{\"column\":null,\"name\":\"description_da\",\"selected_by_default\":false},\"description_en\":{\"column\":null,\"name\":\"description_en\",\"selected_by_default\":false},\"description_no\":{\"column\":null,\"name\":\"description_no\",\"selected_by_default\":false},\"description_se\":{\"column\":null,\"name\":\"description_se\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false},\"sub_title\":{\"column\":null,\"name\":\"sub_title\",\"selected_by_default\":false},\"sub_title_da\":{\"column\":null,\"name\":\"sub_title_da\",\"selected_by_default\":false},\"sub_title_en\":{\"column\":null,\"name\":\"sub_title_en\",\"selected_by_default\":false},\"sub_title_no\":{\"column\":null,\"name\":\"sub_title_no\",\"selected_by_default\":false},\"sub_title_se\":{\"column\":null,\"name\":\"sub_title_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"subscribe_to\":{\"name\":\"subscribe_to\"}},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"show_in_sign_up_modal\":{\"column\":{\"default\":\"0\",\"name\":\"show_in_sign_up_modal\",\"null\":false,\"type\":\"boolean\"},\"name\":\"show_in_sign_up_modal\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"description\":{\"column\":null,\"name\":\"description\",\"selected_by_default\":false},\"description_da\":{\"column\":null,\"name\":\"description_da\",\"selected_by_default\":false},\"description_en\":{\"column\":null,\"name\":\"description_en\",\"selected_by_default\":false},\"description_no\":{\"column\":null,\"name\":\"description_no\",\"selected_by_default\":false},\"description_se\":{\"column\":null,\"name\":\"description_se\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false},\"sub_title\":{\"column\":null,\"name\":\"sub_title\",\"selected_by_default\":false},\"sub_title_da\":{\"column\":null,\"name\":\"sub_title_da\",\"selected_by_default\":false},\"sub_title_en\":{\"column\":null,\"name\":\"sub_title_en\",\"selected_by_default\":false},\"sub_title_no\":{\"column\":null,\"name\":\"sub_title_no\",\"selected_by_default\":false},\"sub_title_se\":{\"column\":null,\"name\":\"sub_title_se\",\"selected_by_default\":false}},\"className\":\"Plan\",\"collectionKey\":\"plans\",\"collectionName\":\"plans\",\"i18nKey\":\"plan\",\"camelizedLower\":\"plan\",\"name\":\"Plan\",\"nameDasherized\":\"plan\",\"pluralName\":\"plans\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Plan::Translation\",\"collectionName\":null,\"foreignKey\":\"plan_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Plan::Translation\",\"collectionName\":null,\"foreignKey\":\"plan_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"PlanResource\",\"collectionName\":\"plan_resources\",\"foreignKey\":\"plan_id\",\"name\":\"resources\",\"macro\":\"has_many\",\"resource_name\":\"PlanResource\",\"through\":null},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"plan_id\",\"name\":\"subscriptions\",\"macro\":\"has_many\",\"resource_name\":\"Subscription\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"show_in_sign_up_modal\",\"column\":{\"default\":\"0\",\"name\":\"show_in_sign_up_modal\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"PlanResource\",\"collectionName\":\"plan_resources\",\"foreignKey\":\"plan_id\",\"name\":\"resources\",\"macro\":\"has_many\",\"resource_name\":\"PlanResource\",\"through\":null},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"plan_id\",\"name\":\"subscriptions\",\"macro\":\"has_many\",\"resource_name\":\"Subscription\",\"through\":null}],\"paramKey\":\"plan\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"resources\":{\"active_record\":{\"name\":\"Plan\",\"primary_key\":\"id\"},\"class_name\":\"PlanResource\",\"foreign_key\":\"plan_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"PlanResource\",\"type\":\"has_many\"},\"subscriptions\":{\"active_record\":{\"name\":\"Plan\",\"primary_key\":\"id\"},\"class_name\":\"Subscription\",\"foreign_key\":\"plan_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Subscription\",\"type\":\"has_many\"}}},\"PlanResourcePeriodPrice\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"plan_resource_period_id\":{\"column\":{\"default\":null,\"name\":\"plan_resource_period_id\",\"null\":false,\"type\":null},\"name\":\"plan_resource_period_id\",\"selected_by_default\":null},\"price\":{\"column\":null,\"name\":\"price\",\"selected_by_default\":null},\"price_cents\":{\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"},\"name\":\"price_cents\",\"selected_by_default\":null},\"price_currency\":{\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"},\"name\":\"price_currency\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"plan_resource_period_id\":{\"column\":{\"default\":null,\"name\":\"plan_resource_period_id\",\"null\":false,\"type\":null},\"name\":\"plan_resource_period_id\",\"selected_by_default\":null},\"price\":{\"column\":null,\"name\":\"price\",\"selected_by_default\":null},\"price_cents\":{\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"},\"name\":\"price_cents\",\"selected_by_default\":null},\"price_currency\":{\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"},\"name\":\"price_currency\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"PlanResourcePeriodPrice\",\"collectionKey\":\"plan_resource_period_prices\",\"collectionName\":\"plan_resource_period_prices\",\"i18nKey\":\"plan_resource_period_price\",\"camelizedLower\":\"planResourcePeriodPrice\",\"name\":\"PlanResourcePeriodPrice\",\"nameDasherized\":\"plan-resource-period-price\",\"pluralName\":\"plan_resource_period_prices\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Currency\",\"collectionName\":\"currencies\",\"foreignKey\":\"price_currency\",\"name\":\"currency\",\"macro\":\"belongs_to\",\"resource_name\":\"Currency\",\"through\":null},{\"className\":\"PlanResourcePeriod\",\"collectionName\":\"plan_resource_periods\",\"foreignKey\":\"plan_resource_period_id\",\"name\":\"period\",\"macro\":\"belongs_to\",\"resource_name\":\"PlanResourcePeriod\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"plan_resource_period_id\",\"column\":{\"default\":null,\"name\":\"plan_resource_period_id\",\"null\":false,\"type\":null}},{\"name\":\"price_cents\",\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"price_currency\",\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"PlanResourcePeriod\",\"collectionName\":\"plan_resource_periods\",\"foreignKey\":\"plan_resource_period_id\",\"name\":\"period\",\"macro\":\"belongs_to\",\"resource_name\":\"PlanResourcePeriod\",\"through\":null}],\"paramKey\":\"plan_resource_period_price\",\"primaryKey\":\"id\"},\"monetized_attributes\":[{\"name\":\"price\"}],\"relationships\":{\"period\":{\"active_record\":{\"name\":\"PlanResourcePeriodPrice\",\"primary_key\":\"id\"},\"class_name\":\"PlanResourcePeriod\",\"foreign_key\":\"plan_resource_period_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"PlanResourcePeriod\",\"type\":\"belongs_to\"}}},\"PlanResourcePeriod\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"months\":{\"column\":{\"default\":null,\"name\":\"months\",\"null\":false,\"type\":\"integer\"},\"name\":\"months\",\"selected_by_default\":null},\"plan_resource_id\":{\"column\":{\"default\":null,\"name\":\"plan_resource_id\",\"null\":false,\"type\":null},\"name\":\"plan_resource_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"months\":{\"column\":{\"default\":null,\"name\":\"months\",\"null\":false,\"type\":\"integer\"},\"name\":\"months\",\"selected_by_default\":null},\"plan_resource_id\":{\"column\":{\"default\":null,\"name\":\"plan_resource_id\",\"null\":false,\"type\":null},\"name\":\"plan_resource_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"PlanResourcePeriod\",\"collectionKey\":\"plan_resource_periods\",\"collectionName\":\"plan_resource_periods\",\"i18nKey\":\"plan_resource_period\",\"camelizedLower\":\"planResourcePeriod\",\"name\":\"PlanResourcePeriod\",\"nameDasherized\":\"plan-resource-period\",\"pluralName\":\"plan_resource_periods\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"PlanResource\",\"collectionName\":\"plan_resources\",\"foreignKey\":\"plan_resource_id\",\"name\":\"plan_resource\",\"macro\":\"belongs_to\",\"resource_name\":\"PlanResource\",\"through\":null},{\"className\":\"PlanResourcePeriodPrice\",\"collectionName\":\"plan_resource_period_prices\",\"foreignKey\":\"plan_resource_period_id\",\"name\":\"prices\",\"macro\":\"has_many\",\"resource_name\":\"PlanResourcePeriodPrice\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"plan_resource_id\",\"column\":{\"default\":null,\"name\":\"plan_resource_id\",\"null\":false,\"type\":null}},{\"name\":\"months\",\"column\":{\"default\":null,\"name\":\"months\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"PlanResource\",\"collectionName\":\"plan_resources\",\"foreignKey\":\"plan_resource_id\",\"name\":\"plan_resource\",\"macro\":\"belongs_to\",\"resource_name\":\"PlanResource\",\"through\":null},{\"className\":\"PlanResourcePeriodPrice\",\"collectionName\":\"plan_resource_period_prices\",\"foreignKey\":\"plan_resource_period_id\",\"name\":\"prices\",\"macro\":\"has_many\",\"resource_name\":\"PlanResourcePeriodPrice\",\"through\":null}],\"paramKey\":\"plan_resource_period\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"plan_resource\":{\"active_record\":{\"name\":\"PlanResourcePeriod\",\"primary_key\":\"id\"},\"class_name\":\"PlanResource\",\"foreign_key\":\"plan_resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"PlanResource\",\"type\":\"belongs_to\"},\"prices\":{\"active_record\":{\"name\":\"PlanResourcePeriod\",\"primary_key\":\"id\"},\"class_name\":\"PlanResourcePeriodPrice\",\"foreign_key\":\"plan_resource_period_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"PlanResourcePeriodPrice\",\"type\":\"has_many\"}}},\"PlanResource\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"plan_id\":{\"column\":{\"default\":null,\"name\":\"plan_id\",\"null\":false,\"type\":null},\"name\":\"plan_id\",\"selected_by_default\":null},\"resource_name\":{\"column\":{\"default\":null,\"name\":\"resource_name\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_name\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"plan_id\":{\"column\":{\"default\":null,\"name\":\"plan_id\",\"null\":false,\"type\":null},\"name\":\"plan_id\",\"selected_by_default\":null},\"resource_name\":{\"column\":{\"default\":null,\"name\":\"resource_name\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_name\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"PlanResource\",\"collectionKey\":\"plan_resources\",\"collectionName\":\"plan_resources\",\"i18nKey\":\"plan_resource\",\"camelizedLower\":\"planResource\",\"name\":\"PlanResource\",\"nameDasherized\":\"plan-resource\",\"pluralName\":\"plan_resources\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Plan\",\"collectionName\":\"plans\",\"foreignKey\":\"plan_id\",\"name\":\"plan\",\"macro\":\"belongs_to\",\"resource_name\":\"Plan\",\"through\":null},{\"className\":\"PlanResourcePeriod\",\"collectionName\":\"plan_resource_periods\",\"foreignKey\":\"plan_resource_id\",\"name\":\"periods\",\"macro\":\"has_many\",\"resource_name\":\"PlanResourcePeriod\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"plan_id\",\"column\":{\"default\":null,\"name\":\"plan_id\",\"null\":false,\"type\":null}},{\"name\":\"resource_name\",\"column\":{\"default\":null,\"name\":\"resource_name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"PlanResourcePeriod\",\"collectionName\":\"plan_resource_periods\",\"foreignKey\":\"plan_resource_id\",\"name\":\"periods\",\"macro\":\"has_many\",\"resource_name\":\"PlanResourcePeriod\",\"through\":null},{\"className\":\"Plan\",\"collectionName\":\"plans\",\"foreignKey\":\"plan_id\",\"name\":\"plan\",\"macro\":\"belongs_to\",\"resource_name\":\"Plan\",\"through\":null}],\"paramKey\":\"plan_resource\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"periods\":{\"active_record\":{\"name\":\"PlanResource\",\"primary_key\":\"id\"},\"class_name\":\"PlanResourcePeriod\",\"foreign_key\":\"plan_resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"PlanResourcePeriod\",\"type\":\"has_many\"},\"plan\":{\"active_record\":{\"name\":\"PlanResource\",\"primary_key\":\"id\"},\"class_name\":\"Plan\",\"foreign_key\":\"plan_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Plan\",\"type\":\"belongs_to\"}}},\"Role\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"translated_identifier\":{\"column\":null,\"name\":\"translated_identifier\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"translated_identifier\":{\"column\":null,\"name\":\"translated_identifier\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"Role\",\"collectionKey\":\"roles\",\"collectionName\":\"roles\",\"i18nKey\":\"role\",\"camelizedLower\":\"role\",\"name\":\"Role\",\"nameDasherized\":\"role\",\"pluralName\":\"roles\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Role::Translation\",\"collectionName\":null,\"foreignKey\":\"role_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Role::Translation\",\"collectionName\":null,\"foreignKey\":\"role_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"UserRole\",\"collectionName\":\"user_roles\",\"foreignKey\":\"role_id\",\"name\":\"user_roles\",\"macro\":\"has_many\",\"resource_name\":\"UserRole\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"UserRole\",\"collectionName\":\"user_roles\",\"foreignKey\":\"role_id\",\"name\":\"user_roles\",\"macro\":\"has_many\",\"resource_name\":\"UserRole\",\"through\":null}],\"paramKey\":\"role\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"user_roles\":{\"active_record\":{\"name\":\"Role\",\"primary_key\":\"id\"},\"class_name\":\"UserRole\",\"foreign_key\":\"role_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"UserRole\",\"type\":\"has_many\"}}},\"SchoolClassBrainBreak\":{\"attributes\":{\"brain_break_id\":{\"column\":{\"default\":null,\"name\":\"brain_break_id\",\"null\":false,\"type\":null},\"name\":\"brain_break_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"brain_break_id\":{\"column\":{\"default\":null,\"name\":\"brain_break_id\",\"null\":false,\"type\":null},\"name\":\"brain_break_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassBrainBreak\",\"collectionKey\":\"school_class_brain_breaks\",\"collectionName\":\"school_class_brain_breaks\",\"i18nKey\":\"school_class_brain_break\",\"camelizedLower\":\"schoolClassBrainBreak\",\"name\":\"SchoolClassBrainBreak\",\"nameDasherized\":\"school-class-brain-break\",\"pluralName\":\"school_class_brain_breaks\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"BrainBreak\",\"collectionName\":\"brain_breaks\",\"foreignKey\":\"brain_break_id\",\"name\":\"brain_break\",\"macro\":\"belongs_to\",\"resource_name\":\"BrainBreak\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"school_class_brain_break_id\",\"name\":\"team_surveys\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurvey\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"brain_break_id\",\"column\":{\"default\":null,\"name\":\"brain_break_id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"BrainBreak\",\"collectionName\":\"brain_breaks\",\"foreignKey\":\"brain_break_id\",\"name\":\"brain_break\",\"macro\":\"belongs_to\",\"resource_name\":\"BrainBreak\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"paramKey\":\"school_class_brain_break\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"brain_break\":{\"active_record\":{\"name\":\"SchoolClassBrainBreak\",\"primary_key\":\"id\"},\"class_name\":\"BrainBreak\",\"foreign_key\":\"brain_break_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"BrainBreak\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"SchoolClassBrainBreak\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"}}},\"SchoolClassChallenge\":{\"attributes\":{\"challenge_id\":{\"column\":{\"default\":null,\"name\":\"challenge_id\",\"null\":false,\"type\":null},\"name\":\"challenge_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"challenge_id\":{\"column\":{\"default\":null,\"name\":\"challenge_id\",\"null\":false,\"type\":null},\"name\":\"challenge_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassChallenge\",\"collectionKey\":\"school_class_challenges\",\"collectionName\":\"school_class_challenges\",\"i18nKey\":\"school_class_challenge\",\"camelizedLower\":\"schoolClassChallenge\",\"name\":\"SchoolClassChallenge\",\"nameDasherized\":\"school-class-challenge\",\"pluralName\":\"school_class_challenges\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Challenge\",\"collectionName\":\"challenges\",\"foreignKey\":\"challenge_id\",\"name\":\"challenge\",\"macro\":\"belongs_to\",\"resource_name\":\"Challenge\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"school_class_challenge_id\",\"name\":\"team_surveys\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurvey\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"challenge_id\",\"column\":{\"default\":null,\"name\":\"challenge_id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Challenge\",\"collectionName\":\"challenges\",\"foreignKey\":\"challenge_id\",\"name\":\"challenge\",\"macro\":\"belongs_to\",\"resource_name\":\"Challenge\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"paramKey\":\"school_class_challenge\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"challenge\":{\"active_record\":{\"name\":\"SchoolClassChallenge\",\"primary_key\":\"id\"},\"class_name\":\"Challenge\",\"foreign_key\":\"challenge_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Challenge\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"SchoolClassChallenge\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"}}},\"SchoolClassCheckIn\":{\"attributes\":{\"has_state_lobby\":{\"column\":null,\"name\":\"has_state_lobby\",\"selected_by_default\":null},\"has_state_cancelled\":{\"column\":null,\"name\":\"has_state_cancelled\",\"selected_by_default\":null},\"has_state_closed\":{\"column\":null,\"name\":\"has_state_closed\",\"selected_by_default\":null},\"state_may_cancel\":{\"column\":null,\"name\":\"state_may_cancel\",\"selected_by_default\":false},\"state_may_close\":{\"column\":null,\"name\":\"state_may_close\",\"selected_by_default\":false},\"check_in_id\":{\"column\":{\"default\":null,\"name\":\"check_in_id\",\"null\":false,\"type\":null},\"name\":\"check_in_id\",\"selected_by_default\":null},\"code\":{\"column\":{\"default\":null,\"name\":\"code\",\"null\":false,\"type\":\"string\"},\"name\":\"code\",\"selected_by_default\":null},\"completed_team_surveys_count\":{\"column\":{\"default\":\"0\",\"name\":\"completed_team_surveys_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"completed_team_surveys_count\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"lobby\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_lobby\":{\"column\":{\"default\":\"0\",\"name\":\"user_lobby\",\"null\":false,\"type\":\"boolean\"},\"name\":\"user_lobby\",\"selected_by_default\":null},\"qrcode_url_path\":{\"column\":null,\"name\":\"qrcode_url_path\",\"selected_by_default\":false}},\"collection_commands\":{\"code_lookup\":{\"name\":\"code_lookup\"},\"count_chart\":{\"name\":\"count_chart\"}},\"member_commands\":{\"close\":{\"name\":\"close\"}},\"model_class_data\":{\"attributes\":{\"has_state_lobby\":{\"column\":null,\"name\":\"has_state_lobby\",\"selected_by_default\":null},\"has_state_cancelled\":{\"column\":null,\"name\":\"has_state_cancelled\",\"selected_by_default\":null},\"has_state_closed\":{\"column\":null,\"name\":\"has_state_closed\",\"selected_by_default\":null},\"state_may_cancel\":{\"column\":null,\"name\":\"state_may_cancel\",\"selected_by_default\":false},\"state_may_close\":{\"column\":null,\"name\":\"state_may_close\",\"selected_by_default\":false},\"check_in_id\":{\"column\":{\"default\":null,\"name\":\"check_in_id\",\"null\":false,\"type\":null},\"name\":\"check_in_id\",\"selected_by_default\":null},\"code\":{\"column\":{\"default\":null,\"name\":\"code\",\"null\":false,\"type\":\"string\"},\"name\":\"code\",\"selected_by_default\":null},\"completed_team_surveys_count\":{\"column\":{\"default\":\"0\",\"name\":\"completed_team_surveys_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"completed_team_surveys_count\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"lobby\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_lobby\":{\"column\":{\"default\":\"0\",\"name\":\"user_lobby\",\"null\":false,\"type\":\"boolean\"},\"name\":\"user_lobby\",\"selected_by_default\":null},\"qrcode_url_path\":{\"column\":null,\"name\":\"qrcode_url_path\",\"selected_by_default\":false}},\"className\":\"SchoolClassCheckIn\",\"collectionKey\":\"school_class_check_ins\",\"collectionName\":\"school_class_check_ins\",\"i18nKey\":\"school_class_check_in\",\"camelizedLower\":\"schoolClassCheckIn\",\"name\":\"SchoolClassCheckIn\",\"nameDasherized\":\"school-class-check-in\",\"pluralName\":\"school_class_check_ins\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"CheckIn\",\"collectionName\":\"check_ins\",\"foreignKey\":\"check_in_id\",\"name\":\"check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"CheckIn\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"school_class_check_in_id\",\"name\":\"team_surveys\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurvey\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"school_class_check_in_id\",\"name\":\"users\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"has_one\",\"resource_name\":\"Survey\",\"through\":\"check_in\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null}},{\"name\":\"check_in_id\",\"column\":{\"default\":null,\"name\":\"check_in_id\",\"null\":false,\"type\":null}},{\"name\":\"state\",\"column\":{\"default\":\"lobby\",\"name\":\"state\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"code\",\"column\":{\"default\":null,\"name\":\"code\",\"null\":false,\"type\":\"string\"}},{\"name\":\"completed_team_surveys_count\",\"column\":{\"default\":\"0\",\"name\":\"completed_team_surveys_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"user_lobby\",\"column\":{\"default\":\"0\",\"name\":\"user_lobby\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"school_class_or_groups_eq_any\"}],\"relationships\":[{\"className\":\"CheckIn\",\"collectionName\":\"check_ins\",\"foreignKey\":\"check_in_id\",\"name\":\"check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"CheckIn\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"paramKey\":\"school_class_check_in\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"check_in\":{\"active_record\":{\"name\":\"SchoolClassCheckIn\",\"primary_key\":\"id\"},\"class_name\":\"CheckIn\",\"foreign_key\":\"check_in_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CheckIn\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"SchoolClassCheckIn\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"}}},\"SchoolClassContentPiece\":{\"attributes\":{\"content\":{\"column\":{\"default\":null,\"name\":\"content\",\"null\":true,\"type\":\"text\"},\"name\":\"content\",\"selected_by_default\":null},\"content_piece_type_id\":{\"column\":{\"default\":null,\"name\":\"content_piece_type_id\",\"null\":false,\"type\":null},\"name\":\"content_piece_type_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"content\":{\"column\":{\"default\":null,\"name\":\"content\",\"null\":true,\"type\":\"text\"},\"name\":\"content\",\"selected_by_default\":null},\"content_piece_type_id\":{\"column\":{\"default\":null,\"name\":\"content_piece_type_id\",\"null\":false,\"type\":null},\"name\":\"content_piece_type_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassContentPiece\",\"collectionKey\":\"school_class_content_pieces\",\"collectionName\":\"school_class_content_pieces\",\"i18nKey\":\"school_class_content_piece\",\"camelizedLower\":\"schoolClassContentPiece\",\"name\":\"SchoolClassContentPiece\",\"nameDasherized\":\"school-class-content-piece\",\"pluralName\":\"school_class_content_pieces\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ContentPieceType\",\"collectionName\":\"content_piece_types\",\"foreignKey\":\"content_piece_type_id\",\"name\":\"content_piece_type\",\"macro\":\"belongs_to\",\"resource_name\":\"ContentPieceType\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null}},{\"name\":\"content_piece_type_id\",\"column\":{\"default\":null,\"name\":\"content_piece_type_id\",\"null\":false,\"type\":null}},{\"name\":\"content\",\"column\":{\"default\":null,\"name\":\"content\",\"null\":true,\"type\":\"text\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"latest_for_school_class\"}],\"relationships\":[{\"className\":\"ContentPieceType\",\"collectionName\":\"content_piece_types\",\"foreignKey\":\"content_piece_type_id\",\"name\":\"content_piece_type\",\"macro\":\"belongs_to\",\"resource_name\":\"ContentPieceType\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"paramKey\":\"school_class_content_piece\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"content_piece_type\":{\"active_record\":{\"name\":\"SchoolClassContentPiece\",\"primary_key\":\"id\"},\"class_name\":\"ContentPieceType\",\"foreign_key\":\"content_piece_type_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ContentPieceType\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"SchoolClassContentPiece\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"}}},\"SchoolClassCourseModule\":{\"attributes\":{\"course_module_id\":{\"column\":{\"default\":null,\"name\":\"course_module_id\",\"null\":false,\"type\":null},\"name\":\"course_module_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_course_id\":{\"column\":{\"default\":null,\"name\":\"school_class_course_id\",\"null\":false,\"type\":null},\"name\":\"school_class_course_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"team_survey_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_id\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"course_module_id\":{\"column\":{\"default\":null,\"name\":\"course_module_id\",\"null\":false,\"type\":null},\"name\":\"course_module_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_course_id\":{\"column\":{\"default\":null,\"name\":\"school_class_course_id\",\"null\":false,\"type\":null},\"name\":\"school_class_course_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"team_survey_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_id\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassCourseModule\",\"collectionKey\":\"school_class_course_modules\",\"collectionName\":\"school_class_course_modules\",\"i18nKey\":\"school_class_course_module\",\"camelizedLower\":\"schoolClassCourseModule\",\"name\":\"SchoolClassCourseModule\",\"nameDasherized\":\"school-class-course-module\",\"pluralName\":\"school_class_course_modules\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClassCourse\",\"collectionName\":\"school_class_courses\",\"foreignKey\":\"school_class_course_id\",\"name\":\"school_class_course\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassCourse\",\"through\":null},{\"className\":\"CourseModule\",\"collectionName\":\"course_modules\",\"foreignKey\":\"course_module_id\",\"name\":\"course_module\",\"macro\":\"belongs_to\",\"resource_name\":\"CourseModule\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurvey\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClass\",\"through\":\"school_class_course\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_course_id\",\"column\":{\"default\":null,\"name\":\"school_class_course_id\",\"null\":false,\"type\":null}},{\"name\":\"course_module_id\",\"column\":{\"default\":null,\"name\":\"course_module_id\",\"null\":false,\"type\":null}},{\"name\":\"state\",\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"team_survey_id\",\"column\":{\"default\":null,\"name\":\"team_survey_id\",\"null\":false,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"CourseModule\",\"collectionName\":\"course_modules\",\"foreignKey\":\"course_module_id\",\"name\":\"course_module\",\"macro\":\"belongs_to\",\"resource_name\":\"CourseModule\",\"through\":null},{\"className\":\"SchoolClassCourse\",\"collectionName\":\"school_class_courses\",\"foreignKey\":\"school_class_course_id\",\"name\":\"school_class_course\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassCourse\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurvey\",\"through\":null}],\"paramKey\":\"school_class_course_module\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"course_module\":{\"active_record\":{\"name\":\"SchoolClassCourseModule\",\"primary_key\":\"id\"},\"class_name\":\"CourseModule\",\"foreign_key\":\"course_module_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CourseModule\",\"type\":\"belongs_to\"},\"school_class_course\":{\"active_record\":{\"name\":\"SchoolClassCourseModule\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassCourse\",\"foreign_key\":\"school_class_course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassCourse\",\"type\":\"belongs_to\"},\"team_survey\":{\"active_record\":{\"name\":\"SchoolClassCourseModule\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurvey\",\"foreign_key\":\"team_survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurvey\",\"type\":\"belongs_to\"}}},\"SchoolClassCourse\":{\"attributes\":{\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_course_modules_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_class_course_modules_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_class_course_modules_count\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{\"start_module\":{\"name\":\"start_module\"}},\"model_class_data\":{\"attributes\":{\"course_id\":{\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null},\"name\":\"course_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_course_modules_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_class_course_modules_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_class_course_modules_count\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassCourse\",\"collectionKey\":\"school_class_courses\",\"collectionName\":\"school_class_courses\",\"i18nKey\":\"school_class_course\",\"camelizedLower\":\"schoolClassCourse\",\"name\":\"SchoolClassCourse\",\"nameDasherized\":\"school-class-course\",\"pluralName\":\"school_class_courses\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"belongs_to\",\"resource_name\":\"Team\",\"through\":null},{\"className\":\"SchoolClassCourseModule\",\"collectionName\":\"school_class_course_modules\",\"foreignKey\":\"school_class_course_id\",\"name\":\"school_class_course_modules\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCourseModule\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"course_id\",\"column\":{\"default\":null,\"name\":\"course_id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"team_id\",\"column\":{\"default\":null,\"name\":\"team_id\",\"null\":false,\"type\":null}},{\"name\":\"state\",\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"}},{\"name\":\"school_class_course_modules_count\",\"column\":{\"default\":\"0\",\"name\":\"school_class_course_modules_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"course_id\",\"name\":\"course\",\"macro\":\"belongs_to\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"SchoolClassCourseModule\",\"collectionName\":\"school_class_course_modules\",\"foreignKey\":\"school_class_course_id\",\"name\":\"school_class_course_modules\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCourseModule\",\"through\":null}],\"paramKey\":\"school_class_course\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"course\":{\"active_record\":{\"name\":\"SchoolClassCourse\",\"primary_key\":\"id\"},\"class_name\":\"Course\",\"foreign_key\":\"course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Course\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"SchoolClassCourse\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"},\"school_class_course_modules\":{\"active_record\":{\"name\":\"SchoolClassCourse\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassCourseModule\",\"foreign_key\":\"school_class_course_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassCourseModule\",\"type\":\"has_many\"}}},\"SchoolClassGroupClassStep\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"school_class_group_id\":{\"column\":{\"default\":null,\"name\":\"school_class_group_id\",\"null\":false,\"type\":null},\"name\":\"school_class_group_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"school_class_group_id\":{\"column\":{\"default\":null,\"name\":\"school_class_group_id\",\"null\":false,\"type\":null},\"name\":\"school_class_group_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassGroupClassStep\",\"collectionKey\":\"school_class_group_class_steps\",\"collectionName\":\"school_class_group_class_steps\",\"i18nKey\":\"school_class_group_class_step\",\"camelizedLower\":\"schoolClassGroupClassStep\",\"name\":\"SchoolClassGroupClassStep\",\"nameDasherized\":\"school-class-group-class-step\",\"pluralName\":\"school_class_group_class_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null},{\"className\":\"SchoolClassGroup\",\"collectionName\":\"school_class_groups\",\"foreignKey\":\"school_class_group_id\",\"name\":\"school_class_group\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassGroup\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"class_step_id\",\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_group_id\",\"column\":{\"default\":null,\"name\":\"school_class_group_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null},{\"className\":\"SchoolClassGroup\",\"collectionName\":\"school_class_groups\",\"foreignKey\":\"school_class_group_id\",\"name\":\"school_class_group\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassGroup\",\"through\":null}],\"paramKey\":\"school_class_group_class_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"class_step\":{\"active_record\":{\"name\":\"SchoolClassGroupClassStep\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ClassStep\",\"type\":\"belongs_to\"},\"school_class_group\":{\"active_record\":{\"name\":\"SchoolClassGroupClassStep\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassGroup\",\"foreign_key\":\"school_class_group_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassGroup\",\"type\":\"belongs_to\"}}},\"SchoolClassGroup\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"SchoolClassGroup\",\"collectionKey\":\"school_class_groups\",\"collectionName\":\"school_class_groups\",\"i18nKey\":\"school_class_group\",\"camelizedLower\":\"schoolClassGroup\",\"name\":\"SchoolClassGroup\",\"nameDasherized\":\"school-class-group\",\"pluralName\":\"school_class_groups\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClassGroup::Translation\",\"collectionName\":null,\"foreignKey\":\"school_class_group_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"SchoolClassGroup::Translation\",\"collectionName\":null,\"foreignKey\":\"school_class_group_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ClassStatusExpansion\",\"collectionName\":\"class_status_expansions\",\"foreignKey\":\"resource_id\",\"name\":\"class_status_expansion\",\"macro\":\"has_many\",\"resource_name\":\"ClassStatusExpansion\",\"through\":null},{\"className\":\"SchoolClassGroupClassStep\",\"collectionName\":\"school_class_group_class_steps\",\"foreignKey\":\"school_class_group_id\",\"name\":\"school_class_group_class_steps\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassGroupClassStep\",\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"school_class_group_class_steps\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_steps\",\"macro\":\"has_many\",\"resource_name\":\"ClassStep\",\"through\":\"school_class_group_class_steps\"}],\"paramKey\":\"school_class_group\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"class_steps\":{\"active_record\":{\"name\":\"SchoolClassGroup\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"school_class_group_class_steps\"},\"resource_name\":\"ClassStep\",\"type\":\"has_many\"}}},\"SchoolClassInvitation\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"created_user_id\":{\"column\":{\"default\":null,\"name\":\"created_user_id\",\"null\":true,\"type\":null},\"name\":\"created_user_id\",\"selected_by_default\":null},\"email\":{\"column\":{\"default\":null,\"name\":\"email\",\"null\":false,\"type\":\"string\"},\"name\":\"email\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"invited_by_user_id\":{\"column\":{\"default\":null,\"name\":\"invited_by_user_id\",\"null\":false,\"type\":null},\"name\":\"invited_by_user_id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{\"accept\":{\"name\":\"accept\"},\"find_by_token\":{\"name\":\"find_by_token\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"created_user_id\":{\"column\":{\"default\":null,\"name\":\"created_user_id\",\"null\":true,\"type\":null},\"name\":\"created_user_id\",\"selected_by_default\":null},\"email\":{\"column\":{\"default\":null,\"name\":\"email\",\"null\":false,\"type\":\"string\"},\"name\":\"email\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"invited_by_user_id\":{\"column\":{\"default\":null,\"name\":\"invited_by_user_id\",\"null\":false,\"type\":null},\"name\":\"invited_by_user_id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SchoolClassInvitation\",\"collectionKey\":\"school_class_invitations\",\"collectionName\":\"school_class_invitations\",\"i18nKey\":\"school_class_invitation\",\"camelizedLower\":\"schoolClassInvitation\",\"name\":\"SchoolClassInvitation\",\"nameDasherized\":\"school-class-invitation\",\"pluralName\":\"school_class_invitations\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"invited_by_user_id\",\"name\":\"invited_by_user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"created_user_id\",\"name\":\"created_user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"existing_user_id\",\"name\":\"existing_user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"resource_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"resource_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"invited_by_user_id\",\"column\":{\"default\":null,\"name\":\"invited_by_user_id\",\"null\":false,\"type\":null}},{\"name\":\"created_user_id\",\"column\":{\"default\":null,\"name\":\"created_user_id\",\"null\":true,\"type\":null}},{\"name\":\"existing_user_id\",\"column\":{\"default\":null,\"name\":\"existing_user_id\",\"null\":true,\"type\":null}},{\"name\":\"email\",\"column\":{\"default\":null,\"name\":\"email\",\"null\":false,\"type\":\"string\"}},{\"name\":\"state\",\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"}},{\"name\":\"role\",\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"}},{\"name\":\"token\",\"column\":{\"default\":null,\"name\":\"token\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"created_user_id\",\"name\":\"created_user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"invited_by_user_id\",\"name\":\"invited_by_user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"resource_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"resource_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null}],\"paramKey\":\"school_class_invitation\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"created_user\":{\"active_record\":{\"name\":\"SchoolClassInvitation\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"created_user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"},\"invited_by_user\":{\"active_record\":{\"name\":\"SchoolClassInvitation\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"invited_by_user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"},\"school\":{\"active_record\":{\"name\":\"SchoolClassInvitation\",\"primary_key\":\"id\"},\"class_name\":\"School\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"School\",\"type\":\"belongs_to\"},\"school_class\":{\"active_record\":{\"name\":\"SchoolClassInvitation\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"}}},\"SchoolClass\":{\"attributes\":{\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":true,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"interpreted_name\":{\"column\":null,\"name\":\"interpreted_name\",\"selected_by_default\":null},\"school_class_check_ins_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_class_check_ins_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_class_check_ins_count\",\"selected_by_default\":null},\"school_id\":{\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null},\"name\":\"school_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"has_unicorn_subscription\":{\"column\":null,\"name\":\"has_unicorn_subscription\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{\"class_status_data\":{\"name\":\"class_status_data\"},\"create_new\":{\"name\":\"create_new\"},\"insights_top_score_factor\":{\"name\":\"insights_top_score_factor\"},\"school_leader_create\":{\"name\":\"school_leader_create\"}},\"member_commands\":{\"admin_destroy\":{\"name\":\"admin_destroy\"},\"create_check_in\":{\"name\":\"create_check_in\"},\"invite\":{\"name\":\"invite\"},\"random_brain_break\":{\"name\":\"random_brain_break\"},\"random_challenge\":{\"name\":\"random_challenge\"}},\"model_class_data\":{\"attributes\":{\"class_step_id\":{\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":true,\"type\":null},\"name\":\"class_step_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"interpreted_name\":{\"column\":null,\"name\":\"interpreted_name\",\"selected_by_default\":null},\"school_class_check_ins_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_class_check_ins_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_class_check_ins_count\",\"selected_by_default\":null},\"school_id\":{\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null},\"name\":\"school_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"has_unicorn_subscription\":{\"column\":null,\"name\":\"has_unicorn_subscription\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"SchoolClass\",\"collectionKey\":\"school_classes\",\"collectionName\":\"school_classes\",\"i18nKey\":\"school_class\",\"camelizedLower\":\"schoolClass\",\"name\":\"SchoolClass\",\"nameDasherized\":\"school-class\",\"pluralName\":\"school_classes\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClass::Translation\",\"collectionName\":null,\"foreignKey\":\"school_class_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"SchoolClass::Translation\",\"collectionName\":null,\"foreignKey\":\"school_class_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"school_class_id\",\"name\":\"audits_as_school_class\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClassBrainBreak\",\"collectionName\":\"school_class_brain_breaks\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_brain_breaks\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassBrainBreak\",\"through\":null},{\"className\":\"SchoolClassChallenge\",\"collectionName\":\"school_class_challenges\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_challenges\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassChallenge\",\"through\":null},{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_check_ins\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":null},{\"className\":\"SchoolClassContentPiece\",\"collectionName\":\"school_class_content_pieces\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_content_pieces\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassContentPiece\",\"through\":null},{\"className\":\"SchoolClassCourse\",\"collectionName\":\"school_class_courses\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_courses\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCourse\",\"through\":null},{\"className\":\"SchoolClassGroup\",\"collectionName\":\"school_class_groups\",\"foreignKey\":\"school_class_group_id\",\"name\":\"school_class_groups\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassGroup\",\"through\":\"class_step\"},{\"className\":\"SchoolClassInvitation\",\"collectionName\":\"school_class_invitations\",\"foreignKey\":\"resource_id\",\"name\":\"school_class_invitations\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassInvitation\",\"through\":null},{\"className\":\"SchoolClassRole\",\"collectionName\":\"school_class_roles\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassRole\",\"through\":null},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"resource_id\",\"name\":\"subscriptions\",\"macro\":\"has_many\",\"resource_name\":\"Subscription\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"pupils\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":\"school_class_roles\"},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"teachers\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":\"school_class_roles\"},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"school_class_id\",\"name\":\"teams\",\"macro\":\"has_many\",\"resource_name\":\"Team\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"old_legal_name\",\"column\":{\"default\":null,\"name\":\"old_legal_name\",\"null\":true,\"type\":\"string\"}},{\"name\":\"school_id\",\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"class_step_id\",\"column\":{\"default\":null,\"name\":\"class_step_id\",\"null\":true,\"type\":null}},{\"name\":\"school_class_check_ins_count\",\"column\":{\"default\":\"0\",\"name\":\"school_class_check_ins_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"with_active_subscription\"}],\"relationships\":[{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"belongs_to\",\"resource_name\":\"ClassStep\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_check_ins\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":null},{\"className\":\"SchoolClassRole\",\"collectionName\":\"school_class_roles\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassRole\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"teachers\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":\"school_class_roles\"}],\"paramKey\":\"school_class\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"class_step\":{\"active_record\":{\"name\":\"SchoolClass\",\"primary_key\":\"id\"},\"class_name\":\"ClassStep\",\"foreign_key\":\"class_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ClassStep\",\"type\":\"belongs_to\"},\"school\":{\"active_record\":{\"name\":\"SchoolClass\",\"primary_key\":\"id\"},\"class_name\":\"School\",\"foreign_key\":\"school_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"School\",\"type\":\"belongs_to\"},\"school_class_check_ins\":{\"active_record\":{\"name\":\"SchoolClass\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassCheckIn\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassCheckIn\",\"type\":\"has_many\"},\"school_class_roles\":{\"active_record\":{\"name\":\"SchoolClass\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassRole\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassRole\",\"type\":\"has_many\"},\"teachers\":{\"active_record\":{\"name\":\"SchoolClass\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"school_class_roles\"},\"resource_name\":\"User\",\"type\":\"has_many\"}}},\"SchoolClassRole\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role\":{\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"},\"name\":\"role\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"translated_role\":{\"column\":null,\"name\":\"translated_role\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{\"school_leader_create\":{\"name\":\"school_leader_create\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role\":{\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"},\"name\":\"role\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"translated_role\":{\"column\":null,\"name\":\"translated_role\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"SchoolClassRole\",\"collectionKey\":\"school_class_roles\",\"collectionName\":\"school_class_roles\",\"i18nKey\":\"school_class_role\",\"camelizedLower\":\"schoolClassRole\",\"name\":\"SchoolClassRole\",\"nameDasherized\":\"school-class-role\",\"pluralName\":\"school_class_roles\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"has_one\",\"resource_name\":\"School\",\"through\":\"school_class\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"role\",\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"school_class_role\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"school_class\":{\"active_record\":{\"name\":\"SchoolClassRole\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"},\"user\":{\"active_record\":{\"name\":\"SchoolClassRole\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"SchoolContactRequest\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{\"contact_my_school\":{\"name\":\"contact_my_school\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"SchoolContactRequest\",\"collectionKey\":\"school_contact_requests\",\"collectionName\":\"school_contact_requests\",\"i18nKey\":\"school_contact_request\",\"camelizedLower\":\"schoolContactRequest\",\"name\":\"SchoolContactRequest\",\"nameDasherized\":\"school-contact-request\",\"pluralName\":\"school_contact_requests\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"school_contact_request\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"user\":{\"active_record\":{\"name\":\"SchoolContactRequest\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"School\":{\"attributes\":{\"account_id\":{\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":true,\"type\":null},\"name\":\"account_id\",\"selected_by_default\":null},\"country_id\":{\"column\":{\"default\":null,\"name\":\"country_id\",\"null\":true,\"type\":null},\"name\":\"country_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"email\":{\"column\":{\"default\":null,\"name\":\"email\",\"null\":true,\"type\":\"string\"},\"name\":\"email\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"principal_name\":{\"column\":{\"default\":null,\"name\":\"principal_name\",\"null\":true,\"type\":\"string\"},\"name\":\"principal_name\",\"selected_by_default\":null},\"school_classes_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_classes_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_classes_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"institution_number\":{\"column\":{\"default\":null,\"name\":\"institution_number\",\"null\":true,\"type\":\"integer\"},\"name\":\"institution_number\",\"selected_by_default\":null},\"has_unicorn_subscription\":{\"column\":null,\"name\":\"has_unicorn_subscription\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{\"merge\":{\"name\":\"merge\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"account_id\":{\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":true,\"type\":null},\"name\":\"account_id\",\"selected_by_default\":null},\"country_id\":{\"column\":{\"default\":null,\"name\":\"country_id\",\"null\":true,\"type\":null},\"name\":\"country_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"email\":{\"column\":{\"default\":null,\"name\":\"email\",\"null\":true,\"type\":\"string\"},\"name\":\"email\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"principal_name\":{\"column\":{\"default\":null,\"name\":\"principal_name\",\"null\":true,\"type\":\"string\"},\"name\":\"principal_name\",\"selected_by_default\":null},\"school_classes_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_classes_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_classes_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"institution_number\":{\"column\":{\"default\":null,\"name\":\"institution_number\",\"null\":true,\"type\":\"integer\"},\"name\":\"institution_number\",\"selected_by_default\":null},\"has_unicorn_subscription\":{\"column\":null,\"name\":\"has_unicorn_subscription\",\"selected_by_default\":false},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"School\",\"collectionKey\":\"schools\",\"collectionName\":\"schools\",\"i18nKey\":\"school\",\"camelizedLower\":\"school\",\"name\":\"School\",\"nameDasherized\":\"school\",\"pluralName\":\"schools\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"School::Translation\",\"collectionName\":null,\"foreignKey\":\"school_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"School::Translation\",\"collectionName\":null,\"foreignKey\":\"school_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"account\",\"macro\":\"belongs_to\",\"resource_name\":\"Account\",\"through\":null},{\"className\":\"Country\",\"collectionName\":\"countries\",\"foreignKey\":\"country_id\",\"name\":\"country\",\"macro\":\"belongs_to\",\"resource_name\":\"Country\",\"through\":null},{\"className\":\"AccountSchool\",\"collectionName\":\"account_schools\",\"foreignKey\":\"school_id\",\"name\":\"account_schools\",\"macro\":\"has_many\",\"resource_name\":\"AccountSchool\",\"through\":null},{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"accounts\",\"macro\":\"has_many\",\"resource_name\":\"Account\",\"through\":\"account_schools\"},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"school_id\",\"name\":\"audits_as_school\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_id\",\"name\":\"school_classes\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"SchoolClassInvitation\",\"collectionName\":\"school_class_invitations\",\"foreignKey\":\"resource_id\",\"name\":\"school_class_invitations\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassInvitation\",\"through\":null},{\"className\":\"SchoolRole\",\"collectionName\":\"school_roles\",\"foreignKey\":\"school_id\",\"name\":\"school_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolRole\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"users\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":\"school_roles\"},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"school_leaders\",\"macro\":\"has_many\",\"resource_name\":\"User\",\"through\":\"school_roles\"},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"resource_id\",\"name\":\"subscriptions\",\"macro\":\"has_many\",\"resource_name\":\"Subscription\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"institution_number\",\"column\":{\"default\":null,\"name\":\"institution_number\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"account_id\",\"column\":{\"default\":null,\"name\":\"account_id\",\"null\":true,\"type\":null}},{\"name\":\"school_classes_count\",\"column\":{\"default\":\"0\",\"name\":\"school_classes_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"country_id\",\"column\":{\"default\":null,\"name\":\"country_id\",\"null\":true,\"type\":null}},{\"name\":\"email\",\"column\":{\"default\":null,\"name\":\"email\",\"null\":true,\"type\":\"string\"}},{\"name\":\"principal_name\",\"column\":{\"default\":null,\"name\":\"principal_name\",\"null\":true,\"type\":\"string\"}},{\"name\":\"swedish_institution_number\",\"column\":{\"default\":null,\"name\":\"swedish_institution_number\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"norwegian_institution_number\",\"column\":{\"default\":null,\"name\":\"norwegian_institution_number\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"with_active_subscription\"}],\"relationships\":[{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"account\",\"macro\":\"belongs_to\",\"resource_name\":\"Account\",\"through\":null},{\"className\":\"Country\",\"collectionName\":\"countries\",\"foreignKey\":\"country_id\",\"name\":\"country\",\"macro\":\"belongs_to\",\"resource_name\":\"Country\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_id\",\"name\":\"school_classes\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"SchoolRole\",\"collectionName\":\"school_roles\",\"foreignKey\":\"school_id\",\"name\":\"school_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolRole\",\"through\":null}],\"paramKey\":\"school\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"account\":{\"active_record\":{\"name\":\"School\",\"primary_key\":\"id\"},\"class_name\":\"Account\",\"foreign_key\":\"account_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Account\",\"type\":\"belongs_to\"},\"country\":{\"active_record\":{\"name\":\"School\",\"primary_key\":\"id\"},\"class_name\":\"Country\",\"foreign_key\":\"country_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Country\",\"type\":\"belongs_to\"},\"school_classes\":{\"active_record\":{\"name\":\"School\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"has_many\"},\"school_roles\":{\"active_record\":{\"name\":\"School\",\"primary_key\":\"id\"},\"class_name\":\"SchoolRole\",\"foreign_key\":\"school_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolRole\",\"type\":\"has_many\"}}},\"SchoolRole\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role\":{\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"},\"name\":\"role\",\"selected_by_default\":null},\"school_id\":{\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null},\"name\":\"school_id\",\"selected_by_default\":null},\"translated_role\":{\"column\":null,\"name\":\"translated_role\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role\":{\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"},\"name\":\"role\",\"selected_by_default\":null},\"school_id\":{\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null},\"name\":\"school_id\",\"selected_by_default\":null},\"translated_role\":{\"column\":null,\"name\":\"translated_role\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"SchoolRole\",\"collectionKey\":\"school_roles\",\"collectionName\":\"school_roles\",\"i18nKey\":\"school_role\",\"camelizedLower\":\"schoolRole\",\"name\":\"SchoolRole\",\"nameDasherized\":\"school-role\",\"pluralName\":\"school_roles\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"school_id\",\"column\":{\"default\":null,\"name\":\"school_id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"role\",\"column\":{\"default\":null,\"name\":\"role\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"school_role\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"school\":{\"active_record\":{\"name\":\"SchoolRole\",\"primary_key\":\"id\"},\"class_name\":\"School\",\"foreign_key\":\"school_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"School\",\"type\":\"belongs_to\"},\"user\":{\"active_record\":{\"name\":\"SchoolRole\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"ScoreFactorGroup\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"average\":{\"name\":\"average\"},\"average_over_days\":{\"name\":\"average_over_days\"},\"bar_chart_data\":{\"name\":\"bar_chart_data\"},\"tag_cloud\":{\"name\":\"tag_cloud\"}},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"ScoreFactorGroup\",\"collectionKey\":\"score_factor_groups\",\"collectionName\":\"score_factor_groups\",\"i18nKey\":\"score_factor_group\",\"camelizedLower\":\"scoreFactorGroup\",\"name\":\"ScoreFactorGroup\",\"nameDasherized\":\"score-factor-group\",\"pluralName\":\"score_factor_groups\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ScoreFactorGroupScoreFactor\",\"collectionName\":\"score_factor_group_score_factors\",\"foreignKey\":\"score_factor_group_id\",\"name\":\"score_factor_group_score_factors\",\"macro\":\"has_many\",\"resource_name\":\"ScoreFactorGroupScoreFactor\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factors\",\"macro\":\"has_many\",\"resource_name\":\"ScoreFactor\",\"through\":\"score_factor_group_score_factors\"},{\"className\":\"ScoreFactorGroup::Translation\",\"collectionName\":null,\"foreignKey\":\"score_factor_group_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"ScoreFactorGroup::Translation\",\"collectionName\":null,\"foreignKey\":\"score_factor_group_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factors\",\"macro\":\"has_many\",\"resource_name\":\"ScoreFactor\",\"through\":\"score_factor_group_score_factors\"}],\"paramKey\":\"score_factor_group\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"score_factors\":{\"active_record\":{\"name\":\"ScoreFactorGroup\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactor\",\"foreign_key\":\"score_factor_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"score_factor_group_score_factors\"},\"resource_name\":\"ScoreFactor\",\"type\":\"has_many\"}}},\"ScoreFactorGroupScoreFactor\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"score_factor_group_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_group_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_group_id\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"score_factor_group_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_group_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_group_id\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"ScoreFactorGroupScoreFactor\",\"collectionKey\":\"score_factor_group_score_factors\",\"collectionName\":\"score_factor_group_score_factors\",\"i18nKey\":\"score_factor_group_score_factor\",\"camelizedLower\":\"scoreFactorGroupScoreFactor\",\"name\":\"ScoreFactorGroupScoreFactor\",\"nameDasherized\":\"score-factor-group-score-factor\",\"pluralName\":\"score_factor_group_score_factors\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ScoreFactorGroup\",\"collectionName\":\"score_factor_groups\",\"foreignKey\":\"score_factor_group_id\",\"name\":\"score_factor_group\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactorGroup\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"score_factor_group_id\",\"column\":{\"default\":null,\"name\":\"score_factor_group_id\",\"null\":false,\"type\":null}},{\"name\":\"score_factor_id\",\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null},{\"className\":\"ScoreFactorGroup\",\"collectionName\":\"score_factor_groups\",\"foreignKey\":\"score_factor_group_id\",\"name\":\"score_factor_group\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactorGroup\",\"through\":null}],\"paramKey\":\"score_factor_group_score_factor\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"score_factor\":{\"active_record\":{\"name\":\"ScoreFactorGroupScoreFactor\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactor\",\"foreign_key\":\"score_factor_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ScoreFactor\",\"type\":\"belongs_to\"},\"score_factor_group\":{\"active_record\":{\"name\":\"ScoreFactorGroupScoreFactor\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactorGroup\",\"foreign_key\":\"score_factor_group_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ScoreFactorGroup\",\"type\":\"belongs_to\"}}},\"ScoreFactor\":{\"attributes\":{\"color\":{\"column\":{\"default\":null,\"name\":\"color\",\"null\":true,\"type\":\"string\"},\"name\":\"color\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"icon\":{\"column\":{\"default\":null,\"name\":\"icon\",\"null\":true,\"type\":\"string\"},\"name\":\"icon\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"secondary_color\":{\"column\":{\"default\":null,\"name\":\"secondary_color\",\"null\":true,\"type\":\"string\"},\"name\":\"secondary_color\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{\"mood_development_chart_data\":{\"name\":\"mood_development_chart_data\"}},\"member_commands\":{\"positive_negative_data\":{\"name\":\"positive_negative_data\"}},\"model_class_data\":{\"attributes\":{\"color\":{\"column\":{\"default\":null,\"name\":\"color\",\"null\":true,\"type\":\"string\"},\"name\":\"color\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"icon\":{\"column\":{\"default\":null,\"name\":\"icon\",\"null\":true,\"type\":\"string\"},\"name\":\"icon\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"secondary_color\":{\"column\":{\"default\":null,\"name\":\"secondary_color\",\"null\":true,\"type\":\"string\"},\"name\":\"secondary_color\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"ScoreFactor\",\"collectionKey\":\"score_factors\",\"collectionName\":\"score_factors\",\"i18nKey\":\"score_factor\",\"camelizedLower\":\"scoreFactor\",\"name\":\"ScoreFactor\",\"nameDasherized\":\"score-factor\",\"pluralName\":\"score_factors\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ScoreFactor::Translation\",\"collectionName\":null,\"foreignKey\":\"score_factor_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"ScoreFactor::Translation\",\"collectionName\":null,\"foreignKey\":\"score_factor_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Course\",\"collectionName\":\"courses\",\"foreignKey\":\"score_factor_id\",\"name\":\"courses\",\"macro\":\"has_many\",\"resource_name\":\"Course\",\"through\":null},{\"className\":\"CourseGroupCourse\",\"collectionName\":\"course_group_courses\",\"foreignKey\":\"score_factor_id\",\"name\":\"course_group_courses\",\"macro\":\"has_many\",\"resource_name\":\"CourseGroupCourse\",\"through\":null},{\"className\":\"ScoreFactorGroupScoreFactor\",\"collectionName\":\"score_factor_group_score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor_group_score_factors\",\"macro\":\"has_many\",\"resource_name\":\"ScoreFactorGroupScoreFactor\",\"through\":null},{\"className\":\"ScoreFactorGroup\",\"collectionName\":\"score_factor_groups\",\"foreignKey\":\"score_factor_group_id\",\"name\":\"score_factor_groups\",\"macro\":\"has_many\",\"resource_name\":\"ScoreFactorGroup\",\"through\":\"score_factor_group_score_factors\"},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"score_factor_id\",\"name\":\"survey_step_elements\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"SurveyStepElementOptionScore\",\"collectionName\":\"survey_step_element_option_scores\",\"foreignKey\":\"score_factor_id\",\"name\":\"survey_step_element_option_scores\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElementOptionScore\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"icon\",\"column\":{\"default\":null,\"name\":\"icon\",\"null\":true,\"type\":\"string\"}},{\"name\":\"color\",\"column\":{\"default\":null,\"name\":\"color\",\"null\":true,\"type\":\"string\"}},{\"name\":\"secondary_color\",\"column\":{\"default\":null,\"name\":\"secondary_color\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"score_factor\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"Styling\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"styling\":{\"column\":{\"default\":null,\"name\":\"styling\",\"null\":true,\"type\":\"text\"},\"name\":\"styling\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"styling\":{\"column\":{\"default\":null,\"name\":\"styling\",\"null\":true,\"type\":\"text\"},\"name\":\"styling\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Styling\",\"collectionKey\":\"stylings\",\"collectionName\":\"stylings\",\"i18nKey\":\"styling\",\"camelizedLower\":\"styling\",\"name\":\"Styling\",\"nameDasherized\":\"styling\",\"pluralName\":\"stylings\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Styling::Translation\",\"collectionName\":null,\"foreignKey\":\"styling_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Styling::Translation\",\"collectionName\":null,\"foreignKey\":\"styling_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ContentAbsoluteContainer\",\"collectionName\":\"content_absolute_containers\",\"foreignKey\":\"styling_id\",\"name\":\"content_absolute_containers\",\"macro\":\"has_many\",\"resource_name\":\"ContentAbsoluteContainer\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"styling\",\"column\":{\"default\":null,\"name\":\"styling\",\"null\":true,\"type\":\"text\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"styling\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"SubscriptionPeriod\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"ends_at\":{\"column\":{\"default\":null,\"name\":\"ends_at\",\"null\":false,\"type\":\"date\"},\"name\":\"ends_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":null},\"starts_at\":{\"column\":{\"default\":null,\"name\":\"starts_at\",\"null\":false,\"type\":\"date\"},\"name\":\"starts_at\",\"selected_by_default\":null},\"subscription_id\":{\"column\":{\"default\":null,\"name\":\"subscription_id\",\"null\":false,\"type\":null},\"name\":\"subscription_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"ends_at\":{\"column\":{\"default\":null,\"name\":\"ends_at\",\"null\":false,\"type\":\"date\"},\"name\":\"ends_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":null},\"starts_at\":{\"column\":{\"default\":null,\"name\":\"starts_at\",\"null\":false,\"type\":\"date\"},\"name\":\"starts_at\",\"selected_by_default\":null},\"subscription_id\":{\"column\":{\"default\":null,\"name\":\"subscription_id\",\"null\":false,\"type\":null},\"name\":\"subscription_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SubscriptionPeriod\",\"collectionKey\":\"subscription_periods\",\"collectionName\":\"subscription_periods\",\"i18nKey\":\"subscription_period\",\"camelizedLower\":\"subscriptionPeriod\",\"name\":\"SubscriptionPeriod\",\"nameDasherized\":\"subscription-period\",\"pluralName\":\"subscription_periods\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"subscription_id\",\"name\":\"subscription\",\"macro\":\"belongs_to\",\"resource_name\":\"Subscription\",\"through\":null},{\"className\":\"Invoice\",\"collectionName\":\"invoices\",\"foreignKey\":\"resource_id\",\"name\":\"invoice\",\"macro\":\"has_one\",\"resource_name\":\"Invoice\",\"through\":null},{\"className\":\"Plan\",\"collectionName\":\"plans\",\"foreignKey\":\"plan_id\",\"name\":\"plan\",\"macro\":\"has_one\",\"resource_name\":\"Plan\",\"through\":\"subscription\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"subscription_id\",\"column\":{\"default\":null,\"name\":\"subscription_id\",\"null\":false,\"type\":null}},{\"name\":\"starts_at\",\"column\":{\"default\":null,\"name\":\"starts_at\",\"null\":false,\"type\":\"date\"}},{\"name\":\"ends_at\",\"column\":{\"default\":null,\"name\":\"ends_at\",\"null\":false,\"type\":\"date\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Invoice\",\"collectionName\":\"invoices\",\"foreignKey\":\"resource_id\",\"name\":\"invoice\",\"macro\":\"has_one\",\"resource_name\":\"Invoice\",\"through\":null},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"subscription_id\",\"name\":\"subscription\",\"macro\":\"belongs_to\",\"resource_name\":\"Subscription\",\"through\":null}],\"paramKey\":\"subscription_period\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"invoice\":{\"active_record\":{\"name\":\"SubscriptionPeriod\",\"primary_key\":\"id\"},\"class_name\":\"Invoice\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"resource\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Invoice\",\"type\":\"has_one\"},\"subscription\":{\"active_record\":{\"name\":\"SubscriptionPeriod\",\"primary_key\":\"id\"},\"class_name\":\"Subscription\",\"foreign_key\":\"subscription_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Subscription\",\"type\":\"belongs_to\"}}},\"Subscription\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"plan_id\":{\"column\":{\"default\":null,\"name\":\"plan_id\",\"null\":false,\"type\":null},\"name\":\"plan_id\",\"selected_by_default\":null},\"price\":{\"column\":null,\"name\":\"price\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"resource\":{\"column\":null,\"name\":\"resource\",\"selected_by_default\":false}},\"collection_commands\":{\"has_unicorn\":{\"name\":\"has_unicorn\"},\"start_unicorn_user_trial\":{\"name\":\"start_unicorn_user_trial\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"plan_id\":{\"column\":{\"default\":null,\"name\":\"plan_id\",\"null\":false,\"type\":null},\"name\":\"plan_id\",\"selected_by_default\":null},\"price\":{\"column\":null,\"name\":\"price\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"resource\":{\"column\":null,\"name\":\"resource\",\"selected_by_default\":false}},\"className\":\"Subscription\",\"collectionKey\":\"subscriptions\",\"collectionName\":\"subscriptions\",\"i18nKey\":\"subscription\",\"camelizedLower\":\"subscription\",\"name\":\"Subscription\",\"nameDasherized\":\"subscription\",\"pluralName\":\"subscriptions\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Plan\",\"collectionName\":\"plans\",\"foreignKey\":\"plan_id\",\"name\":\"plan\",\"macro\":\"belongs_to\",\"resource_name\":\"Plan\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"resource_id\",\"name\":\"school\",\"macro\":\"belongs_to\",\"resource_name\":\"School\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"resource_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"resource_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null},{\"className\":\"SubscriptionPeriod\",\"collectionName\":\"subscription_periods\",\"foreignKey\":\"subscription_id\",\"name\":\"subscription_periods\",\"macro\":\"has_many\",\"resource_name\":\"SubscriptionPeriod\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"plan_id\",\"column\":{\"default\":null,\"name\":\"plan_id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"price_cents\",\"column\":{\"default\":\"0\",\"name\":\"price_cents\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"price_currency\",\"column\":{\"default\":\"USD\",\"name\":\"price_currency\",\"null\":false,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"with_active_period\"},{\"name\":\"without_active_period\"}],\"relationships\":[{\"className\":\"Plan\",\"collectionName\":\"plans\",\"foreignKey\":\"plan_id\",\"name\":\"plan\",\"macro\":\"belongs_to\",\"resource_name\":\"Plan\",\"through\":null}],\"paramKey\":\"subscription\",\"primaryKey\":\"id\"},\"monetized_attributes\":[{\"name\":\"price\"}],\"relationships\":{\"plan\":{\"active_record\":{\"name\":\"Subscription\",\"primary_key\":\"id\"},\"class_name\":\"Plan\",\"foreign_key\":\"plan_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Plan\",\"type\":\"belongs_to\"}}},\"Survey\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"survey_steps_count\":{\"column\":{\"default\":\"0\",\"name\":\"survey_steps_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"survey_steps_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"clone\":{\"name\":\"clone\"}},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"survey_steps_count\":{\"column\":{\"default\":\"0\",\"name\":\"survey_steps_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"survey_steps_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"Survey\",\"collectionKey\":\"surveys\",\"collectionName\":\"surveys\",\"i18nKey\":\"survey\",\"camelizedLower\":\"survey\",\"name\":\"Survey\",\"nameDasherized\":\"survey\",\"pluralName\":\"surveys\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Survey::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"Survey::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"BrainBreak\",\"collectionName\":\"brain_breaks\",\"foreignKey\":\"survey_id\",\"name\":\"brain_breaks\",\"macro\":\"has_many\",\"resource_name\":\"BrainBreak\",\"through\":null},{\"className\":\"Challenge\",\"collectionName\":\"challenges\",\"foreignKey\":\"survey_id\",\"name\":\"challenges\",\"macro\":\"has_many\",\"resource_name\":\"Challenge\",\"through\":null},{\"className\":\"CheckIn\",\"collectionName\":\"check_ins\",\"foreignKey\":\"survey_id\",\"name\":\"check_ins\",\"macro\":\"has_many\",\"resource_name\":\"CheckIn\",\"through\":null},{\"className\":\"CourseModule\",\"collectionName\":\"course_modules\",\"foreignKey\":\"survey_id\",\"name\":\"course_modules\",\"macro\":\"has_many\",\"resource_name\":\"CourseModule\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_id\",\"name\":\"steps\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStep\",\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_id\",\"name\":\"elements\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElement\",\"through\":\"steps\"},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"survey_id\",\"name\":\"team_surveys\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurvey\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"survey_steps_count\",\"column\":{\"default\":\"0\",\"name\":\"survey_steps_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"CheckIn\",\"collectionName\":\"check_ins\",\"foreignKey\":\"survey_id\",\"name\":\"check_ins\",\"macro\":\"has_many\",\"resource_name\":\"CheckIn\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_id\",\"name\":\"steps\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStep\",\"through\":null}],\"paramKey\":\"survey\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"check_ins\":{\"active_record\":{\"name\":\"Survey\",\"primary_key\":\"id\"},\"class_name\":\"CheckIn\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"CheckIn\",\"type\":\"has_many\"},\"steps\":{\"active_record\":{\"name\":\"Survey\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStep\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStep\",\"type\":\"has_many\"}}},\"SurveyStepElementOption\":{\"attributes\":{\"image_content_type\":{\"column\":null,\"name\":\"image_content_type\",\"selected_by_default\":false},\"image_url\":{\"column\":null,\"name\":\"image_url\",\"selected_by_default\":false},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"font_awesome_icon\":{\"column\":{\"default\":null,\"name\":\"font_awesome_icon\",\"null\":true,\"type\":\"string\"},\"name\":\"font_awesome_icon\",\"selected_by_default\":null},\"hide_label\":{\"column\":{\"default\":\"0\",\"name\":\"hide_label\",\"null\":false,\"type\":\"boolean\"},\"name\":\"hide_label\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"survey_step_element_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_element_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"image_content_type\":{\"column\":null,\"name\":\"image_content_type\",\"selected_by_default\":false},\"image_url\":{\"column\":null,\"name\":\"image_url\",\"selected_by_default\":false},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"font_awesome_icon\":{\"column\":{\"default\":null,\"name\":\"font_awesome_icon\",\"null\":true,\"type\":\"string\"},\"name\":\"font_awesome_icon\",\"selected_by_default\":null},\"hide_label\":{\"column\":{\"default\":\"0\",\"name\":\"hide_label\",\"null\":false,\"type\":\"boolean\"},\"name\":\"hide_label\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"survey_step_element_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_element_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"SurveyStepElementOption\",\"collectionKey\":\"survey_step_element_options\",\"collectionName\":\"survey_step_element_options\",\"i18nKey\":\"survey_step_element_option\",\"camelizedLower\":\"surveyStepElementOption\",\"name\":\"SurveyStepElementOption\",\"nameDasherized\":\"survey-step-element-option\",\"pluralName\":\"survey_step_element_options\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SurveyStepElementOption::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"SurveyStepElementOption::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"element\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"TeamSurveyStepElementAnswer\",\"collectionName\":\"team_survey_step_element_answers\",\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"answers\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElementAnswer\",\"through\":null},{\"className\":\"SurveyStepElementOptionScore\",\"collectionName\":\"survey_step_element_option_scores\",\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"scores\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElementOptionScore\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"step\",\"macro\":\"has_one\",\"resource_name\":\"SurveyStep\",\"through\":\"element\"},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"has_one\",\"resource_name\":\"Survey\",\"through\":\"step\"},{\"className\":\"ActiveStorage::Attachment\",\"collectionName\":null,\"foreignKey\":\"record_id\",\"name\":\"image_attachment\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ActiveStorage::Blob\",\"collectionName\":null,\"foreignKey\":\"blob_id\",\"name\":\"image_blob\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":\"image_attachment\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_step_element_id\",\"column\":{\"default\":null,\"name\":\"survey_step_element_id\",\"null\":false,\"type\":null}},{\"name\":\"position\",\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"hide_label\",\"column\":{\"default\":\"0\",\"name\":\"hide_label\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"font_awesome_icon\",\"column\":{\"default\":null,\"name\":\"font_awesome_icon\",\"null\":true,\"type\":\"string\"}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"element\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElement\",\"through\":null}],\"paramKey\":\"survey_step_element_option\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"element\":{\"active_record\":{\"name\":\"SurveyStepElementOption\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStepElement\",\"foreign_key\":\"survey_step_element_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStepElement\",\"type\":\"belongs_to\"}}},\"SurveyStepElementOptionScore\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"score\":{\"column\":{\"default\":null,\"name\":\"score\",\"null\":false,\"type\":\"integer\"},\"name\":\"score\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"survey_step_element_option_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_option_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_element_option_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"score\":{\"column\":{\"default\":null,\"name\":\"score\",\"null\":false,\"type\":\"integer\"},\"name\":\"score\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"survey_step_element_option_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_option_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_element_option_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"SurveyStepElementOptionScore\",\"collectionKey\":\"survey_step_element_option_scores\",\"collectionName\":\"survey_step_element_option_scores\",\"i18nKey\":\"survey_step_element_option_score\",\"camelizedLower\":\"surveyStepElementOptionScore\",\"name\":\"SurveyStepElementOptionScore\",\"nameDasherized\":\"survey-step-element-option-score\",\"pluralName\":\"survey_step_element_option_scores\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SurveyStepElementOption\",\"collectionName\":\"survey_step_element_options\",\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"option\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElementOption\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_step_element_option_id\",\"column\":{\"default\":null,\"name\":\"survey_step_element_option_id\",\"null\":false,\"type\":null}},{\"name\":\"score_factor_id\",\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":false,\"type\":null}},{\"name\":\"score\",\"column\":{\"default\":null,\"name\":\"score\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SurveyStepElementOption\",\"collectionName\":\"survey_step_element_options\",\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"option\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElementOption\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null}],\"paramKey\":\"survey_step_element_option_score\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"option\":{\"active_record\":{\"name\":\"SurveyStepElementOptionScore\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStepElementOption\",\"foreign_key\":\"survey_step_element_option_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStepElementOption\",\"type\":\"belongs_to\"},\"score_factor\":{\"active_record\":{\"name\":\"SurveyStepElementOptionScore\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactor\",\"foreign_key\":\"score_factor_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ScoreFactor\",\"type\":\"belongs_to\"}}},\"SurveyStepElement\":{\"attributes\":{\"content\":{\"column\":null,\"name\":\"content\",\"selected_by_default\":null},\"content_piece_type_id\":{\"column\":{\"default\":null,\"name\":\"content_piece_type_id\",\"null\":true,\"type\":null},\"name\":\"content_piece_type_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"editable\":{\"column\":{\"default\":\"1\",\"name\":\"editable\",\"null\":false,\"type\":\"boolean\"},\"name\":\"editable\",\"selected_by_default\":null},\"element_type\":{\"column\":{\"default\":null,\"name\":\"element_type\",\"null\":false,\"type\":\"string\"},\"name\":\"element_type\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"min_choices\":{\"column\":{\"default\":null,\"name\":\"min_choices\",\"null\":true,\"type\":\"integer\"},\"name\":\"min_choices\",\"selected_by_default\":null},\"max_choices\":{\"column\":{\"default\":null,\"name\":\"max_choices\",\"null\":true,\"type\":\"integer\"},\"name\":\"max_choices\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":true,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"survey_step_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_id\",\"selected_by_default\":null},\"translated_element_type\":{\"column\":null,\"name\":\"translated_element_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false},\"parsed_main_content\":{\"column\":null,\"name\":\"parsed_main_content\",\"selected_by_default\":false},\"main_content\":{\"column\":null,\"name\":\"main_content\",\"selected_by_default\":false},\"main_content_da\":{\"column\":null,\"name\":\"main_content_da\",\"selected_by_default\":false},\"main_content_en\":{\"column\":null,\"name\":\"main_content_en\",\"selected_by_default\":false},\"main_content_no\":{\"column\":null,\"name\":\"main_content_no\",\"selected_by_default\":false},\"main_content_se\":{\"column\":null,\"name\":\"main_content_se\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"admin_preview\":{\"name\":\"admin_preview\"}},\"model_class_data\":{\"attributes\":{\"content\":{\"column\":null,\"name\":\"content\",\"selected_by_default\":null},\"content_piece_type_id\":{\"column\":{\"default\":null,\"name\":\"content_piece_type_id\",\"null\":true,\"type\":null},\"name\":\"content_piece_type_id\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"editable\":{\"column\":{\"default\":\"1\",\"name\":\"editable\",\"null\":false,\"type\":\"boolean\"},\"name\":\"editable\",\"selected_by_default\":null},\"element_type\":{\"column\":{\"default\":null,\"name\":\"element_type\",\"null\":false,\"type\":\"string\"},\"name\":\"element_type\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"min_choices\":{\"column\":{\"default\":null,\"name\":\"min_choices\",\"null\":true,\"type\":\"integer\"},\"name\":\"min_choices\",\"selected_by_default\":null},\"max_choices\":{\"column\":{\"default\":null,\"name\":\"max_choices\",\"null\":true,\"type\":\"integer\"},\"name\":\"max_choices\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"score_factor_id\":{\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":true,\"type\":null},\"name\":\"score_factor_id\",\"selected_by_default\":null},\"survey_step_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_id\",\"selected_by_default\":null},\"translated_element_type\":{\"column\":null,\"name\":\"translated_element_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false},\"parsed_main_content\":{\"column\":null,\"name\":\"parsed_main_content\",\"selected_by_default\":false},\"main_content\":{\"column\":null,\"name\":\"main_content\",\"selected_by_default\":false},\"main_content_da\":{\"column\":null,\"name\":\"main_content_da\",\"selected_by_default\":false},\"main_content_en\":{\"column\":null,\"name\":\"main_content_en\",\"selected_by_default\":false},\"main_content_no\":{\"column\":null,\"name\":\"main_content_no\",\"selected_by_default\":false},\"main_content_se\":{\"column\":null,\"name\":\"main_content_se\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"SurveyStepElement\",\"collectionKey\":\"survey_step_elements\",\"collectionName\":\"survey_step_elements\",\"i18nKey\":\"survey_step_element\",\"camelizedLower\":\"surveyStepElement\",\"name\":\"SurveyStepElement\",\"nameDasherized\":\"survey-step-element\",\"pluralName\":\"survey_step_elements\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"content_model\",\"macro\":\"has_one\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"contents\",\"macro\":\"has_many\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"SurveyStepElement::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_step_element_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"SurveyStepElement::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_step_element_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ContentPieceType\",\"collectionName\":\"content_piece_types\",\"foreignKey\":\"content_piece_type_id\",\"name\":\"content_piece_type\",\"macro\":\"belongs_to\",\"resource_name\":\"ContentPieceType\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"step\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStep\",\"through\":null},{\"className\":\"SurveyStepElementOption\",\"collectionName\":\"survey_step_element_options\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"options\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElementOption\",\"through\":null},{\"className\":\"TeamSurveyStepElement\",\"collectionName\":\"team_survey_step_elements\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"team_survey_step_elements\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElement\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"has_one\",\"resource_name\":\"Survey\",\"through\":\"step\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_step_id\",\"column\":{\"default\":null,\"name\":\"survey_step_id\",\"null\":false,\"type\":null}},{\"name\":\"element_type\",\"column\":{\"default\":null,\"name\":\"element_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"min_choices\",\"column\":{\"default\":null,\"name\":\"min_choices\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"max_choices\",\"column\":{\"default\":null,\"name\":\"max_choices\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"position\",\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"score_factor_id\",\"column\":{\"default\":null,\"name\":\"score_factor_id\",\"null\":true,\"type\":null}},{\"name\":\"content_piece_type_id\",\"column\":{\"default\":null,\"name\":\"content_piece_type_id\",\"null\":true,\"type\":null}},{\"name\":\"editable\",\"column\":{\"default\":\"1\",\"name\":\"editable\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"content_model\",\"macro\":\"has_one\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"ContentPieceType\",\"collectionName\":\"content_piece_types\",\"foreignKey\":\"content_piece_type_id\",\"name\":\"content_piece_type\",\"macro\":\"belongs_to\",\"resource_name\":\"ContentPieceType\",\"through\":null},{\"className\":\"Content\",\"collectionName\":\"contents\",\"foreignKey\":\"resource_id\",\"name\":\"contents\",\"macro\":\"has_many\",\"resource_name\":\"Content\",\"through\":null},{\"className\":\"SurveyStepElementOption\",\"collectionName\":\"survey_step_element_options\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"options\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElementOption\",\"through\":null},{\"className\":\"ScoreFactor\",\"collectionName\":\"score_factors\",\"foreignKey\":\"score_factor_id\",\"name\":\"score_factor\",\"macro\":\"belongs_to\",\"resource_name\":\"ScoreFactor\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"step\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStep\",\"through\":null}],\"paramKey\":\"survey_step_element\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"content_model\":{\"active_record\":{\"name\":\"SurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"Content\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"resource\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Content\",\"type\":\"has_one\"},\"content_piece_type\":{\"active_record\":{\"name\":\"SurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"ContentPieceType\",\"foreign_key\":\"content_piece_type_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ContentPieceType\",\"type\":\"belongs_to\"},\"contents\":{\"active_record\":{\"name\":\"SurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"Content\",\"foreign_key\":\"resource_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"resource\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Content\",\"type\":\"has_many\"},\"options\":{\"active_record\":{\"name\":\"SurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStepElementOption\",\"foreign_key\":\"survey_step_element_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStepElementOption\",\"type\":\"has_many\"},\"score_factor\":{\"active_record\":{\"name\":\"SurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"ScoreFactor\",\"foreign_key\":\"score_factor_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"ScoreFactor\",\"type\":\"belongs_to\"},\"step\":{\"active_record\":{\"name\":\"SurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStep\",\"foreign_key\":\"survey_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStep\",\"type\":\"belongs_to\"}}},\"SurveyStep\":{\"attributes\":{\"copyable\":{\"column\":{\"default\":\"0\",\"name\":\"copyable\",\"null\":false,\"type\":\"boolean\"},\"name\":\"copyable\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"survey_step_elements_count\":{\"column\":{\"default\":\"0\",\"name\":\"survey_step_elements_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"survey_step_elements_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{\"copy\":{\"name\":\"copy\"}},\"model_class_data\":{\"attributes\":{\"copyable\":{\"column\":{\"default\":\"0\",\"name\":\"copyable\",\"null\":false,\"type\":\"boolean\"},\"name\":\"copyable\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"survey_step_elements_count\":{\"column\":{\"default\":\"0\",\"name\":\"survey_step_elements_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"survey_step_elements_count\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":false},\"name_da\":{\"column\":null,\"name\":\"name_da\",\"selected_by_default\":false},\"name_en\":{\"column\":null,\"name\":\"name_en\",\"selected_by_default\":false},\"name_no\":{\"column\":null,\"name\":\"name_no\",\"selected_by_default\":false},\"name_se\":{\"column\":null,\"name\":\"name_se\",\"selected_by_default\":false}},\"className\":\"SurveyStep\",\"collectionKey\":\"survey_steps\",\"collectionName\":\"survey_steps\",\"i18nKey\":\"survey_step\",\"camelizedLower\":\"surveyStep\",\"name\":\"SurveyStep\",\"nameDasherized\":\"survey-step\",\"pluralName\":\"survey_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SurveyStep::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_step_id\",\"name\":\"translations\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"SurveyStep::Translation\",\"collectionName\":null,\"foreignKey\":\"survey_step_id\",\"name\":\"current_translation\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_id\",\"name\":\"elements\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"TeamSurveyStep\",\"collectionName\":\"team_survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"team_survey_steps\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStep\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"survey_id\",\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null}},{\"name\":\"position\",\"column\":{\"default\":\"0\",\"name\":\"position\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"survey_step_elements_count\",\"column\":{\"default\":\"0\",\"name\":\"survey_step_elements_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"copyable\",\"column\":{\"default\":\"0\",\"name\":\"copyable\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_id\",\"name\":\"elements\",\"macro\":\"has_many\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null}],\"paramKey\":\"survey_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"elements\":{\"active_record\":{\"name\":\"SurveyStep\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStepElement\",\"foreign_key\":\"survey_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStepElement\",\"type\":\"has_many\"},\"survey\":{\"active_record\":{\"name\":\"SurveyStep\",\"primary_key\":\"id\"},\"class_name\":\"Survey\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Survey\",\"type\":\"belongs_to\"}}},\"TableSearch\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"query_params\":{\"column\":{\"default\":null,\"name\":\"query_params\",\"null\":false,\"type\":\"text\"},\"name\":\"query_params\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":true,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null},\"user_type\":{\"column\":{\"default\":null,\"name\":\"user_type\",\"null\":true,\"type\":\"string\"},\"name\":\"user_type\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"name\":{\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"},\"name\":\"name\",\"selected_by_default\":null},\"query_params\":{\"column\":{\"default\":null,\"name\":\"query_params\",\"null\":false,\"type\":\"text\"},\"name\":\"query_params\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":true,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null},\"user_type\":{\"column\":{\"default\":null,\"name\":\"user_type\",\"null\":true,\"type\":\"string\"},\"name\":\"user_type\",\"selected_by_default\":null}},\"className\":\"ApiMakerTable::TableSearch\",\"collectionKey\":\"api_maker_table/table_searches\",\"collectionName\":\"table_searches\",\"i18nKey\":\"api_maker_table/table_search\",\"camelizedLower\":\"apiMakerTable::TableSearch\",\"name\":\"TableSearch\",\"nameDasherized\":\"table-search\",\"pluralName\":\"api_maker_table_table_searches\",\"ransackable_associations\":[{\"className\":\"User\",\"collectionName\":null,\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"NewsletterTemplateTableSearch\",\"collectionName\":\"newsletter_template_table_searches\",\"foreignKey\":\"table_search_id\",\"name\":\"newsletter_template_table_searches\",\"macro\":\"has_many\",\"resource_name\":\"NewsletterTemplateTableSearch\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"name\",\"column\":{\"default\":null,\"name\":\"name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"query_params\",\"column\":{\"default\":null,\"name\":\"query_params\",\"null\":false,\"type\":\"text\"}},{\"name\":\"user_type\",\"column\":{\"default\":null,\"name\":\"user_type\",\"null\":true,\"type\":\"string\"}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":true,\"type\":null}},{\"name\":\"public\",\"column\":{\"default\":\"0\",\"name\":\"public\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"table_search\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"TableSettingColumn\":{\"attributes\":{\"attribute_name\":{\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":true,\"type\":\"string\"},\"name\":\"attribute_name\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"path\":{\"column\":{\"default\":null,\"name\":\"path\",\"null\":true,\"type\":\"text\"},\"name\":\"path\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":null,\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"sort_key\":{\"column\":{\"default\":null,\"name\":\"sort_key\",\"null\":true,\"type\":\"string\"},\"name\":\"sort_key\",\"selected_by_default\":null},\"visible\":{\"column\":{\"default\":null,\"name\":\"visible\",\"null\":true,\"type\":\"boolean\"},\"name\":\"visible\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"attribute_name\":{\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":true,\"type\":\"string\"},\"name\":\"attribute_name\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null},\"path\":{\"column\":{\"default\":null,\"name\":\"path\",\"null\":true,\"type\":\"text\"},\"name\":\"path\",\"selected_by_default\":null},\"position\":{\"column\":{\"default\":null,\"name\":\"position\",\"null\":false,\"type\":\"integer\"},\"name\":\"position\",\"selected_by_default\":null},\"sort_key\":{\"column\":{\"default\":null,\"name\":\"sort_key\",\"null\":true,\"type\":\"string\"},\"name\":\"sort_key\",\"selected_by_default\":null},\"visible\":{\"column\":{\"default\":null,\"name\":\"visible\",\"null\":true,\"type\":\"boolean\"},\"name\":\"visible\",\"selected_by_default\":null}},\"className\":\"ApiMakerTable::TableSettingColumn\",\"collectionKey\":\"api_maker_table/table_setting_columns\",\"collectionName\":\"table_setting_columns\",\"i18nKey\":\"api_maker_table/table_setting_column\",\"camelizedLower\":\"apiMakerTable::TableSettingColumn\",\"name\":\"TableSettingColumn\",\"nameDasherized\":\"table-setting-column\",\"pluralName\":\"api_maker_table_table_setting_columns\",\"ransackable_associations\":[{\"className\":\"TableSetting\",\"collectionName\":\"table_settings\",\"foreignKey\":\"table_setting_id\",\"name\":\"table_setting\",\"macro\":\"belongs_to\",\"resource_name\":\"TableSetting\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"table_setting_id\",\"column\":{\"default\":null,\"name\":\"table_setting_id\",\"null\":false,\"type\":null}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"}},{\"name\":\"attribute_name\",\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":true,\"type\":\"string\"}},{\"name\":\"path\",\"column\":{\"default\":null,\"name\":\"path\",\"null\":true,\"type\":\"text\"}},{\"name\":\"sort_key\",\"column\":{\"default\":null,\"name\":\"sort_key\",\"null\":true,\"type\":\"string\"}},{\"name\":\"position\",\"column\":{\"default\":null,\"name\":\"position\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"visible\",\"column\":{\"default\":null,\"name\":\"visible\",\"null\":true,\"type\":\"boolean\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"TableSetting\",\"collectionName\":\"table_settings\",\"foreignKey\":\"table_setting_id\",\"name\":\"table_setting\",\"macro\":\"belongs_to\",\"resource_name\":\"TableSetting\",\"through\":null}],\"paramKey\":\"table_setting_column\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"table_setting\":{\"active_record\":{\"name\":\"ApiMakerTable::TableSettingColumn\",\"primary_key\":\"id\"},\"class_name\":\"TableSetting\",\"foreign_key\":\"table_setting_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TableSetting\",\"type\":\"belongs_to\"}}},\"TableSetting\":{\"attributes\":{\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"identifier\":{\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"},\"name\":\"identifier\",\"selected_by_default\":null}},\"className\":\"ApiMakerTable::TableSetting\",\"collectionKey\":\"api_maker_table/table_settings\",\"collectionName\":\"table_settings\",\"i18nKey\":\"api_maker_table/table_setting\",\"camelizedLower\":\"apiMakerTable::TableSetting\",\"name\":\"TableSetting\",\"nameDasherized\":\"table-setting\",\"pluralName\":\"api_maker_table_table_settings\",\"ransackable_associations\":[{\"className\":\"User\",\"collectionName\":null,\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"ApiMakerTable::TableSettingColumn\",\"collectionName\":\"table_setting_columns\",\"foreignKey\":\"table_setting_id\",\"name\":\"columns\",\"macro\":\"has_many\",\"resource_name\":\"TableSettingColumn\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"user_type\",\"column\":{\"default\":null,\"name\":\"user_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"identifier\",\"column\":{\"default\":null,\"name\":\"identifier\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"ApiMakerTable::TableSettingColumn\",\"collectionName\":\"table_setting_columns\",\"foreignKey\":\"table_setting_id\",\"name\":\"columns\",\"macro\":\"has_many\",\"resource_name\":\"TableSettingColumn\",\"through\":null}],\"paramKey\":\"table_setting\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"columns\":{\"active_record\":{\"name\":\"ApiMakerTable::TableSetting\",\"primary_key\":\"id\"},\"class_name\":\"ApiMakerTable::TableSettingColumn\",\"foreign_key\":\"table_setting_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TableSettingColumn\",\"type\":\"has_many\"}}},\"Team\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":true,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"school_class_id\":{\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":true,\"type\":null},\"name\":\"school_class_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"Team\",\"collectionKey\":\"teams\",\"collectionName\":\"teams\",\"i18nKey\":\"team\",\"camelizedLower\":\"team\",\"name\":\"Team\",\"nameDasherized\":\"team\",\"pluralName\":\"teams\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_id\",\"name\":\"team_surveys\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurvey\",\"through\":null},{\"className\":\"TeamUser\",\"collectionName\":\"team_users\",\"foreignKey\":\"team_id\",\"name\":\"team_users\",\"macro\":\"has_many\",\"resource_name\":\"TeamUser\",\"through\":null},{\"className\":\"SchoolClassCourse\",\"collectionName\":\"school_class_courses\",\"foreignKey\":\"team_id\",\"name\":\"school_class_course\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClassCourse\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"school_class_id\",\"column\":{\"default\":null,\"name\":\"school_class_id\",\"null\":true,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClass\",\"through\":null},{\"className\":\"TeamUser\",\"collectionName\":\"team_users\",\"foreignKey\":\"team_id\",\"name\":\"team_users\",\"macro\":\"has_many\",\"resource_name\":\"TeamUser\",\"through\":null}],\"paramKey\":\"team\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"school_class\":{\"active_record\":{\"name\":\"Team\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClass\",\"foreign_key\":\"school_class_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClass\",\"type\":\"belongs_to\"},\"team_users\":{\"active_record\":{\"name\":\"Team\",\"primary_key\":\"id\"},\"class_name\":\"TeamUser\",\"foreign_key\":\"team_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamUser\",\"type\":\"has_many\"}}},\"TeamSurvey\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"preview\":{\"column\":{\"default\":\"0\",\"name\":\"preview\",\"null\":false,\"type\":\"boolean\"},\"name\":\"preview\",\"selected_by_default\":null},\"school_class_check_in_id\":{\"column\":{\"default\":null,\"name\":\"school_class_check_in_id\",\"null\":true,\"type\":null},\"name\":\"school_class_check_in_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"team_id\":{\"column\":{\"default\":null,\"name\":\"team_id\",\"null\":false,\"type\":null},\"name\":\"team_id\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{\"find_or_create_team_survey_step\":{\"name\":\"find_or_create_team_survey_step\"}},\"member_commands\":{\"current_step\":{\"name\":\"current_step\"},\"submit_answers\":{\"name\":\"submit_answers\"}},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"preview\":{\"column\":{\"default\":\"0\",\"name\":\"preview\",\"null\":false,\"type\":\"boolean\"},\"name\":\"preview\",\"selected_by_default\":null},\"school_class_check_in_id\":{\"column\":{\"default\":null,\"name\":\"school_class_check_in_id\",\"null\":true,\"type\":null},\"name\":\"school_class_check_in_id\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"survey_id\":{\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null},\"name\":\"survey_id\",\"selected_by_default\":null},\"team_id\":{\"column\":{\"default\":null,\"name\":\"team_id\",\"null\":false,\"type\":null},\"name\":\"team_id\",\"selected_by_default\":null},\"translated_state\":{\"column\":null,\"name\":\"translated_state\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"TeamSurvey\",\"collectionKey\":\"team_surveys\",\"collectionName\":\"team_surveys\",\"i18nKey\":\"team_survey\",\"camelizedLower\":\"teamSurvey\",\"name\":\"TeamSurvey\",\"nameDasherized\":\"team-survey\",\"pluralName\":\"team_surveys\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClassBrainBreak\",\"collectionName\":\"school_class_brain_breaks\",\"foreignKey\":\"school_class_brain_break_id\",\"name\":\"school_class_brain_break\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassBrainBreak\",\"through\":null},{\"className\":\"SchoolClassChallenge\",\"collectionName\":\"school_class_challenges\",\"foreignKey\":\"school_class_challenge_id\",\"name\":\"school_class_challenge\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassChallenge\",\"through\":null},{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"school_class_check_in_id\",\"name\":\"school_class_check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"belongs_to\",\"resource_name\":\"Team\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClass\",\"through\":\"team\"},{\"className\":\"SchoolClassCourseModule\",\"collectionName\":\"school_class_course_modules\",\"foreignKey\":\"team_survey_id\",\"name\":\"school_class_course_module\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClassCourseModule\",\"through\":null},{\"className\":\"TeamSurveyStep\",\"collectionName\":\"team_survey_steps\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey_steps\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStep\",\"through\":null},{\"className\":\"TeamSurveyStepElement\",\"collectionName\":\"team_survey_step_elements\",\"foreignKey\":\"team_survey_step_id\",\"name\":\"team_survey_step_elements\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElement\",\"through\":\"team_survey_steps\"},{\"className\":\"TeamSurveyStepElementAnswer\",\"collectionName\":\"team_survey_step_element_answers\",\"foreignKey\":\"team_survey_step_element_id\",\"name\":\"answers\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElementAnswer\",\"through\":\"team_survey_step_elements\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"team_id\",\"column\":{\"default\":null,\"name\":\"team_id\",\"null\":false,\"type\":null}},{\"name\":\"survey_id\",\"column\":{\"default\":null,\"name\":\"survey_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"state\",\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":false,\"type\":\"string\"}},{\"name\":\"school_class_check_in_id\",\"column\":{\"default\":null,\"name\":\"school_class_check_in_id\",\"null\":true,\"type\":null}},{\"name\":\"preview\",\"column\":{\"default\":\"0\",\"name\":\"preview\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"school_class_brain_break_id\",\"column\":{\"default\":null,\"name\":\"school_class_brain_break_id\",\"null\":true,\"type\":null}},{\"name\":\"school_class_challenge_id\",\"column\":{\"default\":null,\"name\":\"school_class_challenge_id\",\"null\":true,\"type\":null}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"school_class_check_in_id\",\"name\":\"school_class_check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":null},{\"className\":\"Survey\",\"collectionName\":\"surveys\",\"foreignKey\":\"survey_id\",\"name\":\"survey\",\"macro\":\"belongs_to\",\"resource_name\":\"Survey\",\"through\":null},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"belongs_to\",\"resource_name\":\"Team\",\"through\":null},{\"className\":\"TeamSurveyStep\",\"collectionName\":\"team_survey_steps\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey_steps\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStep\",\"through\":null}],\"paramKey\":\"team_survey\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"school_class_check_in\":{\"active_record\":{\"name\":\"TeamSurvey\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassCheckIn\",\"foreign_key\":\"school_class_check_in_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassCheckIn\",\"type\":\"belongs_to\"},\"survey\":{\"active_record\":{\"name\":\"TeamSurvey\",\"primary_key\":\"id\"},\"class_name\":\"Survey\",\"foreign_key\":\"survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Survey\",\"type\":\"belongs_to\"},\"team\":{\"active_record\":{\"name\":\"TeamSurvey\",\"primary_key\":\"id\"},\"class_name\":\"Team\",\"foreign_key\":\"team_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Team\",\"type\":\"belongs_to\"},\"team_survey_steps\":{\"active_record\":{\"name\":\"TeamSurvey\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurveyStep\",\"foreign_key\":\"team_survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurveyStep\",\"type\":\"has_many\"}}},\"TeamSurveyStepElementAnswer\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"survey_step_element_option_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_option_id\",\"null\":true,\"type\":null},\"name\":\"survey_step_element_option_id\",\"selected_by_default\":null},\"team_survey_step_element_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_step_element_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_step_element_id\",\"selected_by_default\":null},\"text\":{\"column\":{\"default\":null,\"name\":\"text\",\"null\":true,\"type\":\"text\"},\"name\":\"text\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"survey_step_element_option_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_option_id\",\"null\":true,\"type\":null},\"name\":\"survey_step_element_option_id\",\"selected_by_default\":null},\"team_survey_step_element_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_step_element_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_step_element_id\",\"selected_by_default\":null},\"text\":{\"column\":{\"default\":null,\"name\":\"text\",\"null\":true,\"type\":\"text\"},\"name\":\"text\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"TeamSurveyStepElementAnswer\",\"collectionKey\":\"team_survey_step_element_answers\",\"collectionName\":\"team_survey_step_element_answers\",\"i18nKey\":\"team_survey_step_element_answer\",\"camelizedLower\":\"teamSurveyStepElementAnswer\",\"name\":\"TeamSurveyStepElementAnswer\",\"nameDasherized\":\"team-survey-step-element-answer\",\"pluralName\":\"team_survey_step_element_answers\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"TeamSurveyStepElement\",\"collectionName\":\"team_survey_step_elements\",\"foreignKey\":\"team_survey_step_element_id\",\"name\":\"team_survey_step_element\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurveyStepElement\",\"through\":null},{\"className\":\"SurveyStepElementOption\",\"collectionName\":\"survey_step_element_options\",\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"option\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElementOption\",\"through\":null},{\"className\":\"TeamSurveyStep\",\"collectionName\":\"team_survey_steps\",\"foreignKey\":\"team_survey_step_id\",\"name\":\"team_survey_step\",\"macro\":\"has_one\",\"resource_name\":\"TeamSurveyStep\",\"through\":\"team_survey_step_element\"},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey\",\"macro\":\"has_one\",\"resource_name\":\"TeamSurvey\",\"through\":\"team_survey_step\"},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"has_one\",\"resource_name\":\"Team\",\"through\":\"team_survey\"},{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"school_class_check_in_id\",\"name\":\"school_class_check_in\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":\"team_survey\"},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClass\",\"through\":\"team\"},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"survey_step_element\",\"macro\":\"has_one\",\"resource_name\":\"SurveyStepElement\",\"through\":\"team_survey_step_element\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"team_survey_step_element_id\",\"column\":{\"default\":null,\"name\":\"team_survey_step_element_id\",\"null\":false,\"type\":null}},{\"name\":\"survey_step_element_option_id\",\"column\":{\"default\":null,\"name\":\"survey_step_element_option_id\",\"null\":true,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"text\",\"column\":{\"default\":null,\"name\":\"text\",\"null\":true,\"type\":\"text\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SurveyStepElementOption\",\"collectionName\":\"survey_step_element_options\",\"foreignKey\":\"survey_step_element_option_id\",\"name\":\"option\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElementOption\",\"through\":null},{\"className\":\"TeamSurveyStepElement\",\"collectionName\":\"team_survey_step_elements\",\"foreignKey\":\"team_survey_step_element_id\",\"name\":\"team_survey_step_element\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurveyStepElement\",\"through\":null}],\"paramKey\":\"team_survey_step_element_answer\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"option\":{\"active_record\":{\"name\":\"TeamSurveyStepElementAnswer\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStepElementOption\",\"foreign_key\":\"survey_step_element_option_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStepElementOption\",\"type\":\"belongs_to\"},\"team_survey_step_element\":{\"active_record\":{\"name\":\"TeamSurveyStepElementAnswer\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurveyStepElement\",\"foreign_key\":\"team_survey_step_element_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurveyStepElement\",\"type\":\"belongs_to\"}}},\"TeamSurveyStepElement\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"parsed_main_content\":{\"column\":null,\"name\":\"parsed_main_content\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":true,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"survey_step_element_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_element_id\",\"selected_by_default\":null},\"team_survey_step_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_step_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_step_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"parsed_main_content\":{\"column\":null,\"name\":\"parsed_main_content\",\"selected_by_default\":null},\"state\":{\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":true,\"type\":\"string\"},\"name\":\"state\",\"selected_by_default\":null},\"survey_step_element_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_element_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_element_id\",\"selected_by_default\":null},\"team_survey_step_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_step_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_step_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"parsed_content\":{\"column\":null,\"name\":\"parsed_content\",\"selected_by_default\":false}},\"className\":\"TeamSurveyStepElement\",\"collectionKey\":\"team_survey_step_elements\",\"collectionName\":\"team_survey_step_elements\",\"i18nKey\":\"team_survey_step_element\",\"camelizedLower\":\"teamSurveyStepElement\",\"name\":\"TeamSurveyStepElement\",\"nameDasherized\":\"team-survey-step-element\",\"pluralName\":\"team_survey_step_elements\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"survey_step_element\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"TeamSurveyStep\",\"collectionName\":\"team_survey_steps\",\"foreignKey\":\"team_survey_step_id\",\"name\":\"team_survey_step\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurveyStep\",\"through\":null},{\"className\":\"TeamSurveyStepElementAnswer\",\"collectionName\":\"team_survey_step_element_answers\",\"foreignKey\":\"team_survey_step_element_id\",\"name\":\"answers\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElementAnswer\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"survey_step\",\"macro\":\"has_one\",\"resource_name\":\"SurveyStep\",\"through\":\"team_survey_step\"},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey\",\"macro\":\"has_one\",\"resource_name\":\"TeamSurvey\",\"through\":\"team_survey_step\"},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"has_one\",\"resource_name\":\"Team\",\"through\":\"team_survey\"},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_class\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClass\",\"through\":\"team\"},{\"className\":\"ClassStep\",\"collectionName\":\"class_steps\",\"foreignKey\":\"class_step_id\",\"name\":\"class_step\",\"macro\":\"has_one\",\"resource_name\":\"ClassStep\",\"through\":\"school_class\"},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"school\",\"macro\":\"has_one\",\"resource_name\":\"School\",\"through\":\"school_class\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"team_survey_step_id\",\"column\":{\"default\":null,\"name\":\"team_survey_step_id\",\"null\":false,\"type\":null}},{\"name\":\"survey_step_element_id\",\"column\":{\"default\":null,\"name\":\"survey_step_element_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"state\",\"column\":{\"default\":\"new\",\"name\":\"state\",\"null\":true,\"type\":\"string\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"TeamSurveyStepElementAnswer\",\"collectionName\":\"team_survey_step_element_answers\",\"foreignKey\":\"team_survey_step_element_id\",\"name\":\"answers\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElementAnswer\",\"through\":null},{\"className\":\"SurveyStepElement\",\"collectionName\":\"survey_step_elements\",\"foreignKey\":\"survey_step_element_id\",\"name\":\"survey_step_element\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStepElement\",\"through\":null},{\"className\":\"TeamSurveyStep\",\"collectionName\":\"team_survey_steps\",\"foreignKey\":\"team_survey_step_id\",\"name\":\"team_survey_step\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurveyStep\",\"through\":null}],\"paramKey\":\"team_survey_step_element\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"answers\":{\"active_record\":{\"name\":\"TeamSurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurveyStepElementAnswer\",\"foreign_key\":\"team_survey_step_element_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurveyStepElementAnswer\",\"type\":\"has_many\"},\"survey_step_element\":{\"active_record\":{\"name\":\"TeamSurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStepElement\",\"foreign_key\":\"survey_step_element_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStepElement\",\"type\":\"belongs_to\"},\"team_survey_step\":{\"active_record\":{\"name\":\"TeamSurveyStepElement\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurveyStep\",\"foreign_key\":\"team_survey_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurveyStep\",\"type\":\"belongs_to\"}}},\"TeamSurveyStep\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"survey_step_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_id\",\"selected_by_default\":null},\"team_survey_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"survey_step_id\":{\"column\":{\"default\":null,\"name\":\"survey_step_id\",\"null\":false,\"type\":null},\"name\":\"survey_step_id\",\"selected_by_default\":null},\"team_survey_id\":{\"column\":{\"default\":null,\"name\":\"team_survey_id\",\"null\":false,\"type\":null},\"name\":\"team_survey_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"TeamSurveyStep\",\"collectionKey\":\"team_survey_steps\",\"collectionName\":\"team_survey_steps\",\"i18nKey\":\"team_survey_step\",\"camelizedLower\":\"teamSurveyStep\",\"name\":\"TeamSurveyStep\",\"nameDasherized\":\"team-survey-step\",\"pluralName\":\"team_survey_steps\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"survey_step\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStep\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurvey\",\"through\":null},{\"className\":\"TeamSurveyStepElement\",\"collectionName\":\"team_survey_step_elements\",\"foreignKey\":\"team_survey_step_id\",\"name\":\"team_survey_step_elements\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElement\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"team_survey_id\",\"column\":{\"default\":null,\"name\":\"team_survey_id\",\"null\":false,\"type\":null}},{\"name\":\"survey_step_id\",\"column\":{\"default\":null,\"name\":\"survey_step_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"SurveyStep\",\"collectionName\":\"survey_steps\",\"foreignKey\":\"survey_step_id\",\"name\":\"survey_step\",\"macro\":\"belongs_to\",\"resource_name\":\"SurveyStep\",\"through\":null},{\"className\":\"TeamSurvey\",\"collectionName\":\"team_surveys\",\"foreignKey\":\"team_survey_id\",\"name\":\"team_survey\",\"macro\":\"belongs_to\",\"resource_name\":\"TeamSurvey\",\"through\":null},{\"className\":\"TeamSurveyStepElement\",\"collectionName\":\"team_survey_step_elements\",\"foreignKey\":\"team_survey_step_id\",\"name\":\"team_survey_step_elements\",\"macro\":\"has_many\",\"resource_name\":\"TeamSurveyStepElement\",\"through\":null}],\"paramKey\":\"team_survey_step\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"survey_step\":{\"active_record\":{\"name\":\"TeamSurveyStep\",\"primary_key\":\"id\"},\"class_name\":\"SurveyStep\",\"foreign_key\":\"survey_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SurveyStep\",\"type\":\"belongs_to\"},\"team_survey\":{\"active_record\":{\"name\":\"TeamSurveyStep\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurvey\",\"foreign_key\":\"team_survey_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurvey\",\"type\":\"belongs_to\"},\"team_survey_step_elements\":{\"active_record\":{\"name\":\"TeamSurveyStep\",\"primary_key\":\"id\"},\"class_name\":\"TeamSurveyStepElement\",\"foreign_key\":\"team_survey_step_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TeamSurveyStepElement\",\"type\":\"has_many\"}}},\"TeamUser\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null}},\"className\":\"TeamUser\",\"collectionKey\":\"team_users\",\"collectionName\":\"team_users\",\"i18nKey\":\"team_user\",\"camelizedLower\":\"teamUser\",\"name\":\"TeamUser\",\"nameDasherized\":\"team-user\",\"pluralName\":\"team_users\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"belongs_to\",\"resource_name\":\"Team\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"team_id\",\"column\":{\"default\":null,\"name\":\"team_id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"role\",\"column\":{\"default\":\"member\",\"name\":\"role\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Team\",\"collectionName\":\"teams\",\"foreignKey\":\"team_id\",\"name\":\"team\",\"macro\":\"belongs_to\",\"resource_name\":\"Team\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"team_user\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"team\":{\"active_record\":{\"name\":\"TeamUser\",\"primary_key\":\"id\"},\"class_name\":\"Team\",\"foreign_key\":\"team_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Team\",\"type\":\"belongs_to\"},\"user\":{\"active_record\":{\"name\":\"TeamUser\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"TextKey\":{\"attributes\":{\"attribute_name\":{\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":false,\"type\":\"string\"},\"name\":\"attribute_name\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"key\":{\"column\":{\"default\":null,\"name\":\"key\",\"null\":false,\"type\":\"string\"},\"name\":\"key\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{\"translate\":{\"name\":\"translate\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"attribute_name\":{\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":false,\"type\":\"string\"},\"name\":\"attribute_name\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"key\":{\"column\":{\"default\":null,\"name\":\"key\",\"null\":false,\"type\":\"string\"},\"name\":\"key\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"TextKey\",\"collectionKey\":\"text_keys\",\"collectionName\":\"text_keys\",\"i18nKey\":\"text_key\",\"camelizedLower\":\"textKey\",\"name\":\"TextKey\",\"nameDasherized\":\"text-key\",\"pluralName\":\"text_keys\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"TextValue\",\"collectionName\":\"text_values\",\"foreignKey\":\"text_key_id\",\"name\":\"text_values\",\"macro\":\"has_many\",\"resource_name\":\"TextValue\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"attribute_name\",\"column\":{\"default\":null,\"name\":\"attribute_name\",\"null\":false,\"type\":\"string\"}},{\"name\":\"key\",\"column\":{\"default\":null,\"name\":\"key\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"with_missing_translation_in_locale\"}],\"relationships\":[{\"className\":\"TextValue\",\"collectionName\":\"text_values\",\"foreignKey\":\"text_key_id\",\"name\":\"text_values\",\"macro\":\"has_many\",\"resource_name\":\"TextValue\",\"through\":null}],\"paramKey\":\"text_key\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"text_values\":{\"active_record\":{\"name\":\"TextKey\",\"primary_key\":\"id\"},\"class_name\":\"TextValue\",\"foreign_key\":\"text_key_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"TextValue\",\"type\":\"has_many\"}}},\"TextValue\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"locale\":{\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"},\"name\":\"locale\",\"selected_by_default\":null},\"text_key_id\":{\"column\":{\"default\":null,\"name\":\"text_key_id\",\"null\":false,\"type\":null},\"name\":\"text_key_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"value\":{\"column\":{\"default\":null,\"name\":\"value\",\"null\":true,\"type\":\"text\"},\"name\":\"value\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"locale\":{\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"},\"name\":\"locale\",\"selected_by_default\":null},\"text_key_id\":{\"column\":{\"default\":null,\"name\":\"text_key_id\",\"null\":false,\"type\":null},\"name\":\"text_key_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"value\":{\"column\":{\"default\":null,\"name\":\"value\",\"null\":true,\"type\":\"text\"},\"name\":\"value\",\"selected_by_default\":null}},\"className\":\"TextValue\",\"collectionKey\":\"text_values\",\"collectionName\":\"text_values\",\"i18nKey\":\"text_value\",\"camelizedLower\":\"textValue\",\"name\":\"TextValue\",\"nameDasherized\":\"text-value\",\"pluralName\":\"text_values\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"TextKey\",\"collectionName\":\"text_keys\",\"foreignKey\":\"text_key_id\",\"name\":\"text_key\",\"macro\":\"belongs_to\",\"resource_name\":\"TextKey\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"text_key_id\",\"column\":{\"default\":null,\"name\":\"text_key_id\",\"null\":false,\"type\":null}},{\"name\":\"locale\",\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"}},{\"name\":\"value\",\"column\":{\"default\":null,\"name\":\"value\",\"null\":true,\"type\":\"text\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"text_value\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"TrixFile\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"file_content_type\":{\"column\":null,\"name\":\"file_content_type\",\"selected_by_default\":null},\"file_name\":{\"column\":null,\"name\":\"file_name\",\"selected_by_default\":null},\"file_size\":{\"column\":null,\"name\":\"file_size\",\"selected_by_default\":null},\"file_url\":{\"column\":null,\"name\":\"file_url\",\"selected_by_default\":null},\"height\":{\"column\":null,\"name\":\"height\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"width\":{\"column\":null,\"name\":\"width\",\"selected_by_default\":null},\"preview_image_path\":{\"column\":null,\"name\":\"preview_image_path\",\"selected_by_default\":false}},\"collection_commands\":{\"remove\":{\"name\":\"remove\"},\"upload\":{\"name\":\"upload\"}},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"file_content_type\":{\"column\":null,\"name\":\"file_content_type\",\"selected_by_default\":null},\"file_name\":{\"column\":null,\"name\":\"file_name\",\"selected_by_default\":null},\"file_size\":{\"column\":null,\"name\":\"file_size\",\"selected_by_default\":null},\"file_url\":{\"column\":null,\"name\":\"file_url\",\"selected_by_default\":null},\"height\":{\"column\":null,\"name\":\"height\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"width\":{\"column\":null,\"name\":\"width\",\"selected_by_default\":null},\"preview_image_path\":{\"column\":null,\"name\":\"preview_image_path\",\"selected_by_default\":false}},\"className\":\"TrixFile\",\"collectionKey\":\"trix_files\",\"collectionName\":\"trix_files\",\"i18nKey\":\"trix_file\",\"camelizedLower\":\"trixFile\",\"name\":\"TrixFile\",\"nameDasherized\":\"trix-file\",\"pluralName\":\"trix_files\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Resource\",\"collectionName\":null,\"foreignKey\":\"resource_id\",\"name\":\"resource\",\"macro\":\"belongs_to\",\"resource_name\":null,\"through\":null},{\"className\":\"ActiveStorage::Attachment\",\"collectionName\":null,\"foreignKey\":\"record_id\",\"name\":\"file_attachment\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ActiveStorage::Blob\",\"collectionName\":null,\"foreignKey\":\"blob_id\",\"name\":\"file_blob\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":\"file_attachment\"},{\"className\":\"ActiveStorage::Attachment\",\"collectionName\":null,\"foreignKey\":\"record_id\",\"name\":\"preview_image_attachment\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":null},{\"className\":\"ActiveStorage::Blob\",\"collectionName\":null,\"foreignKey\":\"blob_id\",\"name\":\"preview_image_blob\",\"macro\":\"has_one\",\"resource_name\":null,\"through\":\"preview_image_attachment\"}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}},{\"name\":\"resource_id\",\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null}},{\"name\":\"key\",\"column\":{\"default\":null,\"name\":\"key\",\"null\":false,\"type\":\"string\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"trix_file\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"User\":{\"attributes\":{\"account_users_count\":{\"column\":{\"default\":\"0\",\"name\":\"account_users_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"account_users_count\",\"selected_by_default\":null},\"color\":{\"column\":{\"default\":null,\"name\":\"color\",\"null\":true,\"type\":\"string\"},\"name\":\"color\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"currency_id\":{\"column\":{\"default\":null,\"name\":\"currency_id\",\"null\":true,\"type\":null},\"name\":\"currency_id\",\"selected_by_default\":null},\"current_country_id\":{\"column\":{\"default\":null,\"name\":\"current_country_id\",\"null\":true,\"type\":null},\"name\":\"current_country_id\",\"selected_by_default\":null},\"email\":{\"column\":{\"default\":\"\",\"name\":\"email\",\"null\":true,\"type\":\"string\"},\"name\":\"email\",\"selected_by_default\":null},\"first_name\":{\"column\":{\"default\":null,\"name\":\"first_name\",\"null\":true,\"type\":\"string\"},\"name\":\"first_name\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"initials\":{\"column\":{\"default\":null,\"name\":\"initials\",\"null\":true,\"type\":\"string\"},\"name\":\"initials\",\"selected_by_default\":null},\"last_name\":{\"column\":{\"default\":null,\"name\":\"last_name\",\"null\":true,\"type\":\"string\"},\"name\":\"last_name\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":null},\"phone_number\":{\"column\":{\"default\":null,\"name\":\"phone_number\",\"null\":true,\"type\":\"string\"},\"name\":\"phone_number\",\"selected_by_default\":null},\"school_class_roles_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_class_roles_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_class_roles_count\",\"selected_by_default\":null},\"school_roles_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_roles_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_roles_count\",\"selected_by_default\":null},\"sign_in_count\":{\"column\":{\"default\":\"0\",\"name\":\"sign_in_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"sign_in_count\",\"selected_by_default\":null},\"time_zone_offset\":{\"column\":{\"default\":null,\"name\":\"time_zone_offset\",\"null\":true,\"type\":\"integer\"},\"name\":\"time_zone_offset\",\"selected_by_default\":null},\"unconfirmed_email\":{\"column\":{\"default\":null,\"name\":\"unconfirmed_email\",\"null\":true,\"type\":\"string\"},\"name\":\"unconfirmed_email\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_roles_count\":{\"column\":{\"default\":\"0\",\"name\":\"user_roles_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"user_roles_count\",\"selected_by_default\":null}},\"collection_commands\":{\"apply_forgotten_password_request\":{\"name\":\"apply_forgotten_password_request\"},\"confirm_email\":{\"name\":\"confirm_email\"},\"error_test\":{\"name\":\"error_test\"},\"liquid_drops\":{\"name\":\"liquid_drops\"},\"profile_save\":{\"name\":\"profile_save\"},\"request_new_password\":{\"name\":\"request_new_password\"},\"resend_confirmation_email\":{\"name\":\"resend_confirmation_email\"},\"set_locale\":{\"name\":\"set_locale\"},\"state_event\":{\"name\":\"state_event\"}},\"member_commands\":{\"sign_in_as\":{\"name\":\"sign_in_as\"},\"week_bar\":{\"name\":\"week_bar\"}},\"model_class_data\":{\"attributes\":{\"account_users_count\":{\"column\":{\"default\":\"0\",\"name\":\"account_users_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"account_users_count\",\"selected_by_default\":null},\"color\":{\"column\":{\"default\":null,\"name\":\"color\",\"null\":true,\"type\":\"string\"},\"name\":\"color\",\"selected_by_default\":null},\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"currency_id\":{\"column\":{\"default\":null,\"name\":\"currency_id\",\"null\":true,\"type\":null},\"name\":\"currency_id\",\"selected_by_default\":null},\"current_country_id\":{\"column\":{\"default\":null,\"name\":\"current_country_id\",\"null\":true,\"type\":null},\"name\":\"current_country_id\",\"selected_by_default\":null},\"email\":{\"column\":{\"default\":\"\",\"name\":\"email\",\"null\":true,\"type\":\"string\"},\"name\":\"email\",\"selected_by_default\":null},\"first_name\":{\"column\":{\"default\":null,\"name\":\"first_name\",\"null\":true,\"type\":\"string\"},\"name\":\"first_name\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"initials\":{\"column\":{\"default\":null,\"name\":\"initials\",\"null\":true,\"type\":\"string\"},\"name\":\"initials\",\"selected_by_default\":null},\"last_name\":{\"column\":{\"default\":null,\"name\":\"last_name\",\"null\":true,\"type\":\"string\"},\"name\":\"last_name\",\"selected_by_default\":null},\"name\":{\"column\":null,\"name\":\"name\",\"selected_by_default\":null},\"phone_number\":{\"column\":{\"default\":null,\"name\":\"phone_number\",\"null\":true,\"type\":\"string\"},\"name\":\"phone_number\",\"selected_by_default\":null},\"school_class_roles_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_class_roles_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_class_roles_count\",\"selected_by_default\":null},\"school_roles_count\":{\"column\":{\"default\":\"0\",\"name\":\"school_roles_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"school_roles_count\",\"selected_by_default\":null},\"sign_in_count\":{\"column\":{\"default\":\"0\",\"name\":\"sign_in_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"sign_in_count\",\"selected_by_default\":null},\"time_zone_offset\":{\"column\":{\"default\":null,\"name\":\"time_zone_offset\",\"null\":true,\"type\":\"integer\"},\"name\":\"time_zone_offset\",\"selected_by_default\":null},\"unconfirmed_email\":{\"column\":{\"default\":null,\"name\":\"unconfirmed_email\",\"null\":true,\"type\":\"string\"},\"name\":\"unconfirmed_email\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null},\"user_roles_count\":{\"column\":{\"default\":\"0\",\"name\":\"user_roles_count\",\"null\":false,\"type\":\"integer\"},\"name\":\"user_roles_count\",\"selected_by_default\":null}},\"className\":\"User\",\"collectionKey\":\"users\",\"collectionName\":\"users\",\"i18nKey\":\"user\",\"camelizedLower\":\"user\",\"name\":\"User\",\"nameDasherized\":\"user\",\"pluralName\":\"users\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"SchoolClassCheckIn\",\"collectionName\":\"school_class_check_ins\",\"foreignKey\":\"school_class_check_in_id\",\"name\":\"school_class_check_in\",\"macro\":\"belongs_to\",\"resource_name\":\"SchoolClassCheckIn\",\"through\":null},{\"className\":\"AccountUser\",\"collectionName\":\"account_users\",\"foreignKey\":\"user_id\",\"name\":\"account_users\",\"macro\":\"has_many\",\"resource_name\":\"AccountUser\",\"through\":null},{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"accounts\",\"macro\":\"has_many\",\"resource_name\":\"Account\",\"through\":\"account_users\"},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"user_id\",\"name\":\"audits_as_user\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ClassStatusExpansion\",\"collectionName\":\"class_status_expansions\",\"foreignKey\":\"user_id\",\"name\":\"class_status_expansion\",\"macro\":\"has_many\",\"resource_name\":\"ClassStatusExpansion\",\"through\":null},{\"className\":\"Currency\",\"collectionName\":\"currencies\",\"foreignKey\":\"currency_id\",\"name\":\"currency\",\"macro\":\"belongs_to\",\"resource_name\":\"Currency\",\"through\":null},{\"className\":\"Country\",\"collectionName\":\"countries\",\"foreignKey\":\"current_country_id\",\"name\":\"current_country\",\"macro\":\"belongs_to\",\"resource_name\":\"Country\",\"through\":null},{\"className\":\"WorkerPlugins::Workplace\",\"collectionName\":\"workplaces\",\"foreignKey\":\"current_workplace_id\",\"name\":\"current_workplace\",\"macro\":\"belongs_to\",\"resource_name\":\"Workplace\",\"through\":null},{\"className\":\"Dialogue\",\"collectionName\":\"dialogues\",\"foreignKey\":\"user_id\",\"name\":\"dialogues\",\"macro\":\"has_many\",\"resource_name\":\"Dialogue\",\"through\":null},{\"className\":\"Newsletter\",\"collectionName\":\"newsletters\",\"foreignKey\":\"user_id\",\"name\":\"newsletters\",\"macro\":\"has_many\",\"resource_name\":\"Newsletter\",\"through\":null},{\"className\":\"Notification\",\"collectionName\":null,\"foreignKey\":\"user_id\",\"name\":\"notifications\",\"macro\":\"has_many\",\"resource_name\":null,\"through\":null},{\"className\":\"SchoolClassRole\",\"collectionName\":\"school_class_roles\",\"foreignKey\":\"user_id\",\"name\":\"school_class_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassRole\",\"through\":null},{\"className\":\"SchoolClass\",\"collectionName\":\"school_classes\",\"foreignKey\":\"school_class_id\",\"name\":\"school_classes\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClass\",\"through\":\"school_class_roles\"},{\"className\":\"SchoolContactRequest\",\"collectionName\":\"school_contact_requests\",\"foreignKey\":\"user_id\",\"name\":\"school_contact_requests\",\"macro\":\"has_many\",\"resource_name\":\"SchoolContactRequest\",\"through\":null},{\"className\":\"SchoolRole\",\"collectionName\":\"school_roles\",\"foreignKey\":\"user_id\",\"name\":\"school_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolRole\",\"through\":null},{\"className\":\"School\",\"collectionName\":\"schools\",\"foreignKey\":\"school_id\",\"name\":\"schools\",\"macro\":\"has_many\",\"resource_name\":\"School\",\"through\":\"school_classes\"},{\"className\":\"Subscription\",\"collectionName\":\"subscriptions\",\"foreignKey\":\"resource_id\",\"name\":\"subscriptions\",\"macro\":\"has_many\",\"resource_name\":\"Subscription\",\"through\":null},{\"className\":\"UserRole\",\"collectionName\":\"user_roles\",\"foreignKey\":\"user_id\",\"name\":\"user_roles\",\"macro\":\"has_many\",\"resource_name\":\"UserRole\",\"through\":null},{\"className\":\"Role\",\"collectionName\":\"roles\",\"foreignKey\":\"role_id\",\"name\":\"roles\",\"macro\":\"has_many\",\"resource_name\":\"Role\",\"through\":\"user_roles\"},{\"className\":\"ApiMakerTable::TableSearch\",\"collectionName\":\"table_searches\",\"foreignKey\":\"user_id\",\"name\":\"table_searches\",\"macro\":\"has_many\",\"resource_name\":\"TableSearch\",\"through\":null},{\"className\":\"TeamUser\",\"collectionName\":\"team_users\",\"foreignKey\":\"user_id\",\"name\":\"team_users\",\"macro\":\"has_many\",\"resource_name\":\"TeamUser\",\"through\":null},{\"className\":\"WorkerPlugins::Workplace\",\"collectionName\":\"workplaces\",\"foreignKey\":\"user_id\",\"name\":\"workplaces\",\"macro\":\"has_many\",\"resource_name\":\"Workplace\",\"through\":null},{\"className\":\"SchoolClassInvitation\",\"collectionName\":\"school_class_invitations\",\"foreignKey\":\"existing_user_id\",\"name\":\"accepted_invitations\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassInvitation\",\"through\":null},{\"className\":\"SchoolClassInvitation\",\"collectionName\":\"school_class_invitations\",\"foreignKey\":\"invited_by_user_id\",\"name\":\"invited_school_class_invitations\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassInvitation\",\"through\":null},{\"className\":\"SchoolClassInvitation\",\"collectionName\":\"school_class_invitations\",\"foreignKey\":\"created_user_id\",\"name\":\"created_by_invitation\",\"macro\":\"has_one\",\"resource_name\":\"SchoolClassInvitation\",\"through\":null},{\"className\":\"Dialogue\",\"collectionName\":\"dialogues\",\"foreignKey\":\"user_id\",\"name\":\"latest_dialogue\",\"macro\":\"has_one\",\"resource_name\":\"Dialogue\",\"through\":null},{\"className\":\"NotificationSetting\",\"collectionName\":\"notification_settings\",\"foreignKey\":\"user_id\",\"name\":\"notification_setting\",\"macro\":\"has_one\",\"resource_name\":\"NotificationSetting\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"email\",\"column\":{\"default\":\"\",\"name\":\"email\",\"null\":true,\"type\":\"string\"}},{\"name\":\"encrypted_password\",\"column\":{\"default\":\"\",\"name\":\"encrypted_password\",\"null\":true,\"type\":\"string\"}},{\"name\":\"reset_password_token\",\"column\":{\"default\":null,\"name\":\"reset_password_token\",\"null\":true,\"type\":\"string\"}},{\"name\":\"reset_password_sent_at\",\"column\":{\"default\":null,\"name\":\"reset_password_sent_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"remember_created_at\",\"column\":{\"default\":null,\"name\":\"remember_created_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"sign_in_count\",\"column\":{\"default\":\"0\",\"name\":\"sign_in_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"current_sign_in_at\",\"column\":{\"default\":null,\"name\":\"current_sign_in_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"last_sign_in_at\",\"column\":{\"default\":null,\"name\":\"last_sign_in_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"current_sign_in_ip\",\"column\":{\"default\":null,\"name\":\"current_sign_in_ip\",\"null\":true,\"type\":\"string\"}},{\"name\":\"last_sign_in_ip\",\"column\":{\"default\":null,\"name\":\"last_sign_in_ip\",\"null\":true,\"type\":\"string\"}},{\"name\":\"confirmation_token\",\"column\":{\"default\":null,\"name\":\"confirmation_token\",\"null\":true,\"type\":\"string\"}},{\"name\":\"confirmed_at\",\"column\":{\"default\":null,\"name\":\"confirmed_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"confirmation_sent_at\",\"column\":{\"default\":null,\"name\":\"confirmation_sent_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"unconfirmed_email\",\"column\":{\"default\":null,\"name\":\"unconfirmed_email\",\"null\":true,\"type\":\"string\"}},{\"name\":\"failed_attempts\",\"column\":{\"default\":\"0\",\"name\":\"failed_attempts\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"unlock_token\",\"column\":{\"default\":null,\"name\":\"unlock_token\",\"null\":true,\"type\":\"string\"}},{\"name\":\"locked_at\",\"column\":{\"default\":null,\"name\":\"locked_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"first_name\",\"column\":{\"default\":null,\"name\":\"first_name\",\"null\":true,\"type\":\"string\"}},{\"name\":\"last_name\",\"column\":{\"default\":null,\"name\":\"last_name\",\"null\":true,\"type\":\"string\"}},{\"name\":\"locale\",\"column\":{\"default\":null,\"name\":\"locale\",\"null\":false,\"type\":\"string\"}},{\"name\":\"anonymous\",\"column\":{\"default\":\"0\",\"name\":\"anonymous\",\"null\":false,\"type\":\"boolean\"}},{\"name\":\"school_class_check_in_id\",\"column\":{\"default\":null,\"name\":\"school_class_check_in_id\",\"null\":true,\"type\":null}},{\"name\":\"phone_number\",\"column\":{\"default\":null,\"name\":\"phone_number\",\"null\":true,\"type\":\"string\"}},{\"name\":\"last_activity_at\",\"column\":{\"default\":null,\"name\":\"last_activity_at\",\"null\":true,\"type\":\"datetime\"}},{\"name\":\"current_workplace_id\",\"column\":{\"default\":null,\"name\":\"current_workplace_id\",\"null\":true,\"type\":null}},{\"name\":\"time_zone_offset\",\"column\":{\"default\":null,\"name\":\"time_zone_offset\",\"null\":true,\"type\":\"integer\"}},{\"name\":\"current_country_id\",\"column\":{\"default\":null,\"name\":\"current_country_id\",\"null\":true,\"type\":null}},{\"name\":\"currency_id\",\"column\":{\"default\":null,\"name\":\"currency_id\",\"null\":true,\"type\":null}},{\"name\":\"initials\",\"column\":{\"default\":null,\"name\":\"initials\",\"null\":true,\"type\":\"string\"}},{\"name\":\"color\",\"column\":{\"default\":null,\"name\":\"color\",\"null\":true,\"type\":\"string\"}},{\"name\":\"account_users_count\",\"column\":{\"default\":\"0\",\"name\":\"account_users_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"school_roles_count\",\"column\":{\"default\":\"0\",\"name\":\"school_roles_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"school_class_roles_count\",\"column\":{\"default\":\"0\",\"name\":\"school_class_roles_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"user_roles_count\",\"column\":{\"default\":\"0\",\"name\":\"user_roles_count\",\"null\":false,\"type\":\"integer\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[{\"name\":\"with_role\"},{\"name\":\"without_roles\"}],\"relationships\":[{\"className\":\"Account\",\"collectionName\":\"accounts\",\"foreignKey\":\"account_id\",\"name\":\"accounts\",\"macro\":\"has_many\",\"resource_name\":\"Account\",\"through\":\"account_users\"},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Currency\",\"collectionName\":\"currencies\",\"foreignKey\":\"currency_id\",\"name\":\"currency\",\"macro\":\"belongs_to\",\"resource_name\":\"Currency\",\"through\":null},{\"className\":\"Country\",\"collectionName\":\"countries\",\"foreignKey\":\"current_country_id\",\"name\":\"current_country\",\"macro\":\"belongs_to\",\"resource_name\":\"Country\",\"through\":null},{\"className\":\"Dialogue\",\"collectionName\":\"dialogues\",\"foreignKey\":\"user_id\",\"name\":\"latest_dialogue\",\"macro\":\"has_one\",\"resource_name\":\"Dialogue\",\"through\":null},{\"className\":\"NotificationSetting\",\"collectionName\":\"notification_settings\",\"foreignKey\":\"user_id\",\"name\":\"notification_setting\",\"macro\":\"has_one\",\"resource_name\":\"NotificationSetting\",\"through\":null},{\"className\":\"SchoolClassRole\",\"collectionName\":\"school_class_roles\",\"foreignKey\":\"user_id\",\"name\":\"school_class_roles\",\"macro\":\"has_many\",\"resource_name\":\"SchoolClassRole\",\"through\":null},{\"className\":\"UserRole\",\"collectionName\":\"user_roles\",\"foreignKey\":\"user_id\",\"name\":\"user_roles\",\"macro\":\"has_many\",\"resource_name\":\"UserRole\",\"through\":null}],\"paramKey\":\"user\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"accounts\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"Account\",\"foreign_key\":\"account_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":\"account_users\"},\"resource_name\":\"Account\",\"type\":\"has_many\"},\"create_audit\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"ActiveRecordAuditable::Audit\",\"foreign_key\":\"auditable_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":\"auditable\",\"primary_key\":null,\"through\":null},\"resource_name\":\"Audit\",\"type\":\"has_one\"},\"currency\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"Currency\",\"foreign_key\":\"currency_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Currency\",\"type\":\"belongs_to\"},\"current_country\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"Country\",\"foreign_key\":\"current_country_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Country\",\"type\":\"belongs_to\"},\"latest_dialogue\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"Dialogue\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Dialogue\",\"type\":\"has_one\"},\"notification_setting\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"NotificationSetting\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"NotificationSetting\",\"type\":\"has_one\"},\"school_class_roles\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"SchoolClassRole\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"SchoolClassRole\",\"type\":\"has_many\"},\"user_roles\":{\"active_record\":{\"name\":\"User\",\"primary_key\":\"id\"},\"class_name\":\"UserRole\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"UserRole\",\"type\":\"has_many\"}}},\"UserRole\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role_id\":{\"column\":{\"default\":null,\"name\":\"role_id\",\"null\":false,\"type\":null},\"name\":\"role_id\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"created_at\":{\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"created_at\",\"selected_by_default\":null},\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"role_id\":{\"column\":{\"default\":null,\"name\":\"role_id\",\"null\":false,\"type\":null},\"name\":\"role_id\",\"selected_by_default\":null},\"user_id\":{\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null},\"name\":\"user_id\",\"selected_by_default\":null},\"updated_at\":{\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"},\"name\":\"updated_at\",\"selected_by_default\":null}},\"className\":\"UserRole\",\"collectionKey\":\"user_roles\",\"collectionName\":\"user_roles\",\"i18nKey\":\"user_role\",\"camelizedLower\":\"userRole\",\"name\":\"UserRole\",\"nameDasherized\":\"user-role\",\"pluralName\":\"user_roles\",\"ransackable_associations\":[{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"create_audit\",\"macro\":\"has_one\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"ActiveRecordAuditable::Audit\",\"collectionName\":\"audits\",\"foreignKey\":\"auditable_id\",\"name\":\"audits\",\"macro\":\"has_many\",\"resource_name\":\"Audit\",\"through\":null},{\"className\":\"Role\",\"collectionName\":\"roles\",\"foreignKey\":\"role_id\",\"name\":\"role\",\"macro\":\"belongs_to\",\"resource_name\":\"Role\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"user_id\",\"column\":{\"default\":null,\"name\":\"user_id\",\"null\":false,\"type\":null}},{\"name\":\"role_id\",\"column\":{\"default\":null,\"name\":\"role_id\",\"null\":false,\"type\":null}},{\"name\":\"created_at\",\"column\":{\"default\":null,\"name\":\"created_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"updated_at\",\"column\":{\"default\":null,\"name\":\"updated_at\",\"null\":false,\"type\":\"datetime\"}},{\"name\":\"id_value\",\"column\":null}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"Role\",\"collectionName\":\"roles\",\"foreignKey\":\"role_id\",\"name\":\"role\",\"macro\":\"belongs_to\",\"resource_name\":\"Role\",\"through\":null},{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"paramKey\":\"user_role\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"role\":{\"active_record\":{\"name\":\"UserRole\",\"primary_key\":\"id\"},\"class_name\":\"Role\",\"foreign_key\":\"role_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"Role\",\"type\":\"belongs_to\"},\"user\":{\"active_record\":{\"name\":\"UserRole\",\"primary_key\":\"id\"},\"class_name\":\"User\",\"foreign_key\":\"user_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"User\",\"type\":\"belongs_to\"}}},\"WorkplaceLink\":{\"attributes\":{\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null}},\"collection_commands\":{},\"member_commands\":{},\"model_class_data\":{\"attributes\":{\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null},\"resource_id\":{\"column\":{\"default\":null,\"name\":\"resource_id\",\"null\":false,\"type\":null},\"name\":\"resource_id\",\"selected_by_default\":null},\"resource_type\":{\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"},\"name\":\"resource_type\",\"selected_by_default\":null}},\"className\":\"WorkerPlugins::WorkplaceLink\",\"collectionKey\":\"worker_plugins/workplace_links\",\"collectionName\":\"workplace_links\",\"i18nKey\":\"worker_plugins/workplace_link\",\"camelizedLower\":\"workerPlugins::WorkplaceLink\",\"name\":\"WorkplaceLink\",\"nameDasherized\":\"workplace-link\",\"pluralName\":\"worker_plugins_workplace_links\",\"ransackable_associations\":[{\"className\":\"Workplace\",\"collectionName\":\"workplaces\",\"foreignKey\":\"workplace_id\",\"name\":\"workplace\",\"macro\":\"belongs_to\",\"resource_name\":\"Workplace\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}},{\"name\":\"resource_type\",\"column\":{\"default\":null,\"name\":\"resource_type\",\"null\":false,\"type\":\"string\"}}],\"ransackable_scopes\":[],\"relationships\":[],\"paramKey\":\"workplace_link\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{}},\"Workplace\":{\"attributes\":{\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null}},\"collection_commands\":{\"destroy_links\":{\"name\":\"destroy_links\"},\"create_link\":{\"name\":\"create_link\"},\"current\":{\"name\":\"current\"},\"link_for\":{\"name\":\"link_for\"},\"switch_query_on_workplace\":{\"name\":\"switch_query_on_workplace\"}},\"member_commands\":{\"add_query\":{\"name\":\"add_query\"},\"delete_all_links\":{\"name\":\"delete_all_links\"},\"query_links_status\":{\"name\":\"query_links_status\"},\"remove_query\":{\"name\":\"remove_query\"}},\"model_class_data\":{\"attributes\":{\"id\":{\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null},\"name\":\"id\",\"selected_by_default\":null}},\"className\":\"WorkerPlugins::Workplace\",\"collectionKey\":\"worker_plugins/workplaces\",\"collectionName\":\"workplaces\",\"i18nKey\":\"worker_plugins/workplace\",\"camelizedLower\":\"workerPlugins::Workplace\",\"name\":\"Workplace\",\"nameDasherized\":\"workplace\",\"pluralName\":\"worker_plugins_workplaces\",\"ransackable_associations\":[{\"className\":\"User\",\"collectionName\":\"users\",\"foreignKey\":\"user_id\",\"name\":\"user\",\"macro\":\"belongs_to\",\"resource_name\":\"User\",\"through\":null}],\"ransackable_attributes\":[{\"name\":\"id\",\"column\":{\"default\":null,\"name\":\"id\",\"null\":false,\"type\":null}}],\"ransackable_scopes\":[],\"relationships\":[{\"className\":\"WorkplaceLink\",\"collectionName\":\"workplace_links\",\"foreignKey\":\"workplace_id\",\"name\":\"workplace_links\",\"macro\":\"has_many\",\"resource_name\":\"WorkplaceLink\",\"through\":null}],\"paramKey\":\"workplace\",\"primaryKey\":\"id\"},\"monetized_attributes\":[],\"relationships\":{\"workplace_links\":{\"active_record\":{\"name\":\"WorkerPlugins::Workplace\",\"primary_key\":\"id\"},\"class_name\":\"WorkplaceLink\",\"foreign_key\":\"workplace_id\",\"klass\":{\"primary_key\":\"id\"},\"options\":{\"as\":null,\"primary_key\":null,\"through\":null},\"resource_name\":\"WorkplaceLink\",\"type\":\"has_many\"}}}}}\nconst loader = new ModelRecipesLoader({recipes: modelRecipes})\nconst result = loader.load()\n\n\n\n \n\n const AccountModelClass = digg(result, \"Account\")\n\n class Account extends AccountModelClass {}\n\n \n\n const AccountSchoolModelClass = digg(result, \"AccountSchool\")\n\n class AccountSchool extends AccountSchoolModelClass {}\n\n \n\n const AccountUserModelClass = digg(result, \"AccountUser\")\n\n class AccountUser extends AccountUserModelClass {}\n\n \n\n const AuditActionModelClass = digg(result, \"AuditAction\")\n\n class AuditAction extends AuditActionModelClass {}\n\n \n\n const AuditAuditableTypeModelClass = digg(result, \"AuditAuditableType\")\n\n class AuditAuditableType extends AuditAuditableTypeModelClass {}\n\n \n\n const AuditModelClass = digg(result, \"Audit\")\n\n class Audit extends AuditModelClass {}\n\n \n\n const BrainBreakClassStepModelClass = digg(result, \"BrainBreakClassStep\")\n\n class BrainBreakClassStep extends BrainBreakClassStepModelClass {}\n\n \n\n const BrainBreakModelClass = digg(result, \"BrainBreak\")\n\n class BrainBreak extends BrainBreakModelClass {}\n\n \n\n const ChallengeClassStepModelClass = digg(result, \"ChallengeClassStep\")\n\n class ChallengeClassStep extends ChallengeClassStepModelClass {}\n\n \n\n const ChallengeModelClass = digg(result, \"Challenge\")\n\n class Challenge extends ChallengeModelClass {}\n\n \n\n const CheckInClassStepModelClass = digg(result, \"CheckInClassStep\")\n\n class CheckInClassStep extends CheckInClassStepModelClass {}\n\n \n\n const CheckInModelClass = digg(result, \"CheckIn\")\n\n class CheckIn extends CheckInModelClass {}\n\n \n\n const ClassStatusExpansionModelClass = digg(result, \"ClassStatusExpansion\")\n\n class ClassStatusExpansion extends ClassStatusExpansionModelClass {}\n\n \n\n const ClassStepModelClass = digg(result, \"ClassStep\")\n\n class ClassStep extends ClassStepModelClass {}\n\n \n\n const ContentAbsoluteContainerModelClass = digg(result, \"ContentAbsoluteContainer\")\n\n class ContentAbsoluteContainer extends ContentAbsoluteContainerModelClass {}\n\n \n\n const ContentPieceTypeModelClass = digg(result, \"ContentPieceType\")\n\n class ContentPieceType extends ContentPieceTypeModelClass {}\n\n \n\n const ContentModelClass = digg(result, \"Content\")\n\n class Content extends ContentModelClass {}\n\n \n\n const CountryModelClass = digg(result, \"Country\")\n\n class Country extends CountryModelClass {}\n\n \n\n const CourseClassStepModelClass = digg(result, \"CourseClassStep\")\n\n class CourseClassStep extends CourseClassStepModelClass {}\n\n \n\n const CourseGroupCourseModelClass = digg(result, \"CourseGroupCourse\")\n\n class CourseGroupCourse extends CourseGroupCourseModelClass {}\n\n \n\n const CourseGroupModelClass = digg(result, \"CourseGroup\")\n\n class CourseGroup extends CourseGroupModelClass {}\n\n \n\n const CourseModuleModelClass = digg(result, \"CourseModule\")\n\n class CourseModule extends CourseModuleModelClass {}\n\n \n\n const CourseModelClass = digg(result, \"Course\")\n\n class Course extends CourseModelClass {}\n\n \n\n const CurrencyModelClass = digg(result, \"Currency\")\n\n class Currency extends CurrencyModelClass {}\n\n \n\n const DialogueModelClass = digg(result, \"Dialogue\")\n\n class Dialogue extends DialogueModelClass {}\n\n \n\n const EmailTemplatePreviewLiquidVariableModelClass = digg(result, \"EmailTemplatePreviewLiquidVariable\")\n\n class EmailTemplatePreviewLiquidVariable extends EmailTemplatePreviewLiquidVariableModelClass {}\n\n \n\n const EmailTemplatePreviewModelClass = digg(result, \"EmailTemplatePreview\")\n\n class EmailTemplatePreview extends EmailTemplatePreviewModelClass {}\n\n \n\n const EmailTemplateModelClass = digg(result, \"EmailTemplate\")\n\n class EmailTemplate extends EmailTemplateModelClass {}\n\n \n\n const InvoiceLineModelClass = digg(result, \"InvoiceLine\")\n\n class InvoiceLine extends InvoiceLineModelClass {}\n\n \n\n const InvoiceModelClass = digg(result, \"Invoice\")\n\n class Invoice extends InvoiceModelClass {}\n\n \n\n const LocaleModelClass = digg(result, \"Locale\")\n\n class Locale extends LocaleModelClass {}\n\n \n\n const NewsletterModelClass = digg(result, \"Newsletter\")\n\n class Newsletter extends NewsletterModelClass {}\n\n \n\n const NewsletterTemplateModelClass = digg(result, \"NewsletterTemplate\")\n\n class NewsletterTemplate extends NewsletterTemplateModelClass {}\n\n \n\n const NewsletterTemplateTableSearchModelClass = digg(result, \"NewsletterTemplateTableSearch\")\n\n class NewsletterTemplateTableSearch extends NewsletterTemplateTableSearchModelClass {}\n\n \n\n const NotificationSettingModelClass = digg(result, \"NotificationSetting\")\n\n class NotificationSetting extends NotificationSettingModelClass {}\n\n \n\n const NotificationTypeActionModelClass = digg(result, \"NotificationTypeAction\")\n\n class NotificationTypeAction extends NotificationTypeActionModelClass {}\n\n \n\n const NotificationTypeAuditTriggerModelClass = digg(result, \"NotificationTypeAuditTrigger\")\n\n class NotificationTypeAuditTrigger extends NotificationTypeAuditTriggerModelClass {}\n\n \n\n const NotificationTypeModelClass = digg(result, \"NotificationType\")\n\n class NotificationType extends NotificationTypeModelClass {}\n\n \n\n const PlanModelClass = digg(result, \"Plan\")\n\n class Plan extends PlanModelClass {}\n\n \n\n const PlanResourcePeriodPriceModelClass = digg(result, \"PlanResourcePeriodPrice\")\n\n class PlanResourcePeriodPrice extends PlanResourcePeriodPriceModelClass {}\n\n \n\n const PlanResourcePeriodModelClass = digg(result, \"PlanResourcePeriod\")\n\n class PlanResourcePeriod extends PlanResourcePeriodModelClass {}\n\n \n\n const PlanResourceModelClass = digg(result, \"PlanResource\")\n\n class PlanResource extends PlanResourceModelClass {}\n\n \n\n const RoleModelClass = digg(result, \"Role\")\n\n class Role extends RoleModelClass {}\n\n \n\n const SchoolClassBrainBreakModelClass = digg(result, \"SchoolClassBrainBreak\")\n\n class SchoolClassBrainBreak extends SchoolClassBrainBreakModelClass {}\n\n \n\n const SchoolClassChallengeModelClass = digg(result, \"SchoolClassChallenge\")\n\n class SchoolClassChallenge extends SchoolClassChallengeModelClass {}\n\n \n\n const SchoolClassCheckInModelClass = digg(result, \"SchoolClassCheckIn\")\n\n class SchoolClassCheckIn extends SchoolClassCheckInModelClass {}\n\n \n\n const SchoolClassContentPieceModelClass = digg(result, \"SchoolClassContentPiece\")\n\n class SchoolClassContentPiece extends SchoolClassContentPieceModelClass {}\n\n \n\n const SchoolClassCourseModuleModelClass = digg(result, \"SchoolClassCourseModule\")\n\n class SchoolClassCourseModule extends SchoolClassCourseModuleModelClass {}\n\n \n\n const SchoolClassCourseModelClass = digg(result, \"SchoolClassCourse\")\n\n class SchoolClassCourse extends SchoolClassCourseModelClass {}\n\n \n\n const SchoolClassGroupClassStepModelClass = digg(result, \"SchoolClassGroupClassStep\")\n\n class SchoolClassGroupClassStep extends SchoolClassGroupClassStepModelClass {}\n\n \n\n const SchoolClassGroupModelClass = digg(result, \"SchoolClassGroup\")\n\n class SchoolClassGroup extends SchoolClassGroupModelClass {}\n\n \n\n const SchoolClassInvitationModelClass = digg(result, \"SchoolClassInvitation\")\n\n class SchoolClassInvitation extends SchoolClassInvitationModelClass {}\n\n \n\n const SchoolClassModelClass = digg(result, \"SchoolClass\")\n\n class SchoolClass extends SchoolClassModelClass {}\n\n \n\n const SchoolClassRoleModelClass = digg(result, \"SchoolClassRole\")\n\n class SchoolClassRole extends SchoolClassRoleModelClass {}\n\n \n\n const SchoolContactRequestModelClass = digg(result, \"SchoolContactRequest\")\n\n class SchoolContactRequest extends SchoolContactRequestModelClass {}\n\n \n\n const SchoolModelClass = digg(result, \"School\")\n\n class School extends SchoolModelClass {}\n\n \n\n const SchoolRoleModelClass = digg(result, \"SchoolRole\")\n\n class SchoolRole extends SchoolRoleModelClass {}\n\n \n\n const ScoreFactorGroupModelClass = digg(result, \"ScoreFactorGroup\")\n\n class ScoreFactorGroup extends ScoreFactorGroupModelClass {}\n\n \n\n const ScoreFactorGroupScoreFactorModelClass = digg(result, \"ScoreFactorGroupScoreFactor\")\n\n class ScoreFactorGroupScoreFactor extends ScoreFactorGroupScoreFactorModelClass {}\n\n \n\n const ScoreFactorModelClass = digg(result, \"ScoreFactor\")\n\n class ScoreFactor extends ScoreFactorModelClass {}\n\n \n\n const StylingModelClass = digg(result, \"Styling\")\n\n class Styling extends StylingModelClass {}\n\n \n\n const SubscriptionPeriodModelClass = digg(result, \"SubscriptionPeriod\")\n\n class SubscriptionPeriod extends SubscriptionPeriodModelClass {}\n\n \n\n const SubscriptionModelClass = digg(result, \"Subscription\")\n\n class Subscription extends SubscriptionModelClass {}\n\n \n\n const SurveyModelClass = digg(result, \"Survey\")\n\n class Survey extends SurveyModelClass {}\n\n \n\n const SurveyStepElementOptionModelClass = digg(result, \"SurveyStepElementOption\")\n\n class SurveyStepElementOption extends SurveyStepElementOptionModelClass {}\n\n \n\n const SurveyStepElementOptionScoreModelClass = digg(result, \"SurveyStepElementOptionScore\")\n\n class SurveyStepElementOptionScore extends SurveyStepElementOptionScoreModelClass {}\n\n \n\n const SurveyStepElementModelClass = digg(result, \"SurveyStepElement\")\n\n class SurveyStepElement extends SurveyStepElementModelClass {}\n\n \n\n const SurveyStepModelClass = digg(result, \"SurveyStep\")\n\n class SurveyStep extends SurveyStepModelClass {}\n\n \n\n const TableSearchModelClass = digg(result, \"TableSearch\")\n\n class TableSearch extends TableSearchModelClass {}\n\n \n\n const TableSettingColumnModelClass = digg(result, \"TableSettingColumn\")\n\n class TableSettingColumn extends TableSettingColumnModelClass {}\n\n \n\n const TableSettingModelClass = digg(result, \"TableSetting\")\n\n class TableSetting extends TableSettingModelClass {}\n\n \n\n const TeamModelClass = digg(result, \"Team\")\n\n class Team extends TeamModelClass {}\n\n \n\n const TeamSurveyModelClass = digg(result, \"TeamSurvey\")\n\n class TeamSurvey extends TeamSurveyModelClass {}\n\n \n\n const TeamSurveyStepElementAnswerModelClass = digg(result, \"TeamSurveyStepElementAnswer\")\n\n class TeamSurveyStepElementAnswer extends TeamSurveyStepElementAnswerModelClass {}\n\n \n\n const TeamSurveyStepElementModelClass = digg(result, \"TeamSurveyStepElement\")\n\n class TeamSurveyStepElement extends TeamSurveyStepElementModelClass {}\n\n \n\n const TeamSurveyStepModelClass = digg(result, \"TeamSurveyStep\")\n\n class TeamSurveyStep extends TeamSurveyStepModelClass {}\n\n \n\n const TeamUserModelClass = digg(result, \"TeamUser\")\n\n class TeamUser extends TeamUserModelClass {}\n\n \n\n const TextKeyModelClass = digg(result, \"TextKey\")\n\n class TextKey extends TextKeyModelClass {}\n\n \n\n const TextValueModelClass = digg(result, \"TextValue\")\n\n class TextValue extends TextValueModelClass {}\n\n \n\n const TrixFileModelClass = digg(result, \"TrixFile\")\n\n class TrixFile extends TrixFileModelClass {}\n\n \n\n const UserModelClass = digg(result, \"User\")\n\n class User extends UserModelClass {}\n\n \n\n const UserRoleModelClass = digg(result, \"UserRole\")\n\n class UserRole extends UserRoleModelClass {}\n\n \n\n const WorkplaceLinkModelClass = digg(result, \"WorkplaceLink\")\n\n class WorkplaceLink extends WorkplaceLinkModelClass {}\n\n \n\n const WorkplaceModelClass = digg(result, \"Workplace\")\n\n class Workplace extends WorkplaceModelClass {}\n\n\nexport {Account, AccountSchool, AccountUser, AuditAction, AuditAuditableType, Audit, BrainBreakClassStep, BrainBreak, ChallengeClassStep, Challenge, CheckInClassStep, CheckIn, ClassStatusExpansion, ClassStep, ContentAbsoluteContainer, ContentPieceType, Content, Country, CourseClassStep, CourseGroupCourse, CourseGroup, CourseModule, Course, Currency, Dialogue, EmailTemplatePreviewLiquidVariable, EmailTemplatePreview, EmailTemplate, InvoiceLine, Invoice, Locale, Newsletter, NewsletterTemplate, NewsletterTemplateTableSearch, NotificationSetting, NotificationTypeAction, NotificationTypeAuditTrigger, NotificationType, Plan, PlanResourcePeriodPrice, PlanResourcePeriod, PlanResource, Role, SchoolClassBrainBreak, SchoolClassChallenge, SchoolClassCheckIn, SchoolClassContentPiece, SchoolClassCourseModule, SchoolClassCourse, SchoolClassGroupClassStep, SchoolClassGroup, SchoolClassInvitation, SchoolClass, SchoolClassRole, SchoolContactRequest, School, SchoolRole, ScoreFactorGroup, ScoreFactorGroupScoreFactor, ScoreFactor, Styling, SubscriptionPeriod, Subscription, Survey, SurveyStepElementOption, SurveyStepElementOptionScore, SurveyStepElement, SurveyStep, TableSearch, TableSettingColumn, TableSetting, Team, TeamSurvey, TeamSurveyStepElementAnswer, TeamSurveyStepElement, TeamSurveyStep, TeamUser, TextKey, TextValue, TrixFile, User, UserRole, WorkplaceLink, Workplace}\n","'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\nimport canUseDOM from '../../modules/canUseDom';\nfunction isScreenReaderEnabled() {\n return new Promise((resolve, reject) => {\n resolve(true);\n });\n}\nvar prefersReducedMotionMedia = canUseDOM && typeof window.matchMedia === 'function' ? window.matchMedia('(prefers-reduced-motion: reduce)') : null;\nfunction isReduceMotionEnabled() {\n return new Promise((resolve, reject) => {\n resolve(prefersReducedMotionMedia ? prefersReducedMotionMedia.matches : true);\n });\n}\nfunction addChangeListener(fn) {\n if (prefersReducedMotionMedia != null) {\n prefersReducedMotionMedia.addEventListener != null ? prefersReducedMotionMedia.addEventListener('change', fn) : prefersReducedMotionMedia.addListener(fn);\n }\n}\nfunction removeChangeListener(fn) {\n if (prefersReducedMotionMedia != null) {\n prefersReducedMotionMedia.removeEventListener != null ? prefersReducedMotionMedia.removeEventListener('change', fn) : prefersReducedMotionMedia.removeListener(fn);\n }\n}\nvar handlers = {};\nvar AccessibilityInfo = {\n /**\n * Query whether a screen reader is currently enabled.\n *\n * Returns a promise which resolves to a boolean.\n * The result is `true` when a screen reader is enabled and `false` otherwise.\n */\n isScreenReaderEnabled,\n /**\n * Query whether the user prefers reduced motion.\n *\n * Returns a promise which resolves to a boolean.\n * The result is `true` when a screen reader is enabled and `false` otherwise.\n */\n isReduceMotionEnabled,\n /**\n * Deprecated\n */\n fetch: isScreenReaderEnabled,\n /**\n * Add an event handler. Supported events: reduceMotionChanged\n */\n addEventListener: function addEventListener(eventName, handler) {\n if (eventName === 'reduceMotionChanged') {\n if (!prefersReducedMotionMedia) {\n return;\n }\n var listener = event => {\n handler(event.matches);\n };\n addChangeListener(listener);\n handlers[handler] = listener;\n }\n return {\n remove: () => AccessibilityInfo.removeEventListener(eventName, handler)\n };\n },\n /**\n * Set accessibility focus to a react component.\n */\n setAccessibilityFocus: function setAccessibilityFocus(reactTag) {},\n /**\n * Post a string to be announced by the screen reader.\n */\n announceForAccessibility: function announceForAccessibility(announcement) {},\n /**\n * Remove an event handler.\n */\n removeEventListener: function removeEventListener(eventName, handler) {\n if (eventName === 'reduceMotionChanged') {\n var listener = handlers[handler];\n if (!listener || !prefersReducedMotionMedia) {\n return;\n }\n removeChangeListener(listener);\n }\n return;\n }\n};\nexport default AccessibilityInfo;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"animating\", \"color\", \"hidesWhenStopped\", \"size\", \"style\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nvar createSvgCircle = style => /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"16\",\n cy: \"16\",\n fill: \"none\",\n r: \"14\",\n strokeWidth: \"4\",\n style: style\n});\nvar ActivityIndicator = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var _props$animating = props.animating,\n animating = _props$animating === void 0 ? true : _props$animating,\n _props$color = props.color,\n color = _props$color === void 0 ? '#1976D2' : _props$color,\n _props$hidesWhenStopp = props.hidesWhenStopped,\n hidesWhenStopped = _props$hidesWhenStopp === void 0 ? true : _props$hidesWhenStopp,\n _props$size = props.size,\n size = _props$size === void 0 ? 'small' : _props$size,\n style = props.style,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var svg = /*#__PURE__*/React.createElement(\"svg\", {\n height: \"100%\",\n viewBox: \"0 0 32 32\",\n width: \"100%\"\n }, createSvgCircle({\n stroke: color,\n opacity: 0.2\n }), createSvgCircle({\n stroke: color,\n strokeDasharray: 80,\n strokeDashoffset: 60\n }));\n return /*#__PURE__*/React.createElement(View, _extends({}, other, {\n \"aria-valuemax\": 1,\n \"aria-valuemin\": 0,\n ref: forwardedRef,\n role: \"progressbar\",\n style: [styles.container, style]\n }), /*#__PURE__*/React.createElement(View, {\n children: svg,\n style: [typeof size === 'number' ? {\n height: size,\n width: size\n } : indicatorSizes[size], styles.animation, !animating && styles.animationPause, !animating && hidesWhenStopped && styles.hidesWhenStopped]\n }));\n});\nActivityIndicator.displayName = 'ActivityIndicator';\nvar styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n justifyContent: 'center'\n },\n hidesWhenStopped: {\n visibility: 'hidden'\n },\n animation: {\n animationDuration: '0.75s',\n animationKeyframes: [{\n '0%': {\n transform: 'rotate(0deg)'\n },\n '100%': {\n transform: 'rotate(360deg)'\n }\n }],\n animationTimingFunction: 'linear',\n animationIterationCount: 'infinite'\n },\n animationPause: {\n animationPlayState: 'paused'\n }\n});\nvar indicatorSizes = StyleSheet.create({\n small: {\n width: 20,\n height: 20\n },\n large: {\n width: 36,\n height: 36\n }\n});\nexport default ActivityIndicator;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nclass Alert {\n static alert() {}\n}\nexport default Alert;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';\nexport default TurboModuleRegistry.get('NativeAnimatedModule');","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport NativeAnimatedNonTurboModule from './NativeAnimatedModule';\nimport NativeAnimatedTurboModule from './NativeAnimatedTurboModule';\nimport NativeEventEmitter from '../EventEmitter/NativeEventEmitter';\nimport Platform from '../Utilities/Platform';\nimport ReactNativeFeatureFlags from '../ReactNative/ReactNativeFeatureFlags';\nimport invariant from 'fbjs/lib/invariant';\nimport RCTDeviceEventEmitter from '../EventEmitter/RCTDeviceEventEmitter';\n// TODO T69437152 @petetheheat - Delete this fork when Fabric ships to 100%.\nvar NativeAnimatedModule = Platform.OS === 'ios' && global.RN$Bridgeless === true ? NativeAnimatedTurboModule : NativeAnimatedNonTurboModule;\nvar __nativeAnimatedNodeTagCount = 1; /* used for animated nodes */\nvar __nativeAnimationIdCount = 1; /* used for started animations */\n\nvar nativeEventEmitter;\nvar waitingForQueuedOperations = new Set();\nvar queueOperations = false;\nvar queue = [];\n// $FlowFixMe\nvar singleOpQueue = [];\nvar useSingleOpBatching = false;\nPlatform.OS === 'android' && !!(NativeAnimatedModule != null && NativeAnimatedModule.queueAndExecuteBatchedOperations) && ReactNativeFeatureFlags.animatedShouldUseSingleOp();\nvar flushQueueTimeout = null;\nvar eventListenerGetValueCallbacks = {};\nvar eventListenerAnimationFinishedCallbacks = {};\nvar globalEventEmitterGetValueListener = null;\nvar globalEventEmitterAnimationFinishedListener = null;\nvar nativeOps = useSingleOpBatching ? function () {\n var apis = ['createAnimatedNode',\n // 1\n 'updateAnimatedNodeConfig',\n // 2\n 'getValue',\n // 3\n 'startListeningToAnimatedNodeValue',\n // 4\n 'stopListeningToAnimatedNodeValue',\n // 5\n 'connectAnimatedNodes',\n // 6\n 'disconnectAnimatedNodes',\n // 7\n 'startAnimatingNode',\n // 8\n 'stopAnimation',\n // 9\n 'setAnimatedNodeValue',\n // 10\n 'setAnimatedNodeOffset',\n // 11\n 'flattenAnimatedNodeOffset',\n // 12\n 'extractAnimatedNodeOffset',\n // 13\n 'connectAnimatedNodeToView',\n // 14\n 'disconnectAnimatedNodeFromView',\n // 15\n 'restoreDefaultValues',\n // 16\n 'dropAnimatedNode',\n // 17\n 'addAnimatedEventToView',\n // 18\n 'removeAnimatedEventFromView',\n // 19\n 'addListener',\n // 20\n 'removeListener' // 21\n ];\n\n return apis.reduce((acc, functionName, i) => {\n // These indices need to be kept in sync with the indices in native (see NativeAnimatedModule in Java, or the equivalent for any other native platform).\n // $FlowFixMe[prop-missing]\n acc[functionName] = i + 1;\n return acc;\n }, {});\n}() : NativeAnimatedModule;\n\n/**\n * Wrappers around NativeAnimatedModule to provide flow and autocomplete support for\n * the native module methods, and automatic queue management on Android\n */\nvar API = {\n getValue: function getValue(tag, saveValueCallback) {\n invariant(nativeOps, 'Native animated module is not available');\n if (useSingleOpBatching) {\n if (saveValueCallback) {\n eventListenerGetValueCallbacks[tag] = saveValueCallback;\n }\n // $FlowFixMe\n API.queueOperation(nativeOps.getValue, tag);\n } else {\n API.queueOperation(nativeOps.getValue, tag, saveValueCallback);\n }\n },\n setWaitingForIdentifier: function setWaitingForIdentifier(id) {\n waitingForQueuedOperations.add(id);\n queueOperations = true;\n if (ReactNativeFeatureFlags.animatedShouldDebounceQueueFlush() && flushQueueTimeout) {\n clearTimeout(flushQueueTimeout);\n }\n },\n unsetWaitingForIdentifier: function unsetWaitingForIdentifier(id) {\n waitingForQueuedOperations.delete(id);\n if (waitingForQueuedOperations.size === 0) {\n queueOperations = false;\n API.disableQueue();\n }\n },\n disableQueue: function disableQueue() {\n invariant(nativeOps, 'Native animated module is not available');\n if (ReactNativeFeatureFlags.animatedShouldDebounceQueueFlush()) {\n var prevTimeout = flushQueueTimeout;\n clearImmediate(prevTimeout);\n flushQueueTimeout = setImmediate(API.flushQueue);\n } else {\n API.flushQueue();\n }\n },\n flushQueue: function flushQueue() {\n /*\n invariant(NativeAnimatedModule, 'Native animated module is not available');\n flushQueueTimeout = null;\n // Early returns before calling any APIs\n if (useSingleOpBatching && singleOpQueue.length === 0) {\n return;\n }\n if (!useSingleOpBatching && queue.length === 0) {\n return;\n }\n if (useSingleOpBatching) {\n // Set up event listener for callbacks if it's not set up\n if (\n !globalEventEmitterGetValueListener ||\n !globalEventEmitterAnimationFinishedListener\n ) {\n setupGlobalEventEmitterListeners();\n }\n // Single op batching doesn't use callback functions, instead we\n // use RCTDeviceEventEmitter. This reduces overhead of sending lots of\n // JSI functions across to native code; but also, TM infrastructure currently\n // does not support packing a function into native arrays.\n NativeAnimatedModule.queueAndExecuteBatchedOperations?.(singleOpQueue);\n singleOpQueue.length = 0;\n } else {\n Platform.OS === 'android' && NativeAnimatedModule.startOperationBatch?.();\n for (let q = 0, l = queue.length; q < l; q++) {\n queue[q]();\n }\n queue.length = 0;\n Platform.OS === 'android' &&\n NativeAnimatedModule.finishOperationBatch?.();\n }\n */\n },\n queueOperation: function queueOperation(fn) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (useSingleOpBatching) {\n // Get the command ID from the queued function, and push that ID and any arguments needed to execute the operation\n // $FlowFixMe: surprise, fn is actually a number\n singleOpQueue.push(fn, ...args);\n return;\n }\n\n // If queueing is explicitly on, *or* the queue has not yet\n // been flushed, use the queue. This is to prevent operations\n // from being executed out of order.\n if (queueOperations || queue.length !== 0) {\n queue.push(() => fn(...args));\n } else {\n fn(...args);\n }\n },\n createAnimatedNode: function createAnimatedNode(tag, config) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.createAnimatedNode, tag, config);\n },\n updateAnimatedNodeConfig: function updateAnimatedNodeConfig(tag, config) {\n invariant(nativeOps, 'Native animated module is not available');\n //if (nativeOps.updateAnimatedNodeConfig) {\n // API.queueOperation(nativeOps.updateAnimatedNodeConfig, tag, config);\n //}\n },\n\n startListeningToAnimatedNodeValue: function startListeningToAnimatedNodeValue(tag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.startListeningToAnimatedNodeValue, tag);\n },\n stopListeningToAnimatedNodeValue: function stopListeningToAnimatedNodeValue(tag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.stopListeningToAnimatedNodeValue, tag);\n },\n connectAnimatedNodes: function connectAnimatedNodes(parentTag, childTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.connectAnimatedNodes, parentTag, childTag);\n },\n disconnectAnimatedNodes: function disconnectAnimatedNodes(parentTag, childTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.disconnectAnimatedNodes, parentTag, childTag);\n },\n startAnimatingNode: function startAnimatingNode(animationId, nodeTag, config, endCallback) {\n invariant(nativeOps, 'Native animated module is not available');\n if (useSingleOpBatching) {\n if (endCallback) {\n eventListenerAnimationFinishedCallbacks[animationId] = endCallback;\n }\n // $FlowFixMe\n API.queueOperation(nativeOps.startAnimatingNode, animationId, nodeTag, config);\n } else {\n API.queueOperation(nativeOps.startAnimatingNode, animationId, nodeTag, config, endCallback);\n }\n },\n stopAnimation: function stopAnimation(animationId) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.stopAnimation, animationId);\n },\n setAnimatedNodeValue: function setAnimatedNodeValue(nodeTag, value) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.setAnimatedNodeValue, nodeTag, value);\n },\n setAnimatedNodeOffset: function setAnimatedNodeOffset(nodeTag, offset) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.setAnimatedNodeOffset, nodeTag, offset);\n },\n flattenAnimatedNodeOffset: function flattenAnimatedNodeOffset(nodeTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.flattenAnimatedNodeOffset, nodeTag);\n },\n extractAnimatedNodeOffset: function extractAnimatedNodeOffset(nodeTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.extractAnimatedNodeOffset, nodeTag);\n },\n connectAnimatedNodeToView: function connectAnimatedNodeToView(nodeTag, viewTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.connectAnimatedNodeToView, nodeTag, viewTag);\n },\n disconnectAnimatedNodeFromView: function disconnectAnimatedNodeFromView(nodeTag, viewTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.disconnectAnimatedNodeFromView, nodeTag, viewTag);\n },\n restoreDefaultValues: function restoreDefaultValues(nodeTag) {\n invariant(nativeOps, 'Native animated module is not available');\n // Backwards compat with older native runtimes, can be removed later.\n if (nativeOps.restoreDefaultValues != null) {\n API.queueOperation(nativeOps.restoreDefaultValues, nodeTag);\n }\n },\n dropAnimatedNode: function dropAnimatedNode(tag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.dropAnimatedNode, tag);\n },\n addAnimatedEventToView: function addAnimatedEventToView(viewTag, eventName, eventMapping) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.addAnimatedEventToView, viewTag, eventName, eventMapping);\n },\n removeAnimatedEventFromView(viewTag, eventName, animatedNodeTag) {\n invariant(nativeOps, 'Native animated module is not available');\n API.queueOperation(nativeOps.removeAnimatedEventFromView, viewTag, eventName, animatedNodeTag);\n }\n};\nfunction setupGlobalEventEmitterListeners() {\n globalEventEmitterGetValueListener = RCTDeviceEventEmitter.addListener('onNativeAnimatedModuleGetValue', function (params) {\n var tag = params.tag;\n var callback = eventListenerGetValueCallbacks[tag];\n if (!callback) {\n return;\n }\n callback(params.value);\n delete eventListenerGetValueCallbacks[tag];\n });\n globalEventEmitterAnimationFinishedListener = RCTDeviceEventEmitter.addListener('onNativeAnimatedModuleAnimationFinished', function (params) {\n var animationId = params.animationId;\n var callback = eventListenerAnimationFinishedCallbacks[animationId];\n if (!callback) {\n return;\n }\n callback(params);\n delete eventListenerAnimationFinishedCallbacks[animationId];\n });\n}\n\n/**\n * Styles allowed by the native animated implementation.\n *\n * In general native animated implementation should support any numeric or color property that\n * doesn't need to be updated through the shadow view hierarchy (all non-layout properties).\n */\nvar SUPPORTED_COLOR_STYLES = {\n backgroundColor: true,\n borderBottomColor: true,\n borderColor: true,\n borderEndColor: true,\n borderLeftColor: true,\n borderRightColor: true,\n borderStartColor: true,\n borderTopColor: true,\n color: true,\n tintColor: true\n};\nvar SUPPORTED_STYLES = _objectSpread(_objectSpread({}, SUPPORTED_COLOR_STYLES), {}, {\n borderBottomEndRadius: true,\n borderBottomLeftRadius: true,\n borderBottomRightRadius: true,\n borderBottomStartRadius: true,\n borderRadius: true,\n borderTopEndRadius: true,\n borderTopLeftRadius: true,\n borderTopRightRadius: true,\n borderTopStartRadius: true,\n elevation: true,\n opacity: true,\n transform: true,\n zIndex: true,\n /* ios styles */\n shadowOpacity: true,\n shadowRadius: true,\n /* legacy android transform properties */\n scaleX: true,\n scaleY: true,\n translateX: true,\n translateY: true\n});\nvar SUPPORTED_TRANSFORMS = {\n translateX: true,\n translateY: true,\n scale: true,\n scaleX: true,\n scaleY: true,\n rotate: true,\n rotateX: true,\n rotateY: true,\n rotateZ: true,\n perspective: true\n};\nvar SUPPORTED_INTERPOLATION_PARAMS = {\n inputRange: true,\n outputRange: true,\n extrapolate: true,\n extrapolateRight: true,\n extrapolateLeft: true\n};\nfunction addWhitelistedStyleProp(prop) {\n SUPPORTED_STYLES[prop] = true;\n}\nfunction addWhitelistedTransformProp(prop) {\n SUPPORTED_TRANSFORMS[prop] = true;\n}\nfunction addWhitelistedInterpolationParam(param) {\n SUPPORTED_INTERPOLATION_PARAMS[param] = true;\n}\nfunction isSupportedColorStyleProp(prop) {\n return SUPPORTED_COLOR_STYLES.hasOwnProperty(prop);\n}\nfunction isSupportedStyleProp(prop) {\n return SUPPORTED_STYLES.hasOwnProperty(prop);\n}\nfunction isSupportedTransformProp(prop) {\n return SUPPORTED_TRANSFORMS.hasOwnProperty(prop);\n}\nfunction isSupportedInterpolationParam(param) {\n return SUPPORTED_INTERPOLATION_PARAMS.hasOwnProperty(param);\n}\nfunction validateTransform(configs) {\n configs.forEach(config => {\n if (!isSupportedTransformProp(config.property)) {\n throw new Error(\"Property '\" + config.property + \"' is not supported by native animated module\");\n }\n });\n}\nfunction validateStyles(styles) {\n for (var _key2 in styles) {\n if (!isSupportedStyleProp(_key2)) {\n throw new Error(\"Style property '\" + _key2 + \"' is not supported by native animated module\");\n }\n }\n}\nfunction validateInterpolation(config) {\n for (var _key3 in config) {\n if (!isSupportedInterpolationParam(_key3)) {\n throw new Error(\"Interpolation property '\" + _key3 + \"' is not supported by native animated module\");\n }\n }\n}\nfunction generateNewNodeTag() {\n return __nativeAnimatedNodeTagCount++;\n}\nfunction generateNewAnimationId() {\n return __nativeAnimationIdCount++;\n}\nfunction assertNativeAnimatedModule() {\n invariant(NativeAnimatedModule, 'Native animated module is not available');\n}\nvar _warnedMissingNativeAnimated = false;\nfunction shouldUseNativeDriver(config) {\n if (config.useNativeDriver == null) {\n console.warn('Animated: `useNativeDriver` was not specified. This is a required ' + 'option and must be explicitly set to `true` or `false`');\n }\n if (config.useNativeDriver === true && !NativeAnimatedModule) {\n if (!_warnedMissingNativeAnimated) {\n console.warn('Animated: `useNativeDriver` is not supported because the native ' + 'animated module is missing. Falling back to JS-based animation. To ' + 'resolve this, add `RCTAnimation` module to this app, or remove ' + '`useNativeDriver`. ' + 'Make sure to run `bundle exec pod install` first. Read more about autolinking: https://github.com/react-native-community/cli/blob/master/docs/autolinking.md');\n _warnedMissingNativeAnimated = true;\n }\n return false;\n }\n return config.useNativeDriver || false;\n}\nfunction transformDataType(value) {\n // Change the string type to number type so we can reuse the same logic in\n // iOS and Android platform\n if (typeof value !== 'string') {\n return value;\n }\n if (/deg$/.test(value)) {\n var degrees = parseFloat(value) || 0;\n var radians = degrees * Math.PI / 180.0;\n return radians;\n } else {\n return value;\n }\n}\nexport { API, isSupportedColorStyleProp, isSupportedStyleProp, isSupportedTransformProp, isSupportedInterpolationParam, addWhitelistedStyleProp, addWhitelistedTransformProp, addWhitelistedInterpolationParam, validateStyles, validateTransform, validateInterpolation, generateNewNodeTag, generateNewAnimationId, assertNativeAnimatedModule, shouldUseNativeDriver, transformDataType };\nexport default {\n API,\n isSupportedColorStyleProp,\n isSupportedStyleProp,\n isSupportedTransformProp,\n isSupportedInterpolationParam,\n addWhitelistedStyleProp,\n addWhitelistedTransformProp,\n addWhitelistedInterpolationParam,\n validateStyles,\n validateTransform,\n validateInterpolation,\n generateNewNodeTag,\n generateNewAnimationId,\n assertNativeAnimatedModule,\n shouldUseNativeDriver,\n transformDataType,\n // $FlowExpectedError[unsafe-getters-setters] - unsafe getter lint suppresion\n // $FlowExpectedError[missing-type-arg] - unsafe getter lint suppresion\n get nativeEventEmitter() {\n if (!nativeEventEmitter) {\n nativeEventEmitter = new NativeEventEmitter(\n // T88715063: NativeEventEmitter only used this parameter on iOS. Now it uses it on all platforms, so this code was modified automatically to preserve its behavior\n // If you want to use the native module on other platforms, please remove this condition and test its behavior\n Platform.OS !== 'ios' ? null : NativeAnimatedModule);\n }\n return nativeEventEmitter;\n }\n};","import Platform from '../../../exports/Platform';\nexport default Platform;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nvar ReactNativeFeatureFlags = {\n isLayoutAnimationEnabled: () => true,\n shouldEmitW3CPointerEvents: () => false,\n shouldPressibilityUseW3CPointerEventsForHover: () => false,\n animatedShouldDebounceQueueFlush: () => false,\n animatedShouldUseSingleOp: () => false\n};\nexport default ReactNativeFeatureFlags;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport invariant from 'fbjs/lib/invariant';\nexport function get(name) {\n return null;\n}\nexport function getEnforcing(name) {\n var module = get(name);\n invariant(module != null, \"TurboModuleRegistry.getEnforcing(...): '\" + name + \"' could not be found. \" + 'Verify that a module by this name is registered in the native binary.');\n return module;\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nvar NativeAnimatedAPI = NativeAnimatedHelper.API;\nimport invariant from 'fbjs/lib/invariant';\nvar _uniqueId = 1;\n\n// Note(vjeux): this would be better as an interface but flow doesn't\n// support them yet\nclass AnimatedNode {\n __attach() {}\n __detach() {\n if (this.__isNative && this.__nativeTag != null) {\n NativeAnimatedHelper.API.dropAnimatedNode(this.__nativeTag);\n this.__nativeTag = undefined;\n }\n }\n __getValue() {}\n __getAnimatedValue() {\n return this.__getValue();\n }\n __addChild(child) {}\n __removeChild(child) {}\n __getChildren() {\n return [];\n }\n\n /* Methods and props used by native Animated impl */\n\n constructor() {\n this._listeners = {};\n }\n __makeNative(platformConfig) {\n if (!this.__isNative) {\n throw new Error('This node cannot be made a \"native\" animated node');\n }\n this._platformConfig = platformConfig;\n if (this.hasListeners()) {\n this._startListeningToNativeValueUpdates();\n }\n }\n\n /**\n * Adds an asynchronous listener to the value so you can observe updates from\n * animations. This is useful because there is no way to\n * synchronously read the value because it might be driven natively.\n *\n * See https://reactnative.dev/docs/animatedvalue#addlistener\n */\n addListener(callback) {\n var id = String(_uniqueId++);\n this._listeners[id] = callback;\n if (this.__isNative) {\n this._startListeningToNativeValueUpdates();\n }\n return id;\n }\n\n /**\n * Unregister a listener. The `id` param shall match the identifier\n * previously returned by `addListener()`.\n *\n * See https://reactnative.dev/docs/animatedvalue#removelistener\n */\n removeListener(id) {\n delete this._listeners[id];\n if (this.__isNative && !this.hasListeners()) {\n this._stopListeningForNativeValueUpdates();\n }\n }\n\n /**\n * Remove all registered listeners.\n *\n * See https://reactnative.dev/docs/animatedvalue#removealllisteners\n */\n removeAllListeners() {\n this._listeners = {};\n if (this.__isNative) {\n this._stopListeningForNativeValueUpdates();\n }\n }\n hasListeners() {\n return !!Object.keys(this._listeners).length;\n }\n _startListeningToNativeValueUpdates() {\n if (this.__nativeAnimatedValueListener && !this.__shouldUpdateListenersForNewNativeTag) {\n return;\n }\n if (this.__shouldUpdateListenersForNewNativeTag) {\n this.__shouldUpdateListenersForNewNativeTag = false;\n this._stopListeningForNativeValueUpdates();\n }\n NativeAnimatedAPI.startListeningToAnimatedNodeValue(this.__getNativeTag());\n this.__nativeAnimatedValueListener = NativeAnimatedHelper.nativeEventEmitter.addListener('onAnimatedValueUpdate', data => {\n if (data.tag !== this.__getNativeTag()) {\n return;\n }\n this.__onAnimatedValueUpdateReceived(data.value);\n });\n }\n __onAnimatedValueUpdateReceived(value) {\n this.__callListeners(value);\n }\n __callListeners(value) {\n for (var _key in this._listeners) {\n this._listeners[_key]({\n value\n });\n }\n }\n _stopListeningForNativeValueUpdates() {\n if (!this.__nativeAnimatedValueListener) {\n return;\n }\n this.__nativeAnimatedValueListener.remove();\n this.__nativeAnimatedValueListener = null;\n NativeAnimatedAPI.stopListeningToAnimatedNodeValue(this.__getNativeTag());\n }\n __getNativeTag() {\n var _this$__nativeTag;\n NativeAnimatedHelper.assertNativeAnimatedModule();\n invariant(this.__isNative, 'Attempt to get native tag from node not marked as \"native\"');\n var nativeTag = (_this$__nativeTag = this.__nativeTag) !== null && _this$__nativeTag !== void 0 ? _this$__nativeTag : NativeAnimatedHelper.generateNewNodeTag();\n if (this.__nativeTag == null) {\n this.__nativeTag = nativeTag;\n var config = this.__getNativeConfig();\n if (this._platformConfig) {\n config.platformConfig = this._platformConfig;\n }\n NativeAnimatedHelper.API.createAnimatedNode(nativeTag, config);\n this.__shouldUpdateListenersForNewNativeTag = true;\n }\n return nativeTag;\n }\n __getNativeConfig() {\n throw new Error('This JS animated node type cannot be used as native animated node');\n }\n toJSON() {\n return this.__getValue();\n }\n __getPlatformConfig() {\n return this._platformConfig;\n }\n __setPlatformConfig(platformConfig) {\n this._platformConfig = platformConfig;\n }\n}\nexport default AnimatedNode;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\nimport AnimatedNode from './AnimatedNode';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nclass AnimatedWithChildren extends AnimatedNode {\n constructor() {\n super();\n this._children = [];\n }\n __makeNative(platformConfig) {\n if (!this.__isNative) {\n this.__isNative = true;\n for (var _iterator = _createForOfIteratorHelperLoose(this._children), _step; !(_step = _iterator()).done;) {\n var child = _step.value;\n child.__makeNative(platformConfig);\n NativeAnimatedHelper.API.connectAnimatedNodes(this.__getNativeTag(), child.__getNativeTag());\n }\n }\n super.__makeNative(platformConfig);\n }\n __addChild(child) {\n if (this._children.length === 0) {\n this.__attach();\n }\n this._children.push(child);\n if (this.__isNative) {\n // Only accept \"native\" animated nodes as children\n child.__makeNative(this.__getPlatformConfig());\n NativeAnimatedHelper.API.connectAnimatedNodes(this.__getNativeTag(), child.__getNativeTag());\n }\n }\n __removeChild(child) {\n var index = this._children.indexOf(child);\n if (index === -1) {\n console.warn(\"Trying to remove a child that doesn't exist\");\n return;\n }\n if (this.__isNative && child.__isNative) {\n NativeAnimatedHelper.API.disconnectAnimatedNodes(this.__getNativeTag(), child.__getNativeTag());\n }\n this._children.splice(index, 1);\n if (this._children.length === 0) {\n this.__detach();\n }\n }\n __getChildren() {\n return this._children;\n }\n __callListeners(value) {\n super.__callListeners(value);\n if (!this.__isNative) {\n for (var _iterator2 = _createForOfIteratorHelperLoose(this._children), _step2; !(_step2 = _iterator2()).done;) {\n var child = _step2.value;\n // $FlowFixMe[method-unbinding] added when improving typing for this parameters\n if (child.__getValue) {\n child.__callListeners(child.__getValue());\n }\n }\n }\n }\n}\nexport default AnimatedWithChildren;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n/* eslint no-bitwise: 0 */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport AnimatedWithChildren from './AnimatedWithChildren';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nimport invariant from 'fbjs/lib/invariant';\nimport normalizeColor from '@react-native/normalize-colors';\nvar __DEV__ = process.env.NODE_ENV !== 'production';\nvar linear = t => t;\n\n/**\n * Very handy helper to map input ranges to output ranges with an easing\n * function and custom behavior outside of the ranges.\n */\nfunction createInterpolation(config) {\n if (config.outputRange && typeof config.outputRange[0] === 'string') {\n return createInterpolationFromStringOutputRange(config);\n }\n var outputRange = config.outputRange;\n var inputRange = config.inputRange;\n if (__DEV__) {\n checkInfiniteRange('outputRange', outputRange);\n checkInfiniteRange('inputRange', inputRange);\n checkValidInputRange(inputRange);\n invariant(inputRange.length === outputRange.length, 'inputRange (' + inputRange.length + ') and outputRange (' + outputRange.length + ') must have the same length');\n }\n var easing = config.easing || linear;\n var extrapolateLeft = 'extend';\n if (config.extrapolateLeft !== undefined) {\n extrapolateLeft = config.extrapolateLeft;\n } else if (config.extrapolate !== undefined) {\n extrapolateLeft = config.extrapolate;\n }\n var extrapolateRight = 'extend';\n if (config.extrapolateRight !== undefined) {\n extrapolateRight = config.extrapolateRight;\n } else if (config.extrapolate !== undefined) {\n extrapolateRight = config.extrapolate;\n }\n return input => {\n invariant(typeof input === 'number', 'Cannot interpolation an input which is not a number');\n var range = findRange(input, inputRange);\n return interpolate(input, inputRange[range], inputRange[range + 1], outputRange[range], outputRange[range + 1], easing, extrapolateLeft, extrapolateRight);\n };\n}\nfunction interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight) {\n var result = input;\n\n // Extrapolate\n if (result < inputMin) {\n if (extrapolateLeft === 'identity') {\n return result;\n } else if (extrapolateLeft === 'clamp') {\n result = inputMin;\n } else if (extrapolateLeft === 'extend') {\n // noop\n }\n }\n if (result > inputMax) {\n if (extrapolateRight === 'identity') {\n return result;\n } else if (extrapolateRight === 'clamp') {\n result = inputMax;\n } else if (extrapolateRight === 'extend') {\n // noop\n }\n }\n if (outputMin === outputMax) {\n return outputMin;\n }\n if (inputMin === inputMax) {\n if (input <= inputMin) {\n return outputMin;\n }\n return outputMax;\n }\n\n // Input Range\n if (inputMin === -Infinity) {\n result = -result;\n } else if (inputMax === Infinity) {\n result = result - inputMin;\n } else {\n result = (result - inputMin) / (inputMax - inputMin);\n }\n\n // Easing\n result = easing(result);\n\n // Output Range\n if (outputMin === -Infinity) {\n result = -result;\n } else if (outputMax === Infinity) {\n result = result + outputMin;\n } else {\n result = result * (outputMax - outputMin) + outputMin;\n }\n return result;\n}\nfunction colorToRgba(input) {\n var normalizedColor = normalizeColor(input);\n if (normalizedColor === null || typeof normalizedColor !== 'number') {\n return input;\n }\n normalizedColor = normalizedColor || 0;\n var r = (normalizedColor & 0xff000000) >>> 24;\n var g = (normalizedColor & 0x00ff0000) >>> 16;\n var b = (normalizedColor & 0x0000ff00) >>> 8;\n var a = (normalizedColor & 0x000000ff) / 255;\n return \"rgba(\" + r + \", \" + g + \", \" + b + \", \" + a + \")\";\n}\nvar stringShapeRegex = /[+-]?(?:\\d+\\.?\\d*|\\.\\d+)(?:[eE][+-]?\\d+)?/g;\n\n/**\n * Supports string shapes by extracting numbers so new values can be computed,\n * and recombines those values into new strings of the same shape. Supports\n * things like:\n *\n * rgba(123, 42, 99, 0.36) // colors\n * -45deg // values with units\n */\nfunction createInterpolationFromStringOutputRange(config) {\n var outputRange = config.outputRange;\n invariant(outputRange.length >= 2, 'Bad output range');\n outputRange = outputRange.map(colorToRgba);\n checkPattern(outputRange);\n\n // ['rgba(0, 100, 200, 0)', 'rgba(50, 150, 250, 0.5)']\n // ->\n // [\n // [0, 50],\n // [100, 150],\n // [200, 250],\n // [0, 0.5],\n // ]\n /* $FlowFixMe[incompatible-use] (>=0.18.0): `outputRange[0].match()` can\n * return `null`. Need to guard against this possibility. */\n var outputRanges = outputRange[0].match(stringShapeRegex).map(() => []);\n outputRange.forEach(value => {\n /* $FlowFixMe[incompatible-use] (>=0.18.0): `value.match()` can return\n * `null`. Need to guard against this possibility. */\n value.match(stringShapeRegex).forEach((number, i) => {\n outputRanges[i].push(+number);\n });\n });\n var interpolations = outputRange[0].match(stringShapeRegex)\n /* $FlowFixMe[incompatible-use] (>=0.18.0): `outputRange[0].match()` can\n * return `null`. Need to guard against this possibility. */\n /* $FlowFixMe[incompatible-call] (>=0.18.0): `outputRange[0].match()` can\n * return `null`. Need to guard against this possibility. */.map((value, i) => {\n return createInterpolation(_objectSpread(_objectSpread({}, config), {}, {\n outputRange: outputRanges[i]\n }));\n });\n\n // rgba requires that the r,g,b are integers.... so we want to round them, but we *dont* want to\n // round the opacity (4th column).\n var shouldRound = isRgbOrRgba(outputRange[0]);\n return input => {\n var i = 0;\n // 'rgba(0, 100, 200, 0)'\n // ->\n // 'rgba(${interpolations[0](input)}, ${interpolations[1](input)}, ...'\n return outputRange[0].replace(stringShapeRegex, () => {\n var val = +interpolations[i++](input);\n if (shouldRound) {\n val = i < 4 ? Math.round(val) : Math.round(val * 1000) / 1000;\n }\n return String(val);\n });\n };\n}\nfunction isRgbOrRgba(range) {\n return typeof range === 'string' && range.startsWith('rgb');\n}\nfunction checkPattern(arr) {\n var pattern = arr[0].replace(stringShapeRegex, '');\n for (var i = 1; i < arr.length; ++i) {\n invariant(pattern === arr[i].replace(stringShapeRegex, ''), 'invalid pattern ' + arr[0] + ' and ' + arr[i]);\n }\n}\nfunction findRange(input, inputRange) {\n var i;\n for (i = 1; i < inputRange.length - 1; ++i) {\n if (inputRange[i] >= input) {\n break;\n }\n }\n return i - 1;\n}\nfunction checkValidInputRange(arr) {\n invariant(arr.length >= 2, 'inputRange must have at least 2 elements');\n var message = 'inputRange must be monotonically non-decreasing ' + String(arr);\n for (var i = 1; i < arr.length; ++i) {\n invariant(arr[i] >= arr[i - 1], message);\n }\n}\nfunction checkInfiniteRange(name, arr) {\n invariant(arr.length >= 2, name + ' must have at least 2 elements');\n invariant(arr.length !== 2 || arr[0] !== -Infinity || arr[1] !== Infinity,\n /* $FlowFixMe[incompatible-type] (>=0.13.0) - In the addition expression\n * below this comment, one or both of the operands may be something that\n * doesn't cleanly convert to a string, like undefined, null, and object,\n * etc. If you really mean this implicit string conversion, you can do\n * something like String(myThing) */\n name + 'cannot be ]-infinity;+infinity[ ' + arr);\n}\nclass AnimatedInterpolation extends AnimatedWithChildren {\n // Export for testing.\n\n constructor(parent, config) {\n super();\n this._parent = parent;\n this._config = config;\n this._interpolation = createInterpolation(config);\n }\n __makeNative(platformConfig) {\n this._parent.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getValue() {\n var parentValue = this._parent.__getValue();\n invariant(typeof parentValue === 'number', 'Cannot interpolate an input which is not a number.');\n return this._interpolation(parentValue);\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __attach() {\n this._parent.__addChild(this);\n }\n __detach() {\n this._parent.__removeChild(this);\n super.__detach();\n }\n __transformDataType(range) {\n return range.map(NativeAnimatedHelper.transformDataType);\n }\n __getNativeConfig() {\n if (__DEV__) {\n NativeAnimatedHelper.validateInterpolation(this._config);\n }\n return {\n inputRange: this._config.inputRange,\n // Only the `outputRange` can contain strings so we don't need to transform `inputRange` here\n outputRange: this.__transformDataType(this._config.outputRange),\n extrapolateLeft: this._config.extrapolateLeft || this._config.extrapolate || 'extend',\n extrapolateRight: this._config.extrapolateRight || this._config.extrapolate || 'extend',\n type: 'interpolation'\n };\n }\n}\nAnimatedInterpolation.__createInterpolation = createInterpolation;\nexport default AnimatedInterpolation;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nimport InteractionManager from '../../../../exports/InteractionManager';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nvar NativeAnimatedAPI = NativeAnimatedHelper.API;\n\n/**\n * Animated works by building a directed acyclic graph of dependencies\n * transparently when you render your Animated components.\n *\n * new Animated.Value(0)\n * .interpolate() .interpolate() new Animated.Value(1)\n * opacity translateY scale\n * style transform\n * View#234 style\n * View#123\n *\n * A) Top Down phase\n * When an Animated.Value is updated, we recursively go down through this\n * graph in order to find leaf nodes: the views that we flag as needing\n * an update.\n *\n * B) Bottom Up phase\n * When a view is flagged as needing an update, we recursively go back up\n * in order to build the new value that it needs. The reason why we need\n * this two-phases process is to deal with composite props such as\n * transform which can receive values from multiple parents.\n */\nfunction _flush(rootNode) {\n var animatedStyles = new Set();\n function findAnimatedStyles(node) {\n /* $FlowFixMe[prop-missing] (>=0.68.0 site=react_native_fb) This comment\n * suppresses an error found when Flow v0.68 was deployed. To see the error\n * delete this comment and run Flow. */\n if (typeof node.update === 'function') {\n animatedStyles.add(node);\n } else {\n node.__getChildren().forEach(findAnimatedStyles);\n }\n }\n findAnimatedStyles(rootNode);\n // $FlowFixMe[prop-missing]\n animatedStyles.forEach(animatedStyle => animatedStyle.update());\n}\n\n/**\n * Some operations are executed only on batch end, which is _mostly_ scheduled when\n * Animated component props change. For some of the changes which require immediate execution\n * (e.g. setValue), we create a separate batch in case none is scheduled.\n */\nfunction _executeAsAnimatedBatch(id, operation) {\n NativeAnimatedAPI.setWaitingForIdentifier(id);\n operation();\n NativeAnimatedAPI.unsetWaitingForIdentifier(id);\n}\n\n/**\n * Standard value for driving animations. One `Animated.Value` can drive\n * multiple properties in a synchronized fashion, but can only be driven by one\n * mechanism at a time. Using a new mechanism (e.g. starting a new animation,\n * or calling `setValue`) will stop any previous ones.\n *\n * See https://reactnative.dev/docs/animatedvalue\n */\nclass AnimatedValue extends AnimatedWithChildren {\n constructor(value, config) {\n super();\n if (typeof value !== 'number') {\n throw new Error('AnimatedValue: Attempting to set value to undefined');\n }\n this._startingValue = this._value = value;\n this._offset = 0;\n this._animation = null;\n if (config && config.useNativeDriver) {\n this.__makeNative();\n }\n }\n __detach() {\n if (this.__isNative) {\n NativeAnimatedAPI.getValue(this.__getNativeTag(), value => {\n this._value = value - this._offset;\n });\n }\n this.stopAnimation();\n super.__detach();\n }\n __getValue() {\n return this._value + this._offset;\n }\n\n /**\n * Directly set the value. This will stop any animations running on the value\n * and update all the bound properties.\n *\n * See https://reactnative.dev/docs/animatedvalue#setvalue\n */\n setValue(value) {\n if (this._animation) {\n this._animation.stop();\n this._animation = null;\n }\n this._updateValue(value, !this.__isNative /* don't perform a flush for natively driven values */);\n\n if (this.__isNative) {\n _executeAsAnimatedBatch(this.__getNativeTag().toString(), () => NativeAnimatedAPI.setAnimatedNodeValue(this.__getNativeTag(), value));\n }\n }\n\n /**\n * Sets an offset that is applied on top of whatever value is set, whether via\n * `setValue`, an animation, or `Animated.event`. Useful for compensating\n * things like the start of a pan gesture.\n *\n * See https://reactnative.dev/docs/animatedvalue#setoffset\n */\n setOffset(offset) {\n this._offset = offset;\n if (this.__isNative) {\n NativeAnimatedAPI.setAnimatedNodeOffset(this.__getNativeTag(), offset);\n }\n }\n\n /**\n * Merges the offset value into the base value and resets the offset to zero.\n * The final output of the value is unchanged.\n *\n * See https://reactnative.dev/docs/animatedvalue#flattenoffset\n */\n flattenOffset() {\n this._value += this._offset;\n this._offset = 0;\n if (this.__isNative) {\n NativeAnimatedAPI.flattenAnimatedNodeOffset(this.__getNativeTag());\n }\n }\n\n /**\n * Sets the offset value to the base value, and resets the base value to zero.\n * The final output of the value is unchanged.\n *\n * See https://reactnative.dev/docs/animatedvalue#extractoffset\n */\n extractOffset() {\n this._offset += this._value;\n this._value = 0;\n if (this.__isNative) {\n NativeAnimatedAPI.extractAnimatedNodeOffset(this.__getNativeTag());\n }\n }\n\n /**\n * Stops any running animation or tracking. `callback` is invoked with the\n * final value after stopping the animation, which is useful for updating\n * state to match the animation position with layout.\n *\n * See https://reactnative.dev/docs/animatedvalue#stopanimation\n */\n stopAnimation(callback) {\n this.stopTracking();\n this._animation && this._animation.stop();\n this._animation = null;\n if (callback) {\n if (this.__isNative) {\n NativeAnimatedAPI.getValue(this.__getNativeTag(), callback);\n } else {\n callback(this.__getValue());\n }\n }\n }\n\n /**\n * Stops any animation and resets the value to its original.\n *\n * See https://reactnative.dev/docs/animatedvalue#resetanimation\n */\n resetAnimation(callback) {\n this.stopAnimation(callback);\n this._value = this._startingValue;\n if (this.__isNative) {\n NativeAnimatedAPI.setAnimatedNodeValue(this.__getNativeTag(), this._startingValue);\n }\n }\n __onAnimatedValueUpdateReceived(value) {\n this._updateValue(value, false /*flush*/);\n }\n\n /**\n * Interpolates the value before updating the property, e.g. mapping 0-1 to\n * 0-10.\n */\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n\n /**\n * Typically only used internally, but could be used by a custom Animation\n * class.\n *\n * See https://reactnative.dev/docs/animatedvalue#animate\n */\n animate(animation, callback) {\n var handle = null;\n if (animation.__isInteraction) {\n handle = InteractionManager.createInteractionHandle();\n }\n var previousAnimation = this._animation;\n this._animation && this._animation.stop();\n this._animation = animation;\n animation.start(this._value, value => {\n // Natively driven animations will never call into that callback\n this._updateValue(value, true /* flush */);\n }, result => {\n this._animation = null;\n if (handle !== null) {\n InteractionManager.clearInteractionHandle(handle);\n }\n callback && callback(result);\n }, previousAnimation, this);\n }\n\n /**\n * Typically only used internally.\n */\n stopTracking() {\n this._tracking && this._tracking.__detach();\n this._tracking = null;\n }\n\n /**\n * Typically only used internally.\n */\n track(tracking) {\n this.stopTracking();\n this._tracking = tracking;\n // Make sure that the tracking animation starts executing\n this._tracking && this._tracking.update();\n }\n _updateValue(value, flush) {\n if (value === undefined) {\n throw new Error('AnimatedValue: Attempting to set value to undefined');\n }\n this._value = value;\n if (flush) {\n _flush(this);\n }\n super.__callListeners(this.__getValue());\n }\n __getNativeConfig() {\n return {\n type: 'value',\n value: this._value,\n offset: this._offset\n };\n }\n}\nexport default AnimatedValue;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedValue from './nodes/AnimatedValue';\nimport NativeAnimatedHelper from './NativeAnimatedHelper';\nimport invariant from 'fbjs/lib/invariant';\nimport { shouldUseNativeDriver } from './NativeAnimatedHelper';\nvar __DEV__ = process.env.NODE_ENV !== 'production';\nexport function attachNativeEvent(viewRef, eventName, argMapping) {\n // Find animated values in `argMapping` and create an array representing their\n // key path inside the `nativeEvent` object. Ex.: ['contentOffset', 'x'].\n var eventMappings = [];\n var traverse = (value, path) => {\n if (value instanceof AnimatedValue) {\n value.__makeNative();\n eventMappings.push({\n nativeEventPath: path,\n animatedValueTag: value.__getNativeTag()\n });\n } else if (typeof value === 'object') {\n for (var _key in value) {\n traverse(value[_key], path.concat(_key));\n }\n }\n };\n invariant(argMapping[0] && argMapping[0].nativeEvent, 'Native driven events only support animated values contained inside `nativeEvent`.');\n\n // Assume that the event containing `nativeEvent` is always the first argument.\n traverse(argMapping[0].nativeEvent, []);\n if (viewRef != null) {\n eventMappings.forEach(mapping => {\n NativeAnimatedHelper.API.addAnimatedEventToView(viewRef, eventName, mapping);\n });\n }\n return {\n detach() {\n if (viewRef != null) {\n eventMappings.forEach(mapping => {\n NativeAnimatedHelper.API.removeAnimatedEventFromView(viewRef, eventName,\n // $FlowFixMe[incompatible-call]\n mapping.animatedValueTag);\n });\n }\n }\n };\n}\nfunction validateMapping(argMapping, args) {\n var validate = (recMapping, recEvt, key) => {\n if (recMapping instanceof AnimatedValue) {\n invariant(typeof recEvt === 'number', 'Bad mapping of event key ' + key + ', should be number but got ' + typeof recEvt);\n return;\n }\n if (typeof recEvt === 'number') {\n invariant(recMapping instanceof AnimatedValue, 'Bad mapping of type ' + typeof recMapping + ' for key ' + key + ', event value must map to AnimatedValue');\n return;\n }\n invariant(typeof recMapping === 'object', 'Bad mapping of type ' + typeof recMapping + ' for key ' + key);\n invariant(typeof recEvt === 'object', 'Bad event of type ' + typeof recEvt + ' for key ' + key);\n for (var mappingKey in recMapping) {\n validate(recMapping[mappingKey], recEvt[mappingKey], mappingKey);\n }\n };\n invariant(args.length >= argMapping.length, 'Event has less arguments than mapping');\n argMapping.forEach((mapping, idx) => {\n validate(mapping, args[idx], 'arg' + idx);\n });\n}\nexport class AnimatedEvent {\n constructor(argMapping, config) {\n this._listeners = [];\n this._argMapping = argMapping;\n if (config == null) {\n console.warn('Animated.event now requires a second argument for options');\n config = {\n useNativeDriver: false\n };\n }\n if (config.listener) {\n this.__addListener(config.listener);\n }\n this._callListeners = this._callListeners.bind(this);\n this._attachedEvent = null;\n this.__isNative = shouldUseNativeDriver(config);\n }\n __addListener(callback) {\n this._listeners.push(callback);\n }\n __removeListener(callback) {\n this._listeners = this._listeners.filter(listener => listener !== callback);\n }\n __attach(viewRef, eventName) {\n invariant(this.__isNative, 'Only native driven events need to be attached.');\n this._attachedEvent = attachNativeEvent(viewRef, eventName, this._argMapping);\n }\n __detach(viewTag, eventName) {\n invariant(this.__isNative, 'Only native driven events need to be detached.');\n this._attachedEvent && this._attachedEvent.detach();\n }\n __getHandler() {\n var _this = this;\n if (this.__isNative) {\n if (__DEV__) {\n var _validatedMapping = false;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n args[_key2] = arguments[_key2];\n }\n if (!_validatedMapping) {\n validateMapping(_this._argMapping, args);\n _validatedMapping = true;\n }\n _this._callListeners(...args);\n };\n } else {\n return this._callListeners;\n }\n }\n var validatedMapping = false;\n return function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key3 = 0; _key3 < _len2; _key3++) {\n args[_key3] = arguments[_key3];\n }\n if (__DEV__ && !validatedMapping) {\n validateMapping(_this._argMapping, args);\n validatedMapping = true;\n }\n var traverse = (recMapping, recEvt, key) => {\n if (recMapping instanceof AnimatedValue) {\n if (typeof recEvt === 'number') {\n recMapping.setValue(recEvt);\n }\n } else if (typeof recMapping === 'object') {\n for (var mappingKey in recMapping) {\n /* $FlowFixMe(>=0.120.0) This comment suppresses an error found\n * when Flow v0.120 was deployed. To see the error, delete this\n * comment and run Flow. */\n traverse(recMapping[mappingKey], recEvt[mappingKey], mappingKey);\n }\n }\n };\n _this._argMapping.forEach((mapping, idx) => {\n traverse(mapping, args[idx], 'arg' + idx);\n });\n _this._callListeners(...args);\n };\n }\n _callListeners() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key4 = 0; _key4 < _len3; _key4++) {\n args[_key4] = arguments[_key4];\n }\n this._listeners.forEach(listener => listener(...args));\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedNode from './AnimatedNode';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nclass AnimatedTransform extends AnimatedWithChildren {\n constructor(transforms) {\n super();\n this._transforms = transforms;\n }\n __makeNative() {\n this._transforms.forEach(transform => {\n for (var key in transform) {\n var value = transform[key];\n if (value instanceof AnimatedNode) {\n value.__makeNative();\n }\n }\n });\n super.__makeNative();\n }\n __getValue() {\n return this._transforms.map(transform => {\n var result = {};\n for (var key in transform) {\n var value = transform[key];\n if (value instanceof AnimatedNode) {\n result[key] = value.__getValue();\n } else {\n result[key] = value;\n }\n }\n return result;\n });\n }\n __getAnimatedValue() {\n return this._transforms.map(transform => {\n var result = {};\n for (var key in transform) {\n var value = transform[key];\n if (value instanceof AnimatedNode) {\n result[key] = value.__getAnimatedValue();\n } else {\n // All transform components needed to recompose matrix\n result[key] = value;\n }\n }\n return result;\n });\n }\n __attach() {\n this._transforms.forEach(transform => {\n for (var key in transform) {\n var value = transform[key];\n if (value instanceof AnimatedNode) {\n value.__addChild(this);\n }\n }\n });\n }\n __detach() {\n this._transforms.forEach(transform => {\n for (var key in transform) {\n var value = transform[key];\n if (value instanceof AnimatedNode) {\n value.__removeChild(this);\n }\n }\n });\n super.__detach();\n }\n __getNativeConfig() {\n var transConfigs = [];\n this._transforms.forEach(transform => {\n for (var key in transform) {\n var value = transform[key];\n if (value instanceof AnimatedNode) {\n transConfigs.push({\n type: 'animated',\n property: key,\n nodeTag: value.__getNativeTag()\n });\n } else {\n transConfigs.push({\n type: 'static',\n property: key,\n value: NativeAnimatedHelper.transformDataType(value)\n });\n }\n }\n });\n NativeAnimatedHelper.validateTransform(transConfigs);\n return {\n type: 'transform',\n transforms: transConfigs\n };\n }\n}\nexport default AnimatedTransform;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedNode from './AnimatedNode';\nimport AnimatedTransform from './AnimatedTransform';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nimport StyleSheet from '../../../../exports/StyleSheet';\nvar flattenStyle = StyleSheet.flatten;\nfunction createAnimatedStyle(inputStyle) {\n var style = flattenStyle(inputStyle);\n var animatedStyles = {};\n for (var key in style) {\n var value = style[key];\n if (key === 'transform' && Array.isArray(value)) {\n animatedStyles[key] = new AnimatedTransform(value);\n } else if (value instanceof AnimatedNode) {\n animatedStyles[key] = value;\n } else if (value && !Array.isArray(value) && typeof value === 'object') {\n animatedStyles[key] = createAnimatedStyle(value);\n }\n }\n return animatedStyles;\n}\nclass AnimatedStyle extends AnimatedWithChildren {\n constructor(style) {\n super();\n this._inputStyle = style;\n this._style = createAnimatedStyle(style);\n }\n\n // Recursively get values for nested styles (like iOS's shadowOffset)\n _walkStyleAndGetValues(style) {\n var updatedStyle = {};\n for (var key in style) {\n var value = style[key];\n if (value instanceof AnimatedNode) {\n if (!value.__isNative) {\n // We cannot use value of natively driven nodes this way as the value we have access from\n // JS may not be up to date.\n updatedStyle[key] = value.__getValue();\n }\n } else if (value && !Array.isArray(value) && typeof value === 'object') {\n // Support animating nested values (for example: shadowOffset.height)\n updatedStyle[key] = this._walkStyleAndGetValues(value);\n } else {\n updatedStyle[key] = value;\n }\n }\n return updatedStyle;\n }\n __getValue() {\n return [this._inputStyle, this._walkStyleAndGetValues(this._style)];\n }\n\n // Recursively get animated values for nested styles (like iOS's shadowOffset)\n _walkStyleAndGetAnimatedValues(style) {\n var updatedStyle = {};\n for (var key in style) {\n var value = style[key];\n if (value instanceof AnimatedNode) {\n updatedStyle[key] = value.__getAnimatedValue();\n } else if (value && !Array.isArray(value) && typeof value === 'object') {\n // Support animating nested values (for example: shadowOffset.height)\n updatedStyle[key] = this._walkStyleAndGetAnimatedValues(value);\n }\n }\n return updatedStyle;\n }\n __getAnimatedValue() {\n return this._walkStyleAndGetAnimatedValues(this._style);\n }\n __attach() {\n for (var key in this._style) {\n var value = this._style[key];\n if (value instanceof AnimatedNode) {\n value.__addChild(this);\n }\n }\n }\n __detach() {\n for (var key in this._style) {\n var value = this._style[key];\n if (value instanceof AnimatedNode) {\n value.__removeChild(this);\n }\n }\n super.__detach();\n }\n __makeNative() {\n for (var key in this._style) {\n var value = this._style[key];\n if (value instanceof AnimatedNode) {\n value.__makeNative();\n }\n }\n super.__makeNative();\n }\n __getNativeConfig() {\n var styleConfig = {};\n for (var styleKey in this._style) {\n if (this._style[styleKey] instanceof AnimatedNode) {\n var style = this._style[styleKey];\n style.__makeNative();\n styleConfig[styleKey] = style.__getNativeTag();\n }\n }\n NativeAnimatedHelper.validateStyles(styleConfig);\n return {\n type: 'style',\n style: styleConfig\n };\n }\n}\nexport default AnimatedStyle;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { AnimatedEvent } from '../AnimatedEvent';\nimport AnimatedNode from './AnimatedNode';\nimport AnimatedStyle from './AnimatedStyle';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nimport invariant from 'fbjs/lib/invariant';\nclass AnimatedProps extends AnimatedNode {\n constructor(props, callback) {\n super();\n if (props.style) {\n props = _objectSpread(_objectSpread({}, props), {}, {\n style: new AnimatedStyle(props.style)\n });\n }\n this._props = props;\n this._callback = callback;\n this.__attach();\n }\n __getValue() {\n var props = {};\n for (var key in this._props) {\n var value = this._props[key];\n if (value instanceof AnimatedNode) {\n if (!value.__isNative || value instanceof AnimatedStyle) {\n // We cannot use value of natively driven nodes this way as the value we have access from\n // JS may not be up to date.\n props[key] = value.__getValue();\n }\n } else if (value instanceof AnimatedEvent) {\n props[key] = value.__getHandler();\n } else {\n props[key] = value;\n }\n }\n return props;\n }\n __getAnimatedValue() {\n var props = {};\n for (var key in this._props) {\n var value = this._props[key];\n if (value instanceof AnimatedNode) {\n props[key] = value.__getAnimatedValue();\n }\n }\n return props;\n }\n __attach() {\n for (var key in this._props) {\n var value = this._props[key];\n if (value instanceof AnimatedNode) {\n value.__addChild(this);\n }\n }\n }\n __detach() {\n if (this.__isNative && this._animatedView) {\n this.__disconnectAnimatedView();\n }\n for (var key in this._props) {\n var value = this._props[key];\n if (value instanceof AnimatedNode) {\n value.__removeChild(this);\n }\n }\n super.__detach();\n }\n update() {\n this._callback();\n }\n __makeNative() {\n if (!this.__isNative) {\n this.__isNative = true;\n for (var key in this._props) {\n var value = this._props[key];\n if (value instanceof AnimatedNode) {\n value.__makeNative();\n }\n }\n if (this._animatedView) {\n this.__connectAnimatedView();\n }\n }\n }\n setNativeView(animatedView) {\n if (this._animatedView === animatedView) {\n return;\n }\n this._animatedView = animatedView;\n if (this.__isNative) {\n this.__connectAnimatedView();\n }\n }\n __connectAnimatedView() {\n invariant(this.__isNative, 'Expected node to be marked as \"native\"');\n var nativeViewTag = this._animatedView;\n invariant(nativeViewTag != null, 'Unable to locate attached view in the native tree');\n NativeAnimatedHelper.API.connectAnimatedNodeToView(this.__getNativeTag(), nativeViewTag);\n }\n __disconnectAnimatedView() {\n invariant(this.__isNative, 'Expected node to be marked as \"native\"');\n var nativeViewTag = this._animatedView;\n invariant(nativeViewTag != null, 'Unable to locate attached view in the native tree');\n NativeAnimatedHelper.API.disconnectAnimatedNodeFromView(this.__getNativeTag(), nativeViewTag);\n }\n __restoreDefaultValues() {\n // When using the native driver, view properties need to be restored to\n // their default values manually since react no longer tracks them. This\n // is needed to handle cases where a prop driven by native animated is removed\n // after having been changed natively by an animation.\n if (this.__isNative) {\n NativeAnimatedHelper.API.restoreDefaultValues(this.__getNativeTag());\n }\n }\n __getNativeConfig() {\n var propsConfig = {};\n for (var propKey in this._props) {\n var value = this._props[propKey];\n if (value instanceof AnimatedNode) {\n value.__makeNative();\n propsConfig[propKey] = value.__getNativeTag();\n }\n }\n return {\n type: 'props',\n props: propsConfig\n };\n }\n}\nexport default AnimatedProps;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport AnimatedProps from './nodes/AnimatedProps';\nimport { AnimatedEvent } from './AnimatedEvent';\nimport useRefEffect from '../Utilities/useRefEffect';\nimport NativeAnimatedHelper from './NativeAnimatedHelper';\nimport { useCallback, useEffect, useMemo, useReducer, useRef } from 'react';\nimport useLayoutEffect from '../../../modules/useLayoutEffect';\nexport default function useAnimatedProps(props) {\n var _useReducer = useReducer(count => count + 1, 0),\n scheduleUpdate = _useReducer[1];\n var onUpdateRef = useRef(null);\n\n // TODO: Only invalidate `node` if animated props or `style` change. In the\n // previous implementation, we permitted `style` to override props with the\n // same name property name as styles, so we can probably continue doing that.\n // The ordering of other props *should* not matter.\n var node = useMemo(() => new AnimatedProps(props, () => onUpdateRef.current == null ? void 0 : onUpdateRef.current()), [props]);\n useAnimatedPropsLifecycle(node);\n\n // TODO: This \"effect\" does three things:\n //\n // 1) Call `setNativeView`.\n // 2) Update `onUpdateRef`.\n // 3) Update listeners for `AnimatedEvent` props.\n //\n // Ideally, each of these would be separat \"effects\" so that they are not\n // unnecessarily re-run when irrelevant dependencies change. For example, we\n // should be able to hoist all `AnimatedEvent` props and only do #3 if either\n // the `AnimatedEvent` props change or `instance` changes.\n //\n // But there is no way to transparently compose three separate callback refs,\n // so we just combine them all into one for now.\n var refEffect = useCallback(instance => {\n // NOTE: This may be called more often than necessary (e.g. when `props`\n // changes), but `setNativeView` already optimizes for that.\n node.setNativeView(instance);\n\n // NOTE: This callback is only used by the JavaScript animation driver.\n onUpdateRef.current = () => {\n // Schedule an update for this component to update `reducedProps`,\n // but do not compute it immediately. If a parent also updated, we\n // need to merge those new props in before updating.\n scheduleUpdate();\n };\n var target = getEventTarget(instance);\n var events = [];\n for (var propName in props) {\n var propValue = props[propName];\n if (propValue instanceof AnimatedEvent && propValue.__isNative) {\n propValue.__attach(target, propName);\n events.push([propName, propValue]);\n }\n }\n return () => {\n onUpdateRef.current = null;\n for (var _i = 0, _events = events; _i < _events.length; _i++) {\n var _events$_i = _events[_i],\n _propName = _events$_i[0],\n _propValue = _events$_i[1];\n _propValue.__detach(target, _propName);\n }\n };\n }, [props, node]);\n var callbackRef = useRefEffect(refEffect);\n return [reduceAnimatedProps(node), callbackRef];\n}\nfunction reduceAnimatedProps(node) {\n // Force `collapsable` to be false so that the native view is not flattened.\n // Flattened views cannot be accurately referenced by the native driver.\n return _objectSpread(_objectSpread({}, node.__getValue()), {}, {\n collapsable: false\n });\n}\n\n/**\n * Manages the lifecycle of the supplied `AnimatedProps` by invoking `__attach`\n * and `__detach`. However, this is more complicated because `AnimatedProps`\n * uses reference counting to determine when to recursively detach its children\n * nodes. So in order to optimize this, we avoid detaching until the next attach\n * unless we are unmounting.\n */\nfunction useAnimatedPropsLifecycle(node) {\n var prevNodeRef = useRef(null);\n var isUnmountingRef = useRef(false);\n useEffect(() => {\n // It is ok for multiple components to call `flushQueue` because it noops\n // if the queue is empty. When multiple animated components are mounted at\n // the same time. Only first component flushes the queue and the others will noop.\n NativeAnimatedHelper.API.flushQueue();\n });\n useLayoutEffect(() => {\n isUnmountingRef.current = false;\n return () => {\n isUnmountingRef.current = true;\n };\n }, []);\n useLayoutEffect(() => {\n node.__attach();\n if (prevNodeRef.current != null) {\n var prevNode = prevNodeRef.current;\n // TODO: Stop restoring default values (unless `reset` is called).\n prevNode.__restoreDefaultValues();\n prevNode.__detach();\n prevNodeRef.current = null;\n }\n return () => {\n if (isUnmountingRef.current) {\n // NOTE: Do not restore default values on unmount, see D18197735.\n node.__detach();\n } else {\n prevNodeRef.current = node;\n }\n };\n }, [node]);\n}\nfunction getEventTarget(instance) {\n return typeof instance === 'object' && typeof (instance == null ? void 0 : instance.getScrollableNode) === 'function' ?\n // $FlowFixMe[incompatible-use] - Legacy instance assumptions.\n instance.getScrollableNode() : instance;\n}\n\n// $FlowFixMe[unclear-type] - Legacy instance assumptions.\nfunction isFabricInstance(instance) {\n var _instance$getScrollRe;\n return hasFabricHandle(instance) ||\n // Some components have a setNativeProps function but aren't a host component\n // such as lists like FlatList and SectionList. These should also use\n // forceUpdate in Fabric since setNativeProps doesn't exist on the underlying\n // host component. This crazy hack is essentially special casing those lists and\n // ScrollView itself to use forceUpdate in Fabric.\n // If these components end up using forwardRef then these hacks can go away\n // as instance would actually be the underlying host component and the above check\n // would be sufficient.\n hasFabricHandle(instance == null ? void 0 : instance.getNativeScrollRef == null ? void 0 : instance.getNativeScrollRef()) || hasFabricHandle(instance == null ? void 0 : instance.getScrollResponder == null ? void 0 : (_instance$getScrollRe = instance.getScrollResponder()) == null ? void 0 : _instance$getScrollRe.getNativeScrollRef == null ? void 0 : _instance$getScrollRe.getNativeScrollRef());\n}\n\n// $FlowFixMe[unclear-type] - Legacy instance assumptions.\nfunction hasFabricHandle(instance) {\n var _instance$_internalIn, _instance$_internalIn2;\n // eslint-disable-next-line dot-notation\n return (instance == null ? void 0 : (_instance$_internalIn = instance['_internalInstanceHandle']) == null ? void 0 : (_instance$_internalIn2 = _instance$_internalIn.stateNode) == null ? void 0 : _instance$_internalIn2.canonical) != null;\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport { useCallback, useRef } from 'react';\n/**\n * Constructs a callback ref that provides similar semantics as `useEffect`. The\n * supplied `effect` callback will be called with non-null component instances.\n * The `effect` callback can also optionally return a cleanup function.\n *\n * When a component is updated or unmounted, the cleanup function is called. The\n * `effect` callback will then be called again, if applicable.\n *\n * When a new `effect` callback is supplied, the previously returned cleanup\n * function will be called before the new `effect` callback is called with the\n * same instance.\n *\n * WARNING: The `effect` callback should be stable (e.g. using `useCallback`).\n */\nexport default function useRefEffect(effect) {\n var cleanupRef = useRef(undefined);\n return useCallback(instance => {\n if (cleanupRef.current) {\n cleanupRef.current();\n cleanupRef.current = undefined;\n }\n if (instance != null) {\n cleanupRef.current = effect(instance);\n }\n }, [effect]);\n}","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"style\"];\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport useAnimatedProps from './useAnimatedProps';\nimport useMergeRefs from '../Utilities/useMergeRefs';\nimport StyleSheet from '../../../exports/StyleSheet';\nimport View from '../../../exports/View';\nimport * as React from 'react';\n/**\n * Experimental implementation of `createAnimatedComponent` that is intended to\n * be compatible with concurrent rendering.\n */\nexport default function createAnimatedComponent(Component) {\n return /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var _useAnimatedProps = useAnimatedProps(props),\n reducedProps = _useAnimatedProps[0],\n callbackRef = _useAnimatedProps[1];\n var ref = useMergeRefs(callbackRef, forwardedRef);\n\n // Some components require explicit passthrough values for animation\n // to work properly. For example, if an animated component is\n // transformed and Pressable, onPress will not work after transform\n // without these passthrough values.\n // $FlowFixMe[prop-missing]\n var passthroughAnimatedPropExplicitValues = reducedProps.passthroughAnimatedPropExplicitValues,\n style = reducedProps.style;\n var _ref = passthroughAnimatedPropExplicitValues !== null && passthroughAnimatedPropExplicitValues !== void 0 ? passthroughAnimatedPropExplicitValues : {},\n passthroughStyle = _ref.style,\n passthroughProps = _objectWithoutPropertiesLoose(_ref, _excluded);\n var mergedStyle = [style, passthroughStyle];\n return /*#__PURE__*/React.createElement(Component, _extends({}, reducedProps, passthroughProps, {\n style: mergedStyle,\n ref: ref\n }));\n });\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport { useCallback } from 'react';\n/**\n * Constructs a new ref that forwards new values to each of the given refs. The\n * given refs will always be invoked in the order that they are supplied.\n *\n * WARNING: A known problem of merging refs using this approach is that if any\n * of the given refs change, the returned callback ref will also be changed. If\n * the returned callback ref is supplied as a `ref` to a React element, this may\n * lead to problems with the given refs being invoked more times than desired.\n */\nexport default function useMergeRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n return useCallback(current => {\n for (var _i = 0, _refs = refs; _i < _refs.length; _i++) {\n var ref = _refs[_i];\n if (ref != null) {\n if (typeof ref === 'function') {\n ref(current);\n } else {\n ref.current = current;\n }\n }\n }\n }, [...refs] // eslint-disable-line react-hooks/exhaustive-deps\n );\n}","import _extends from \"@babel/runtime/helpers/extends\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport FlatList from '../../../../exports/FlatList';\nimport createAnimatedComponent from '../createAnimatedComponent';\n/**\n * @see https://github.com/facebook/react-native/commit/b8c8562\n */\nvar FlatListWithEventThrottle = /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/React.createElement(FlatList, _extends({\n scrollEventThrottle: 0.0001\n}, props, {\n ref: ref\n})));\nexport default createAnimatedComponent(FlatListWithEventThrottle);","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport Image from '../../../../exports/Image';\nimport createAnimatedComponent from '../createAnimatedComponent';\nexport default createAnimatedComponent(Image);","import _extends from \"@babel/runtime/helpers/extends\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport ScrollView from '../../../../exports/ScrollView';\nimport createAnimatedComponent from '../createAnimatedComponent';\n/**\n * @see https://github.com/facebook/react-native/commit/b8c8562\n */\nvar ScrollViewWithEventThrottle = /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/React.createElement(ScrollView, _extends({\n scrollEventThrottle: 0.0001\n}, props, {\n ref: ref\n})));\nexport default createAnimatedComponent(ScrollViewWithEventThrottle);","import _extends from \"@babel/runtime/helpers/extends\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport SectionList from '../../../../exports/SectionList';\nimport createAnimatedComponent from '../createAnimatedComponent';\n/**\n * @see https://github.com/facebook/react-native/commit/b8c8562\n */\nvar SectionListWithEventThrottle = /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/React.createElement(SectionList, _extends({\n scrollEventThrottle: 0.0001\n}, props, {\n ref: ref\n})));\nexport default createAnimatedComponent(SectionListWithEventThrottle);","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport Text from '../../../../exports/Text';\nimport createAnimatedComponent from '../createAnimatedComponent';\nexport default createAnimatedComponent(Text);","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport View from '../../../../exports/View';\nimport createAnimatedComponent from '../createAnimatedComponent';\nexport default createAnimatedComponent(View);","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nclass AnimatedAddition extends AnimatedWithChildren {\n constructor(a, b) {\n super();\n this._a = typeof a === 'number' ? new AnimatedValue(a) : a;\n this._b = typeof b === 'number' ? new AnimatedValue(b) : b;\n }\n __makeNative(platformConfig) {\n this._a.__makeNative(platformConfig);\n this._b.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getValue() {\n return this._a.__getValue() + this._b.__getValue();\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __attach() {\n this._a.__addChild(this);\n this._b.__addChild(this);\n }\n __detach() {\n this._a.__removeChild(this);\n this._b.__removeChild(this);\n super.__detach();\n }\n __getNativeConfig() {\n return {\n type: 'addition',\n input: [this._a.__getNativeTag(), this._b.__getNativeTag()]\n };\n }\n}\nexport default AnimatedAddition;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nclass AnimatedDiffClamp extends AnimatedWithChildren {\n constructor(a, min, max) {\n super();\n this._a = a;\n this._min = min;\n this._max = max;\n this._value = this._lastValue = this._a.__getValue();\n }\n __makeNative(platformConfig) {\n this._a.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __getValue() {\n var value = this._a.__getValue();\n var diff = value - this._lastValue;\n this._lastValue = value;\n this._value = Math.min(Math.max(this._value + diff, this._min), this._max);\n return this._value;\n }\n __attach() {\n this._a.__addChild(this);\n }\n __detach() {\n this._a.__removeChild(this);\n super.__detach();\n }\n __getNativeConfig() {\n return {\n type: 'diffclamp',\n input: this._a.__getNativeTag(),\n min: this._min,\n max: this._max\n };\n }\n}\nexport default AnimatedDiffClamp;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedNode from './AnimatedNode';\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nclass AnimatedDivision extends AnimatedWithChildren {\n constructor(a, b) {\n super();\n this._warnedAboutDivideByZero = false;\n if (b === 0 || b instanceof AnimatedNode && b.__getValue() === 0) {\n console.error('Detected potential division by zero in AnimatedDivision');\n }\n this._a = typeof a === 'number' ? new AnimatedValue(a) : a;\n this._b = typeof b === 'number' ? new AnimatedValue(b) : b;\n }\n __makeNative(platformConfig) {\n this._a.__makeNative(platformConfig);\n this._b.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getValue() {\n var a = this._a.__getValue();\n var b = this._b.__getValue();\n if (b === 0) {\n // Prevent spamming the console/LogBox\n if (!this._warnedAboutDivideByZero) {\n console.error('Detected division by zero in AnimatedDivision');\n this._warnedAboutDivideByZero = true;\n }\n // Passing infinity/NaN to Fabric will cause a native crash\n return 0;\n }\n this._warnedAboutDivideByZero = false;\n return a / b;\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __attach() {\n this._a.__addChild(this);\n this._b.__addChild(this);\n }\n __detach() {\n this._a.__removeChild(this);\n this._b.__removeChild(this);\n super.__detach();\n }\n __getNativeConfig() {\n return {\n type: 'division',\n input: [this._a.__getNativeTag(), this._b.__getNativeTag()]\n };\n }\n}\nexport default AnimatedDivision;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nclass AnimatedModulo extends AnimatedWithChildren {\n constructor(a, modulus) {\n super();\n this._a = a;\n this._modulus = modulus;\n }\n __makeNative(platformConfig) {\n this._a.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getValue() {\n return (this._a.__getValue() % this._modulus + this._modulus) % this._modulus;\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __attach() {\n this._a.__addChild(this);\n }\n __detach() {\n this._a.__removeChild(this);\n super.__detach();\n }\n __getNativeConfig() {\n return {\n type: 'modulus',\n input: this._a.__getNativeTag(),\n modulus: this._modulus\n };\n }\n}\nexport default AnimatedModulo;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nclass AnimatedMultiplication extends AnimatedWithChildren {\n constructor(a, b) {\n super();\n this._a = typeof a === 'number' ? new AnimatedValue(a) : a;\n this._b = typeof b === 'number' ? new AnimatedValue(b) : b;\n }\n __makeNative(platformConfig) {\n this._a.__makeNative(platformConfig);\n this._b.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getValue() {\n return this._a.__getValue() * this._b.__getValue();\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __attach() {\n this._a.__addChild(this);\n this._b.__addChild(this);\n }\n __detach() {\n this._a.__removeChild(this);\n this._b.__removeChild(this);\n super.__detach();\n }\n __getNativeConfig() {\n return {\n type: 'multiplication',\n input: [this._a.__getNativeTag(), this._b.__getNativeTag()]\n };\n }\n}\nexport default AnimatedMultiplication;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedInterpolation from './AnimatedInterpolation';\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nclass AnimatedSubtraction extends AnimatedWithChildren {\n constructor(a, b) {\n super();\n this._a = typeof a === 'number' ? new AnimatedValue(a) : a;\n this._b = typeof b === 'number' ? new AnimatedValue(b) : b;\n }\n __makeNative(platformConfig) {\n this._a.__makeNative(platformConfig);\n this._b.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getValue() {\n return this._a.__getValue() - this._b.__getValue();\n }\n interpolate(config) {\n return new AnimatedInterpolation(this, config);\n }\n __attach() {\n this._a.__addChild(this);\n this._b.__addChild(this);\n }\n __detach() {\n this._a.__removeChild(this);\n this._b.__removeChild(this);\n super.__detach();\n }\n __getNativeConfig() {\n return {\n type: 'subtraction',\n input: [this._a.__getNativeTag(), this._b.__getNativeTag()]\n };\n }\n}\nexport default AnimatedSubtraction;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedNode from './AnimatedNode';\nimport { generateNewAnimationId, shouldUseNativeDriver } from '../NativeAnimatedHelper';\nclass AnimatedTracking extends AnimatedNode {\n constructor(value, parent, animationClass, animationConfig, callback) {\n super();\n this._value = value;\n this._parent = parent;\n this._animationClass = animationClass;\n this._animationConfig = animationConfig;\n this._useNativeDriver = shouldUseNativeDriver(animationConfig);\n this._callback = callback;\n this.__attach();\n }\n __makeNative() {\n this.__isNative = true;\n this._parent.__makeNative();\n super.__makeNative();\n this._value.__makeNative();\n }\n __getValue() {\n return this._parent.__getValue();\n }\n __attach() {\n this._parent.__addChild(this);\n if (this._useNativeDriver) {\n // when the tracking starts we need to convert this node to a \"native node\"\n // so that the parent node will be made \"native\" too. This is necessary as\n // if we don't do this `update` method will get called. At that point it\n // may be too late as it would mean the JS driver has already started\n // updating node values\n this.__makeNative();\n }\n }\n __detach() {\n this._parent.__removeChild(this);\n super.__detach();\n }\n update() {\n this._value.animate(new this._animationClass(_objectSpread(_objectSpread({}, this._animationConfig), {}, {\n toValue: this._animationConfig.toValue.__getValue()\n })), this._callback);\n }\n __getNativeConfig() {\n var animation = new this._animationClass(_objectSpread(_objectSpread({}, this._animationConfig), {}, {\n // remove toValue from the config as it's a ref to Animated.Value\n toValue: undefined\n }));\n var animationConfig = animation.__getNativeAnimationConfig();\n return {\n type: 'tracking',\n animationId: generateNewAnimationId(),\n animationConfig,\n toValue: this._parent.__getNativeTag(),\n value: this._value.__getNativeTag()\n };\n }\n}\nexport default AnimatedTracking;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nimport invariant from 'fbjs/lib/invariant';\nvar _uniqueId = 1;\n\n/**\n * 2D Value for driving 2D animations, such as pan gestures. Almost identical\n * API to normal `Animated.Value`, but multiplexed.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html\n */\nclass AnimatedValueXY extends AnimatedWithChildren {\n constructor(valueIn) {\n super();\n var value = valueIn || {\n x: 0,\n y: 0\n }; // fixme: shouldn't need `: any`\n if (typeof value.x === 'number' && typeof value.y === 'number') {\n this.x = new AnimatedValue(value.x);\n this.y = new AnimatedValue(value.y);\n } else {\n invariant(value.x instanceof AnimatedValue && value.y instanceof AnimatedValue, 'AnimatedValueXY must be initialized with an object of numbers or ' + 'AnimatedValues.');\n this.x = value.x;\n this.y = value.y;\n }\n this._listeners = {};\n }\n\n /**\n * Directly set the value. This will stop any animations running on the value\n * and update all the bound properties.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#setvalue\n */\n setValue(value) {\n this.x.setValue(value.x);\n this.y.setValue(value.y);\n }\n\n /**\n * Sets an offset that is applied on top of whatever value is set, whether\n * via `setValue`, an animation, or `Animated.event`. Useful for compensating\n * things like the start of a pan gesture.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#setoffset\n */\n setOffset(offset) {\n this.x.setOffset(offset.x);\n this.y.setOffset(offset.y);\n }\n\n /**\n * Merges the offset value into the base value and resets the offset to zero.\n * The final output of the value is unchanged.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#flattenoffset\n */\n flattenOffset() {\n this.x.flattenOffset();\n this.y.flattenOffset();\n }\n\n /**\n * Sets the offset value to the base value, and resets the base value to\n * zero. The final output of the value is unchanged.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#extractoffset\n */\n extractOffset() {\n this.x.extractOffset();\n this.y.extractOffset();\n }\n __getValue() {\n return {\n x: this.x.__getValue(),\n y: this.y.__getValue()\n };\n }\n\n /**\n * Stops any animation and resets the value to its original.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#resetanimation\n */\n resetAnimation(callback) {\n this.x.resetAnimation();\n this.y.resetAnimation();\n callback && callback(this.__getValue());\n }\n\n /**\n * Stops any running animation or tracking. `callback` is invoked with the\n * final value after stopping the animation, which is useful for updating\n * state to match the animation position with layout.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#stopanimation\n */\n stopAnimation(callback) {\n this.x.stopAnimation();\n this.y.stopAnimation();\n callback && callback(this.__getValue());\n }\n\n /**\n * Adds an asynchronous listener to the value so you can observe updates from\n * animations. This is useful because there is no way to synchronously read\n * the value because it might be driven natively.\n *\n * Returns a string that serves as an identifier for the listener.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#addlistener\n */\n addListener(callback) {\n var id = String(_uniqueId++);\n var jointCallback = _ref => {\n var number = _ref.value;\n callback(this.__getValue());\n };\n this._listeners[id] = {\n x: this.x.addListener(jointCallback),\n y: this.y.addListener(jointCallback)\n };\n return id;\n }\n\n /**\n * Unregister a listener. The `id` param shall match the identifier\n * previously returned by `addListener()`.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#removelistener\n */\n removeListener(id) {\n this.x.removeListener(this._listeners[id].x);\n this.y.removeListener(this._listeners[id].y);\n delete this._listeners[id];\n }\n\n /**\n * Remove all registered listeners.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#removealllisteners\n */\n removeAllListeners() {\n this.x.removeAllListeners();\n this.y.removeAllListeners();\n this._listeners = {};\n }\n\n /**\n * Converts `{x, y}` into `{left, top}` for use in style.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#getlayout\n */\n getLayout() {\n return {\n left: this.x,\n top: this.y\n };\n }\n\n /**\n * Converts `{x, y}` into a useable translation transform.\n *\n * See https://reactnative.dev/docs/animatedvaluexy.html#gettranslatetransform\n */\n getTranslateTransform() {\n return [{\n translateX: this.x\n }, {\n translateY: this.y\n }];\n }\n}\nexport default AnimatedValueXY;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nvar startNativeAnimationNextId = 1;\n\n// Important note: start() and stop() will only be called at most once.\n// Once an animation has been stopped or finished its course, it will\n// not be reused.\nclass Animation {\n start(fromValue, onUpdate, onEnd, previousAnimation, animatedValue) {}\n stop() {\n if (this.__nativeId) {\n NativeAnimatedHelper.API.stopAnimation(this.__nativeId);\n }\n }\n __getNativeAnimationConfig() {\n // Subclasses that have corresponding animation implementation done in native\n // should override this method\n throw new Error('This animation type cannot be offloaded to native');\n }\n // Helper function for subclasses to make sure onEnd is only called once.\n __debouncedOnEnd(result) {\n var onEnd = this.__onEnd;\n this.__onEnd = null;\n onEnd && onEnd(result);\n }\n __startNativeAnimation(animatedValue) {\n var startNativeAnimationWaitId = startNativeAnimationNextId + \":startAnimation\";\n startNativeAnimationNextId += 1;\n NativeAnimatedHelper.API.setWaitingForIdentifier(startNativeAnimationWaitId);\n try {\n var config = this.__getNativeAnimationConfig();\n animatedValue.__makeNative(config.platformConfig);\n this.__nativeId = NativeAnimatedHelper.generateNewAnimationId();\n NativeAnimatedHelper.API.startAnimatingNode(this.__nativeId, animatedValue.__getNativeTag(), config,\n // $FlowFixMe[method-unbinding] added when improving typing for this parameters\n this.__debouncedOnEnd.bind(this));\n } catch (e) {\n throw e;\n } finally {\n NativeAnimatedHelper.API.unsetWaitingForIdentifier(startNativeAnimationWaitId);\n }\n }\n}\nexport default Animation;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport Animation from './Animation';\nimport { shouldUseNativeDriver } from '../NativeAnimatedHelper';\nclass DecayAnimation extends Animation {\n constructor(config) {\n var _config$deceleration, _config$isInteraction, _config$iterations;\n super();\n this._deceleration = (_config$deceleration = config.deceleration) !== null && _config$deceleration !== void 0 ? _config$deceleration : 0.998;\n this._velocity = config.velocity;\n this._useNativeDriver = shouldUseNativeDriver(config);\n this.__isInteraction = (_config$isInteraction = config.isInteraction) !== null && _config$isInteraction !== void 0 ? _config$isInteraction : !this._useNativeDriver;\n this.__iterations = (_config$iterations = config.iterations) !== null && _config$iterations !== void 0 ? _config$iterations : 1;\n }\n __getNativeAnimationConfig() {\n return {\n type: 'decay',\n deceleration: this._deceleration,\n velocity: this._velocity,\n iterations: this.__iterations\n };\n }\n start(fromValue, onUpdate, onEnd, previousAnimation, animatedValue) {\n this.__active = true;\n this._lastValue = fromValue;\n this._fromValue = fromValue;\n this._onUpdate = onUpdate;\n this.__onEnd = onEnd;\n this._startTime = Date.now();\n if (this._useNativeDriver) {\n this.__startNativeAnimation(animatedValue);\n } else {\n this._animationFrame = requestAnimationFrame(this.onUpdate.bind(this));\n }\n }\n onUpdate() {\n var now = Date.now();\n var value = this._fromValue + this._velocity / (1 - this._deceleration) * (1 - Math.exp(-(1 - this._deceleration) * (now - this._startTime)));\n this._onUpdate(value);\n if (Math.abs(this._lastValue - value) < 0.1) {\n this.__debouncedOnEnd({\n finished: true\n });\n return;\n }\n this._lastValue = value;\n if (this.__active) {\n this._animationFrame = requestAnimationFrame(this.onUpdate.bind(this));\n }\n }\n stop() {\n super.stop();\n this.__active = false;\n global.cancelAnimationFrame(this._animationFrame);\n this.__debouncedOnEnd({\n finished: false\n });\n }\n}\nexport default DecayAnimation;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\nfunction stiffnessFromOrigamiValue(oValue) {\n return (oValue - 30) * 3.62 + 194;\n}\nfunction dampingFromOrigamiValue(oValue) {\n return (oValue - 8) * 3 + 25;\n}\nfunction fromOrigamiTensionAndFriction(tension, friction) {\n return {\n stiffness: stiffnessFromOrigamiValue(tension),\n damping: dampingFromOrigamiValue(friction)\n };\n}\nfunction fromBouncinessAndSpeed(bounciness, speed) {\n function normalize(value, startValue, endValue) {\n return (value - startValue) / (endValue - startValue);\n }\n function projectNormal(n, start, end) {\n return start + n * (end - start);\n }\n function linearInterpolation(t, start, end) {\n return t * end + (1 - t) * start;\n }\n function quadraticOutInterpolation(t, start, end) {\n return linearInterpolation(2 * t - t * t, start, end);\n }\n function b3Friction1(x) {\n return 0.0007 * Math.pow(x, 3) - 0.031 * Math.pow(x, 2) + 0.64 * x + 1.28;\n }\n function b3Friction2(x) {\n return 0.000044 * Math.pow(x, 3) - 0.006 * Math.pow(x, 2) + 0.36 * x + 2;\n }\n function b3Friction3(x) {\n return 0.00000045 * Math.pow(x, 3) - 0.000332 * Math.pow(x, 2) + 0.1078 * x + 5.84;\n }\n function b3Nobounce(tension) {\n if (tension <= 18) {\n return b3Friction1(tension);\n } else if (tension > 18 && tension <= 44) {\n return b3Friction2(tension);\n } else {\n return b3Friction3(tension);\n }\n }\n var b = normalize(bounciness / 1.7, 0, 20);\n b = projectNormal(b, 0, 0.8);\n var s = normalize(speed / 1.7, 0, 20);\n var bouncyTension = projectNormal(s, 0.5, 200);\n var bouncyFriction = quadraticOutInterpolation(b, b3Nobounce(bouncyTension), 0.01);\n return {\n stiffness: stiffnessFromOrigamiValue(bouncyTension),\n damping: dampingFromOrigamiValue(bouncyFriction)\n };\n}\nexport default {\n fromOrigamiTensionAndFriction,\n fromBouncinessAndSpeed\n};","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport Animation from './Animation';\nimport SpringConfig from '../SpringConfig';\nimport invariant from 'fbjs/lib/invariant';\nimport { shouldUseNativeDriver } from '../NativeAnimatedHelper';\nimport AnimatedColor from '../nodes/AnimatedColor';\nclass SpringAnimation extends Animation {\n constructor(config) {\n var _config$overshootClam, _config$restDisplacem, _config$restSpeedThre, _config$velocity, _config$velocity2, _config$delay, _config$isInteraction, _config$iterations;\n super();\n this._overshootClamping = (_config$overshootClam = config.overshootClamping) !== null && _config$overshootClam !== void 0 ? _config$overshootClam : false;\n this._restDisplacementThreshold = (_config$restDisplacem = config.restDisplacementThreshold) !== null && _config$restDisplacem !== void 0 ? _config$restDisplacem : 0.001;\n this._restSpeedThreshold = (_config$restSpeedThre = config.restSpeedThreshold) !== null && _config$restSpeedThre !== void 0 ? _config$restSpeedThre : 0.001;\n this._initialVelocity = (_config$velocity = config.velocity) !== null && _config$velocity !== void 0 ? _config$velocity : 0;\n this._lastVelocity = (_config$velocity2 = config.velocity) !== null && _config$velocity2 !== void 0 ? _config$velocity2 : 0;\n this._toValue = config.toValue;\n this._delay = (_config$delay = config.delay) !== null && _config$delay !== void 0 ? _config$delay : 0;\n this._useNativeDriver = shouldUseNativeDriver(config);\n this._platformConfig = config.platformConfig;\n this.__isInteraction = (_config$isInteraction = config.isInteraction) !== null && _config$isInteraction !== void 0 ? _config$isInteraction : !this._useNativeDriver;\n this.__iterations = (_config$iterations = config.iterations) !== null && _config$iterations !== void 0 ? _config$iterations : 1;\n if (config.stiffness !== undefined || config.damping !== undefined || config.mass !== undefined) {\n var _config$stiffness, _config$damping, _config$mass;\n invariant(config.bounciness === undefined && config.speed === undefined && config.tension === undefined && config.friction === undefined, 'You can define one of bounciness/speed, tension/friction, or stiffness/damping/mass, but not more than one');\n this._stiffness = (_config$stiffness = config.stiffness) !== null && _config$stiffness !== void 0 ? _config$stiffness : 100;\n this._damping = (_config$damping = config.damping) !== null && _config$damping !== void 0 ? _config$damping : 10;\n this._mass = (_config$mass = config.mass) !== null && _config$mass !== void 0 ? _config$mass : 1;\n } else if (config.bounciness !== undefined || config.speed !== undefined) {\n var _config$bounciness, _config$speed;\n // Convert the origami bounciness/speed values to stiffness/damping\n // We assume mass is 1.\n invariant(config.tension === undefined && config.friction === undefined && config.stiffness === undefined && config.damping === undefined && config.mass === undefined, 'You can define one of bounciness/speed, tension/friction, or stiffness/damping/mass, but not more than one');\n var springConfig = SpringConfig.fromBouncinessAndSpeed((_config$bounciness = config.bounciness) !== null && _config$bounciness !== void 0 ? _config$bounciness : 8, (_config$speed = config.speed) !== null && _config$speed !== void 0 ? _config$speed : 12);\n this._stiffness = springConfig.stiffness;\n this._damping = springConfig.damping;\n this._mass = 1;\n } else {\n var _config$tension, _config$friction;\n // Convert the origami tension/friction values to stiffness/damping\n // We assume mass is 1.\n var _springConfig = SpringConfig.fromOrigamiTensionAndFriction((_config$tension = config.tension) !== null && _config$tension !== void 0 ? _config$tension : 40, (_config$friction = config.friction) !== null && _config$friction !== void 0 ? _config$friction : 7);\n this._stiffness = _springConfig.stiffness;\n this._damping = _springConfig.damping;\n this._mass = 1;\n }\n invariant(this._stiffness > 0, 'Stiffness value must be greater than 0');\n invariant(this._damping > 0, 'Damping value must be greater than 0');\n invariant(this._mass > 0, 'Mass value must be greater than 0');\n }\n __getNativeAnimationConfig() {\n var _this$_initialVelocit;\n return {\n type: 'spring',\n overshootClamping: this._overshootClamping,\n restDisplacementThreshold: this._restDisplacementThreshold,\n restSpeedThreshold: this._restSpeedThreshold,\n stiffness: this._stiffness,\n damping: this._damping,\n mass: this._mass,\n initialVelocity: (_this$_initialVelocit = this._initialVelocity) !== null && _this$_initialVelocit !== void 0 ? _this$_initialVelocit : this._lastVelocity,\n toValue: this._toValue,\n iterations: this.__iterations,\n platformConfig: this._platformConfig\n };\n }\n start(fromValue, onUpdate, onEnd, previousAnimation, animatedValue) {\n this.__active = true;\n this._startPosition = fromValue;\n this._lastPosition = this._startPosition;\n this._onUpdate = onUpdate;\n this.__onEnd = onEnd;\n this._lastTime = Date.now();\n this._frameTime = 0.0;\n if (previousAnimation instanceof SpringAnimation) {\n var internalState = previousAnimation.getInternalState();\n this._lastPosition = internalState.lastPosition;\n this._lastVelocity = internalState.lastVelocity;\n // Set the initial velocity to the last velocity\n this._initialVelocity = this._lastVelocity;\n this._lastTime = internalState.lastTime;\n }\n var start = () => {\n if (this._useNativeDriver) {\n this.__startNativeAnimation(animatedValue);\n } else {\n this.onUpdate();\n }\n };\n\n // If this._delay is more than 0, we start after the timeout.\n if (this._delay) {\n this._timeout = setTimeout(start, this._delay);\n } else {\n start();\n }\n }\n getInternalState() {\n return {\n lastPosition: this._lastPosition,\n lastVelocity: this._lastVelocity,\n lastTime: this._lastTime\n };\n }\n\n /**\n * This spring model is based off of a damped harmonic oscillator\n * (https://en.wikipedia.org/wiki/Harmonic_oscillator#Damped_harmonic_oscillator).\n *\n * We use the closed form of the second order differential equation:\n *\n * x'' + (2ζ⍵_0)x' + ⍵^2x = 0\n *\n * where\n * ⍵_0 = √(k / m) (undamped angular frequency of the oscillator),\n * ζ = c / 2√mk (damping ratio),\n * c = damping constant\n * k = stiffness\n * m = mass\n *\n * The derivation of the closed form is described in detail here:\n * http://planetmath.org/sites/default/files/texpdf/39745.pdf\n *\n * This algorithm happens to match the algorithm used by CASpringAnimation,\n * a QuartzCore (iOS) API that creates spring animations.\n */\n onUpdate() {\n // If for some reason we lost a lot of frames (e.g. process large payload or\n // stopped in the debugger), we only advance by 4 frames worth of\n // computation and will continue on the next frame. It's better to have it\n // running at faster speed than jumping to the end.\n var MAX_STEPS = 64;\n var now = Date.now();\n if (now > this._lastTime + MAX_STEPS) {\n now = this._lastTime + MAX_STEPS;\n }\n var deltaTime = (now - this._lastTime) / 1000;\n this._frameTime += deltaTime;\n var c = this._damping;\n var m = this._mass;\n var k = this._stiffness;\n var v0 = -this._initialVelocity;\n var zeta = c / (2 * Math.sqrt(k * m)); // damping ratio\n var omega0 = Math.sqrt(k / m); // undamped angular frequency of the oscillator (rad/ms)\n var omega1 = omega0 * Math.sqrt(1.0 - zeta * zeta); // exponential decay\n var x0 = this._toValue - this._startPosition; // calculate the oscillation from x0 = 1 to x = 0\n\n var position = 0.0;\n var velocity = 0.0;\n var t = this._frameTime;\n if (zeta < 1) {\n // Under damped\n var envelope = Math.exp(-zeta * omega0 * t);\n position = this._toValue - envelope * ((v0 + zeta * omega0 * x0) / omega1 * Math.sin(omega1 * t) + x0 * Math.cos(omega1 * t));\n // This looks crazy -- it's actually just the derivative of the\n // oscillation function\n velocity = zeta * omega0 * envelope * (Math.sin(omega1 * t) * (v0 + zeta * omega0 * x0) / omega1 + x0 * Math.cos(omega1 * t)) - envelope * (Math.cos(omega1 * t) * (v0 + zeta * omega0 * x0) - omega1 * x0 * Math.sin(omega1 * t));\n } else {\n // Critically damped\n var _envelope = Math.exp(-omega0 * t);\n position = this._toValue - _envelope * (x0 + (v0 + omega0 * x0) * t);\n velocity = _envelope * (v0 * (t * omega0 - 1) + t * x0 * (omega0 * omega0));\n }\n this._lastTime = now;\n this._lastPosition = position;\n this._lastVelocity = velocity;\n this._onUpdate(position);\n if (!this.__active) {\n // a listener might have stopped us in _onUpdate\n return;\n }\n\n // Conditions for stopping the spring animation\n var isOvershooting = false;\n if (this._overshootClamping && this._stiffness !== 0) {\n if (this._startPosition < this._toValue) {\n isOvershooting = position > this._toValue;\n } else {\n isOvershooting = position < this._toValue;\n }\n }\n var isVelocity = Math.abs(velocity) <= this._restSpeedThreshold;\n var isDisplacement = true;\n if (this._stiffness !== 0) {\n isDisplacement = Math.abs(this._toValue - position) <= this._restDisplacementThreshold;\n }\n if (isOvershooting || isVelocity && isDisplacement) {\n if (this._stiffness !== 0) {\n // Ensure that we end up with a round value\n this._lastPosition = this._toValue;\n this._lastVelocity = 0;\n this._onUpdate(this._toValue);\n }\n this.__debouncedOnEnd({\n finished: true\n });\n return;\n }\n // $FlowFixMe[method-unbinding] added when improving typing for this parameters\n this._animationFrame = requestAnimationFrame(this.onUpdate.bind(this));\n }\n stop() {\n super.stop();\n this.__active = false;\n clearTimeout(this._timeout);\n global.cancelAnimationFrame(this._animationFrame);\n this.__debouncedOnEnd({\n finished: false\n });\n }\n}\nexport default SpringAnimation;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedValue from '../nodes/AnimatedValue';\nimport AnimatedValueXY from '../nodes/AnimatedValueXY';\nimport AnimatedInterpolation from '../nodes/AnimatedInterpolation';\nimport Easing from '../../../../exports/Easing';\nimport Animation from './Animation';\nimport { shouldUseNativeDriver } from '../NativeAnimatedHelper';\nimport AnimatedColor from '../nodes/AnimatedColor';\nvar _easeInOut;\nfunction easeInOut() {\n if (!_easeInOut) {\n _easeInOut = Easing.inOut(Easing.ease);\n }\n return _easeInOut;\n}\nclass TimingAnimation extends Animation {\n constructor(config) {\n var _config$easing, _config$duration, _config$delay, _config$iterations, _config$isInteraction;\n super();\n this._toValue = config.toValue;\n this._easing = (_config$easing = config.easing) !== null && _config$easing !== void 0 ? _config$easing : easeInOut();\n this._duration = (_config$duration = config.duration) !== null && _config$duration !== void 0 ? _config$duration : 500;\n this._delay = (_config$delay = config.delay) !== null && _config$delay !== void 0 ? _config$delay : 0;\n this.__iterations = (_config$iterations = config.iterations) !== null && _config$iterations !== void 0 ? _config$iterations : 1;\n this._useNativeDriver = shouldUseNativeDriver(config);\n this._platformConfig = config.platformConfig;\n this.__isInteraction = (_config$isInteraction = config.isInteraction) !== null && _config$isInteraction !== void 0 ? _config$isInteraction : !this._useNativeDriver;\n }\n __getNativeAnimationConfig() {\n var frameDuration = 1000.0 / 60.0;\n var frames = [];\n var numFrames = Math.round(this._duration / frameDuration);\n for (var frame = 0; frame < numFrames; frame++) {\n frames.push(this._easing(frame / numFrames));\n }\n frames.push(this._easing(1));\n return {\n type: 'frames',\n frames,\n toValue: this._toValue,\n iterations: this.__iterations,\n platformConfig: this._platformConfig\n };\n }\n start(fromValue, onUpdate, onEnd, previousAnimation, animatedValue) {\n this.__active = true;\n this._fromValue = fromValue;\n this._onUpdate = onUpdate;\n this.__onEnd = onEnd;\n var start = () => {\n // Animations that sometimes have 0 duration and sometimes do not\n // still need to use the native driver when duration is 0 so as to\n // not cause intermixed JS and native animations.\n if (this._duration === 0 && !this._useNativeDriver) {\n this._onUpdate(this._toValue);\n this.__debouncedOnEnd({\n finished: true\n });\n } else {\n this._startTime = Date.now();\n if (this._useNativeDriver) {\n this.__startNativeAnimation(animatedValue);\n } else {\n this._animationFrame = requestAnimationFrame(\n // $FlowFixMe[method-unbinding] added when improving typing for this parameters\n this.onUpdate.bind(this));\n }\n }\n };\n if (this._delay) {\n this._timeout = setTimeout(start, this._delay);\n } else {\n start();\n }\n }\n onUpdate() {\n var now = Date.now();\n if (now >= this._startTime + this._duration) {\n if (this._duration === 0) {\n this._onUpdate(this._toValue);\n } else {\n this._onUpdate(this._fromValue + this._easing(1) * (this._toValue - this._fromValue));\n }\n this.__debouncedOnEnd({\n finished: true\n });\n return;\n }\n this._onUpdate(this._fromValue + this._easing((now - this._startTime) / this._duration) * (this._toValue - this._fromValue));\n if (this.__active) {\n // $FlowFixMe[method-unbinding] added when improving typing for this parameters\n this._animationFrame = requestAnimationFrame(this.onUpdate.bind(this));\n }\n }\n stop() {\n super.stop();\n this.__active = false;\n clearTimeout(this._timeout);\n global.cancelAnimationFrame(this._animationFrame);\n this.__debouncedOnEnd({\n finished: false\n });\n }\n}\nexport default TimingAnimation;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport AnimatedValue from './AnimatedValue';\nimport AnimatedWithChildren from './AnimatedWithChildren';\nimport normalizeColor from '@react-native/normalize-colors';\nimport NativeAnimatedHelper from '../NativeAnimatedHelper';\nvar NativeAnimatedAPI = NativeAnimatedHelper.API;\nvar defaultColor = {\n r: 0,\n g: 0,\n b: 0,\n a: 1.0\n};\nvar _uniqueId = 1;\nvar processColorObject = color => {\n return color;\n};\n\n/* eslint no-bitwise: 0 */\nfunction processColor(color) {\n if (color === undefined || color === null) {\n return null;\n }\n if (isRgbaValue(color)) {\n // $FlowIgnore[incompatible-cast] - Type is verified above\n return color;\n }\n var normalizedColor = normalizeColor(\n // $FlowIgnore[incompatible-cast] - Type is verified above\n color);\n if (normalizedColor === undefined || normalizedColor === null) {\n return null;\n }\n if (typeof normalizedColor === 'object') {\n var processedColorObj = processColorObject(normalizedColor);\n if (processedColorObj != null) {\n return processedColorObj;\n }\n } else if (typeof normalizedColor === 'number') {\n var r = (normalizedColor & 0xff000000) >>> 24;\n var g = (normalizedColor & 0x00ff0000) >>> 16;\n var b = (normalizedColor & 0x0000ff00) >>> 8;\n var a = (normalizedColor & 0x000000ff) / 255;\n return {\n r,\n g,\n b,\n a\n };\n }\n return null;\n}\nfunction isRgbaValue(value) {\n return value && typeof value.r === 'number' && typeof value.g === 'number' && typeof value.b === 'number' && typeof value.a === 'number';\n}\nfunction isRgbaAnimatedValue(value) {\n return value && value.r instanceof AnimatedValue && value.g instanceof AnimatedValue && value.b instanceof AnimatedValue && value.a instanceof AnimatedValue;\n}\nexport default class AnimatedColor extends AnimatedWithChildren {\n constructor(valueIn, config) {\n super();\n this._listeners = {};\n var value = valueIn !== null && valueIn !== void 0 ? valueIn : defaultColor;\n if (isRgbaAnimatedValue(value)) {\n // $FlowIgnore[incompatible-cast] - Type is verified above\n var rgbaAnimatedValue = value;\n this.r = rgbaAnimatedValue.r;\n this.g = rgbaAnimatedValue.g;\n this.b = rgbaAnimatedValue.b;\n this.a = rgbaAnimatedValue.a;\n } else {\n var _processColor;\n var processedColor = // $FlowIgnore[incompatible-cast] - Type is verified above\n (_processColor = processColor(value)) !== null && _processColor !== void 0 ? _processColor : defaultColor;\n var initColor = defaultColor;\n if (isRgbaValue(processedColor)) {\n // $FlowIgnore[incompatible-cast] - Type is verified above\n initColor = processedColor;\n } else {\n // $FlowIgnore[incompatible-cast] - Type is verified above\n this.nativeColor = processedColor;\n }\n this.r = new AnimatedValue(initColor.r);\n this.g = new AnimatedValue(initColor.g);\n this.b = new AnimatedValue(initColor.b);\n this.a = new AnimatedValue(initColor.a);\n }\n if (this.nativeColor || config && config.useNativeDriver) {\n this.__makeNative();\n }\n }\n\n /**\n * Directly set the value. This will stop any animations running on the value\n * and update all the bound properties.\n */\n setValue(value) {\n var _processColor2;\n var shouldUpdateNodeConfig = false;\n if (this.__isNative) {\n var nativeTag = this.__getNativeTag();\n NativeAnimatedAPI.setWaitingForIdentifier(nativeTag.toString());\n }\n var processedColor = (_processColor2 = processColor(value)) !== null && _processColor2 !== void 0 ? _processColor2 : defaultColor;\n if (isRgbaValue(processedColor)) {\n // $FlowIgnore[incompatible-type] - Type is verified above\n var rgbaValue = processedColor;\n this.r.setValue(rgbaValue.r);\n this.g.setValue(rgbaValue.g);\n this.b.setValue(rgbaValue.b);\n this.a.setValue(rgbaValue.a);\n if (this.nativeColor != null) {\n this.nativeColor = null;\n shouldUpdateNodeConfig = true;\n }\n } else {\n // $FlowIgnore[incompatible-type] - Type is verified above\n var nativeColor = processedColor;\n if (this.nativeColor !== nativeColor) {\n this.nativeColor = nativeColor;\n shouldUpdateNodeConfig = true;\n }\n }\n if (this.__isNative) {\n var _nativeTag = this.__getNativeTag();\n if (shouldUpdateNodeConfig) {\n NativeAnimatedAPI.updateAnimatedNodeConfig(_nativeTag, this.__getNativeConfig());\n }\n NativeAnimatedAPI.unsetWaitingForIdentifier(_nativeTag.toString());\n }\n }\n\n /**\n * Sets an offset that is applied on top of whatever value is set, whether\n * via `setValue`, an animation, or `Animated.event`. Useful for compensating\n * things like the start of a pan gesture.\n */\n setOffset(offset) {\n this.r.setOffset(offset.r);\n this.g.setOffset(offset.g);\n this.b.setOffset(offset.b);\n this.a.setOffset(offset.a);\n }\n\n /**\n * Merges the offset value into the base value and resets the offset to zero.\n * The final output of the value is unchanged.\n */\n flattenOffset() {\n this.r.flattenOffset();\n this.g.flattenOffset();\n this.b.flattenOffset();\n this.a.flattenOffset();\n }\n\n /**\n * Sets the offset value to the base value, and resets the base value to\n * zero. The final output of the value is unchanged.\n */\n extractOffset() {\n this.r.extractOffset();\n this.g.extractOffset();\n this.b.extractOffset();\n this.a.extractOffset();\n }\n\n /**\n * Adds an asynchronous listener to the value so you can observe updates from\n * animations. This is useful because there is no way to synchronously read\n * the value because it might be driven natively.\n *\n * Returns a string that serves as an identifier for the listener.\n */\n addListener(callback) {\n var id = String(_uniqueId++);\n var jointCallback = _ref => {\n var number = _ref.value;\n callback(this.__getValue());\n };\n this._listeners[id] = {\n r: this.r.addListener(jointCallback),\n g: this.g.addListener(jointCallback),\n b: this.b.addListener(jointCallback),\n a: this.a.addListener(jointCallback)\n };\n return id;\n }\n\n /**\n * Unregister a listener. The `id` param shall match the identifier\n * previously returned by `addListener()`.\n */\n removeListener(id) {\n this.r.removeListener(this._listeners[id].r);\n this.g.removeListener(this._listeners[id].g);\n this.b.removeListener(this._listeners[id].b);\n this.a.removeListener(this._listeners[id].a);\n delete this._listeners[id];\n }\n\n /**\n * Remove all registered listeners.\n */\n removeAllListeners() {\n this.r.removeAllListeners();\n this.g.removeAllListeners();\n this.b.removeAllListeners();\n this.a.removeAllListeners();\n this._listeners = {};\n }\n\n /**\n * Stops any running animation or tracking. `callback` is invoked with the\n * final value after stopping the animation, which is useful for updating\n * state to match the animation position with layout.\n */\n stopAnimation(callback) {\n this.r.stopAnimation();\n this.g.stopAnimation();\n this.b.stopAnimation();\n this.a.stopAnimation();\n callback && callback(this.__getValue());\n }\n\n /**\n * Stops any animation and resets the value to its original.\n */\n resetAnimation(callback) {\n this.r.resetAnimation();\n this.g.resetAnimation();\n this.b.resetAnimation();\n this.a.resetAnimation();\n callback && callback(this.__getValue());\n }\n __getValue() {\n if (this.nativeColor != null) {\n return this.nativeColor;\n } else {\n return \"rgba(\" + this.r.__getValue() + \", \" + this.g.__getValue() + \", \" + this.b.__getValue() + \", \" + this.a.__getValue() + \")\";\n }\n }\n __attach() {\n this.r.__addChild(this);\n this.g.__addChild(this);\n this.b.__addChild(this);\n this.a.__addChild(this);\n super.__attach();\n }\n __detach() {\n this.r.__removeChild(this);\n this.g.__removeChild(this);\n this.b.__removeChild(this);\n this.a.__removeChild(this);\n super.__detach();\n }\n __makeNative(platformConfig) {\n this.r.__makeNative(platformConfig);\n this.g.__makeNative(platformConfig);\n this.b.__makeNative(platformConfig);\n this.a.__makeNative(platformConfig);\n super.__makeNative(platformConfig);\n }\n __getNativeConfig() {\n return {\n type: 'color',\n r: this.r.__getNativeTag(),\n g: this.g.__getNativeTag(),\n b: this.b.__getNativeTag(),\n a: this.a.__getNativeTag(),\n nativeColor: this.nativeColor\n };\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { AnimatedEvent, attachNativeEvent } from './AnimatedEvent';\nimport AnimatedAddition from './nodes/AnimatedAddition';\nimport AnimatedDiffClamp from './nodes/AnimatedDiffClamp';\nimport AnimatedDivision from './nodes/AnimatedDivision';\nimport AnimatedInterpolation from './nodes/AnimatedInterpolation';\nimport AnimatedModulo from './nodes/AnimatedModulo';\nimport AnimatedMultiplication from './nodes/AnimatedMultiplication';\nimport AnimatedNode from './nodes/AnimatedNode';\nimport AnimatedProps from './nodes/AnimatedProps';\nimport AnimatedSubtraction from './nodes/AnimatedSubtraction';\nimport AnimatedTracking from './nodes/AnimatedTracking';\nimport AnimatedValue from './nodes/AnimatedValue';\nimport AnimatedValueXY from './nodes/AnimatedValueXY';\nimport DecayAnimation from './animations/DecayAnimation';\nimport SpringAnimation from './animations/SpringAnimation';\nimport TimingAnimation from './animations/TimingAnimation';\nimport createAnimatedComponent from './createAnimatedComponent';\nimport AnimatedColor from './nodes/AnimatedColor';\nvar add = function add(a, b) {\n return new AnimatedAddition(a, b);\n};\nvar subtract = function subtract(a, b) {\n return new AnimatedSubtraction(a, b);\n};\nvar divide = function divide(a, b) {\n return new AnimatedDivision(a, b);\n};\nvar multiply = function multiply(a, b) {\n return new AnimatedMultiplication(a, b);\n};\nvar modulo = function modulo(a, modulus) {\n return new AnimatedModulo(a, modulus);\n};\nvar diffClamp = function diffClamp(a, min, max) {\n return new AnimatedDiffClamp(a, min, max);\n};\nvar _combineCallbacks = function _combineCallbacks(callback, config) {\n if (callback && config.onComplete) {\n return function () {\n config.onComplete && config.onComplete(...arguments);\n callback && callback(...arguments);\n };\n } else {\n return callback || config.onComplete;\n }\n};\nvar maybeVectorAnim = function maybeVectorAnim(value, config, anim) {\n if (value instanceof AnimatedValueXY) {\n var configX = _objectSpread({}, config);\n var configY = _objectSpread({}, config);\n for (var key in config) {\n var _config$key = config[key],\n x = _config$key.x,\n y = _config$key.y;\n if (x !== undefined && y !== undefined) {\n configX[key] = x;\n configY[key] = y;\n }\n }\n var aX = anim(value.x, configX);\n var aY = anim(value.y, configY);\n // We use `stopTogether: false` here because otherwise tracking will break\n // because the second animation will get stopped before it can update.\n return parallel([aX, aY], {\n stopTogether: false\n });\n } else if (value instanceof AnimatedColor) {\n var configR = _objectSpread({}, config);\n var configG = _objectSpread({}, config);\n var configB = _objectSpread({}, config);\n var configA = _objectSpread({}, config);\n for (var _key in config) {\n var _config$_key = config[_key],\n r = _config$_key.r,\n g = _config$_key.g,\n b = _config$_key.b,\n a = _config$_key.a;\n if (r !== undefined && g !== undefined && b !== undefined && a !== undefined) {\n configR[_key] = r;\n configG[_key] = g;\n configB[_key] = b;\n configA[_key] = a;\n }\n }\n var aR = anim(value.r, configR);\n var aG = anim(value.g, configG);\n var aB = anim(value.b, configB);\n var aA = anim(value.a, configA);\n // We use `stopTogether: false` here because otherwise tracking will break\n // because the second animation will get stopped before it can update.\n return parallel([aR, aG, aB, aA], {\n stopTogether: false\n });\n }\n return null;\n};\nvar spring = function spring(value, config) {\n var _start = function start(animatedValue, configuration, callback) {\n callback = _combineCallbacks(callback, configuration);\n var singleValue = animatedValue;\n var singleConfig = configuration;\n singleValue.stopTracking();\n if (configuration.toValue instanceof AnimatedNode) {\n singleValue.track(new AnimatedTracking(singleValue, configuration.toValue, SpringAnimation, singleConfig, callback));\n } else {\n singleValue.animate(new SpringAnimation(singleConfig), callback);\n }\n };\n return maybeVectorAnim(value, config, spring) || {\n start: function start(callback) {\n _start(value, config, callback);\n },\n stop: function stop() {\n value.stopAnimation();\n },\n reset: function reset() {\n value.resetAnimation();\n },\n _startNativeLoop: function _startNativeLoop(iterations) {\n var singleConfig = _objectSpread(_objectSpread({}, config), {}, {\n iterations\n });\n _start(value, singleConfig);\n },\n _isUsingNativeDriver: function _isUsingNativeDriver() {\n return config.useNativeDriver || false;\n }\n };\n};\nvar timing = function timing(value, config) {\n var _start2 = function start(animatedValue, configuration, callback) {\n callback = _combineCallbacks(callback, configuration);\n var singleValue = animatedValue;\n var singleConfig = configuration;\n singleValue.stopTracking();\n if (configuration.toValue instanceof AnimatedNode) {\n singleValue.track(new AnimatedTracking(singleValue, configuration.toValue, TimingAnimation, singleConfig, callback));\n } else {\n singleValue.animate(new TimingAnimation(singleConfig), callback);\n }\n };\n return maybeVectorAnim(value, config, timing) || {\n start: function start(callback) {\n _start2(value, config, callback);\n },\n stop: function stop() {\n value.stopAnimation();\n },\n reset: function reset() {\n value.resetAnimation();\n },\n _startNativeLoop: function _startNativeLoop(iterations) {\n var singleConfig = _objectSpread(_objectSpread({}, config), {}, {\n iterations\n });\n _start2(value, singleConfig);\n },\n _isUsingNativeDriver: function _isUsingNativeDriver() {\n return config.useNativeDriver || false;\n }\n };\n};\nvar decay = function decay(value, config) {\n var _start3 = function start(animatedValue, configuration, callback) {\n callback = _combineCallbacks(callback, configuration);\n var singleValue = animatedValue;\n var singleConfig = configuration;\n singleValue.stopTracking();\n singleValue.animate(new DecayAnimation(singleConfig), callback);\n };\n return maybeVectorAnim(value, config, decay) || {\n start: function start(callback) {\n _start3(value, config, callback);\n },\n stop: function stop() {\n value.stopAnimation();\n },\n reset: function reset() {\n value.resetAnimation();\n },\n _startNativeLoop: function _startNativeLoop(iterations) {\n var singleConfig = _objectSpread(_objectSpread({}, config), {}, {\n iterations\n });\n _start3(value, singleConfig);\n },\n _isUsingNativeDriver: function _isUsingNativeDriver() {\n return config.useNativeDriver || false;\n }\n };\n};\nvar sequence = function sequence(animations) {\n var current = 0;\n return {\n start: function start(callback) {\n var onComplete = function onComplete(result) {\n if (!result.finished) {\n callback && callback(result);\n return;\n }\n current++;\n if (current === animations.length) {\n callback && callback(result);\n return;\n }\n animations[current].start(onComplete);\n };\n if (animations.length === 0) {\n callback && callback({\n finished: true\n });\n } else {\n animations[current].start(onComplete);\n }\n },\n stop: function stop() {\n if (current < animations.length) {\n animations[current].stop();\n }\n },\n reset: function reset() {\n animations.forEach((animation, idx) => {\n if (idx <= current) {\n animation.reset();\n }\n });\n current = 0;\n },\n _startNativeLoop: function _startNativeLoop() {\n throw new Error('Loops run using the native driver cannot contain Animated.sequence animations');\n },\n _isUsingNativeDriver: function _isUsingNativeDriver() {\n return false;\n }\n };\n};\nvar parallel = function parallel(animations, config) {\n var doneCount = 0;\n // Make sure we only call stop() at most once for each animation\n var hasEnded = {};\n var stopTogether = !(config && config.stopTogether === false);\n var result = {\n start: function start(callback) {\n if (doneCount === animations.length) {\n callback && callback({\n finished: true\n });\n return;\n }\n animations.forEach((animation, idx) => {\n var cb = function cb(endResult) {\n hasEnded[idx] = true;\n doneCount++;\n if (doneCount === animations.length) {\n doneCount = 0;\n callback && callback(endResult);\n return;\n }\n if (!endResult.finished && stopTogether) {\n result.stop();\n }\n };\n if (!animation) {\n cb({\n finished: true\n });\n } else {\n animation.start(cb);\n }\n });\n },\n stop: function stop() {\n animations.forEach((animation, idx) => {\n !hasEnded[idx] && animation.stop();\n hasEnded[idx] = true;\n });\n },\n reset: function reset() {\n animations.forEach((animation, idx) => {\n animation.reset();\n hasEnded[idx] = false;\n doneCount = 0;\n });\n },\n _startNativeLoop: function _startNativeLoop() {\n throw new Error('Loops run using the native driver cannot contain Animated.parallel animations');\n },\n _isUsingNativeDriver: function _isUsingNativeDriver() {\n return false;\n }\n };\n return result;\n};\nvar delay = function delay(time) {\n // Would be nice to make a specialized implementation\n return timing(new AnimatedValue(0), {\n toValue: 0,\n delay: time,\n duration: 0,\n useNativeDriver: false\n });\n};\nvar stagger = function stagger(time, animations) {\n return parallel(animations.map((animation, i) => {\n return sequence([delay(time * i), animation]);\n }));\n};\nvar loop = function loop(animation, // $FlowFixMe[prop-missing]\n_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$iterations = _ref.iterations,\n iterations = _ref$iterations === void 0 ? -1 : _ref$iterations,\n _ref$resetBeforeItera = _ref.resetBeforeIteration,\n resetBeforeIteration = _ref$resetBeforeItera === void 0 ? true : _ref$resetBeforeItera;\n var isFinished = false;\n var iterationsSoFar = 0;\n return {\n start: function start(callback) {\n var restart = function restart(result) {\n if (result === void 0) {\n result = {\n finished: true\n };\n }\n if (isFinished || iterationsSoFar === iterations || result.finished === false) {\n callback && callback(result);\n } else {\n iterationsSoFar++;\n resetBeforeIteration && animation.reset();\n animation.start(restart);\n }\n };\n if (!animation || iterations === 0) {\n callback && callback({\n finished: true\n });\n } else {\n if (animation._isUsingNativeDriver()) {\n animation._startNativeLoop(iterations);\n } else {\n restart(); // Start looping recursively on the js thread\n }\n }\n },\n\n stop: function stop() {\n isFinished = true;\n animation.stop();\n },\n reset: function reset() {\n iterationsSoFar = 0;\n isFinished = false;\n animation.reset();\n },\n _startNativeLoop: function _startNativeLoop() {\n throw new Error('Loops run using the native driver cannot contain Animated.loop animations');\n },\n _isUsingNativeDriver: function _isUsingNativeDriver() {\n return animation._isUsingNativeDriver();\n }\n };\n};\nfunction forkEvent(event, listener) {\n if (!event) {\n return listener;\n } else if (event instanceof AnimatedEvent) {\n event.__addListener(listener);\n return event;\n } else {\n return function () {\n typeof event === 'function' && event(...arguments);\n listener(...arguments);\n };\n }\n}\nfunction unforkEvent(event, listener) {\n if (event && event instanceof AnimatedEvent) {\n event.__removeListener(listener);\n }\n}\nvar event = function event(argMapping, config) {\n var animatedEvent = new AnimatedEvent(argMapping, config);\n if (animatedEvent.__isNative) {\n return animatedEvent;\n } else {\n return animatedEvent.__getHandler();\n }\n};\n\n// All types of animated nodes that represent scalar numbers and can be interpolated (etc)\n\n/**\n * The `Animated` library is designed to make animations fluid, powerful, and\n * easy to build and maintain. `Animated` focuses on declarative relationships\n * between inputs and outputs, with configurable transforms in between, and\n * simple `start`/`stop` methods to control time-based animation execution.\n * If additional transforms are added, be sure to include them in\n * AnimatedMock.js as well.\n *\n * See https://reactnative.dev/docs/animated\n */\nexport default {\n /**\n * Standard value class for driving animations. Typically initialized with\n * `new Animated.Value(0);`\n *\n * See https://reactnative.dev/docs/animated#value\n */\n Value: AnimatedValue,\n /**\n * 2D value class for driving 2D animations, such as pan gestures.\n *\n * See https://reactnative.dev/docs/animatedvaluexy\n */\n ValueXY: AnimatedValueXY,\n /**\n * Value class for driving color animations.\n */\n Color: AnimatedColor,\n /**\n * Exported to use the Interpolation type in flow.\n *\n * See https://reactnative.dev/docs/animated#interpolation\n */\n Interpolation: AnimatedInterpolation,\n /**\n * Exported for ease of type checking. All animated values derive from this\n * class.\n *\n * See https://reactnative.dev/docs/animated#node\n */\n Node: AnimatedNode,\n /**\n * Animates a value from an initial velocity to zero based on a decay\n * coefficient.\n *\n * See https://reactnative.dev/docs/animated#decay\n */\n decay,\n /**\n * Animates a value along a timed easing curve. The Easing module has tons of\n * predefined curves, or you can use your own function.\n *\n * See https://reactnative.dev/docs/animated#timing\n */\n timing,\n /**\n * Animates a value according to an analytical spring model based on\n * damped harmonic oscillation.\n *\n * See https://reactnative.dev/docs/animated#spring\n */\n spring,\n /**\n * Creates a new Animated value composed from two Animated values added\n * together.\n *\n * See https://reactnative.dev/docs/animated#add\n */\n add,\n /**\n * Creates a new Animated value composed by subtracting the second Animated\n * value from the first Animated value.\n *\n * See https://reactnative.dev/docs/animated#subtract\n */\n subtract,\n /**\n * Creates a new Animated value composed by dividing the first Animated value\n * by the second Animated value.\n *\n * See https://reactnative.dev/docs/animated#divide\n */\n divide,\n /**\n * Creates a new Animated value composed from two Animated values multiplied\n * together.\n *\n * See https://reactnative.dev/docs/animated#multiply\n */\n multiply,\n /**\n * Creates a new Animated value that is the (non-negative) modulo of the\n * provided Animated value.\n *\n * See https://reactnative.dev/docs/animated#modulo\n */\n modulo,\n /**\n * Create a new Animated value that is limited between 2 values. It uses the\n * difference between the last value so even if the value is far from the\n * bounds it will start changing when the value starts getting closer again.\n *\n * See https://reactnative.dev/docs/animated#diffclamp\n */\n diffClamp,\n /**\n * Starts an animation after the given delay.\n *\n * See https://reactnative.dev/docs/animated#delay\n */\n delay,\n /**\n * Starts an array of animations in order, waiting for each to complete\n * before starting the next. If the current running animation is stopped, no\n * following animations will be started.\n *\n * See https://reactnative.dev/docs/animated#sequence\n */\n sequence,\n /**\n * Starts an array of animations all at the same time. By default, if one\n * of the animations is stopped, they will all be stopped. You can override\n * this with the `stopTogether` flag.\n *\n * See https://reactnative.dev/docs/animated#parallel\n */\n parallel,\n /**\n * Array of animations may run in parallel (overlap), but are started in\n * sequence with successive delays. Nice for doing trailing effects.\n *\n * See https://reactnative.dev/docs/animated#stagger\n */\n stagger,\n /**\n * Loops a given animation continuously, so that each time it reaches the\n * end, it resets and begins again from the start.\n *\n * See https://reactnative.dev/docs/animated#loop\n */\n loop,\n /**\n * Takes an array of mappings and extracts values from each arg accordingly,\n * then calls `setValue` on the mapped outputs.\n *\n * See https://reactnative.dev/docs/animated#event\n */\n event,\n /**\n * Make any React component Animatable. Used to create `Animated.View`, etc.\n *\n * See https://reactnative.dev/docs/animated#createanimatedcomponent\n */\n createAnimatedComponent,\n /**\n * Imperative API to attach an animated value to an event on a view. Prefer\n * using `Animated.event` with `useNativeDrive: true` if possible.\n *\n * See https://reactnative.dev/docs/animated#attachnativeevent\n */\n attachNativeEvent,\n /**\n * Advanced imperative API for snooping on animated events that are passed in\n * through props. Use values directly where possible.\n *\n * See https://reactnative.dev/docs/animated#forkevent\n */\n forkEvent,\n unforkEvent,\n /**\n * Expose Event class, so it can be used as a type for type checkers.\n */\n Event: AnimatedEvent\n};","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport { AnimatedEvent, attachNativeEvent } from './AnimatedEvent';\nimport AnimatedImplementation from './AnimatedImplementation';\nimport AnimatedInterpolation from './nodes/AnimatedInterpolation';\nimport AnimatedNode from './nodes/AnimatedNode';\nimport AnimatedValue from './nodes/AnimatedValue';\nimport AnimatedValueXY from './nodes/AnimatedValueXY';\nimport createAnimatedComponent from './createAnimatedComponent';\nimport AnimatedColor from './nodes/AnimatedColor';\n\n/**\n * Animations are a source of flakiness in snapshot testing. This mock replaces\n * animation functions from AnimatedImplementation with empty animations for\n * predictability in tests. When possible the animation will run immediately\n * to the final state.\n */\n\n// Prevent any callback invocation from recursively triggering another\n// callback, which may trigger another animation\nvar inAnimationCallback = false;\nfunction mockAnimationStart(start) {\n return callback => {\n var guardedCallback = callback == null ? callback : function () {\n if (inAnimationCallback) {\n console.warn('Ignoring recursive animation callback when running mock animations');\n return;\n }\n inAnimationCallback = true;\n try {\n callback(...arguments);\n } finally {\n inAnimationCallback = false;\n }\n };\n start(guardedCallback);\n };\n}\nvar emptyAnimation = {\n start: () => {},\n stop: () => {},\n reset: () => {},\n _startNativeLoop: () => {},\n _isUsingNativeDriver: () => {\n return false;\n }\n};\nvar mockCompositeAnimation = animations => _objectSpread(_objectSpread({}, emptyAnimation), {}, {\n start: mockAnimationStart(callback => {\n animations.forEach(animation => animation.start());\n callback == null ? void 0 : callback({\n finished: true\n });\n })\n});\nvar spring = function spring(value, config) {\n var anyValue = value;\n return _objectSpread(_objectSpread({}, emptyAnimation), {}, {\n start: mockAnimationStart(callback => {\n anyValue.setValue(config.toValue);\n callback == null ? void 0 : callback({\n finished: true\n });\n })\n });\n};\nvar timing = function timing(value, config) {\n var anyValue = value;\n return _objectSpread(_objectSpread({}, emptyAnimation), {}, {\n start: mockAnimationStart(callback => {\n anyValue.setValue(config.toValue);\n callback == null ? void 0 : callback({\n finished: true\n });\n })\n });\n};\nvar decay = function decay(value, config) {\n return emptyAnimation;\n};\nvar sequence = function sequence(animations) {\n return mockCompositeAnimation(animations);\n};\nvar parallel = function parallel(animations, config) {\n return mockCompositeAnimation(animations);\n};\nvar delay = function delay(time) {\n return emptyAnimation;\n};\nvar stagger = function stagger(time, animations) {\n return mockCompositeAnimation(animations);\n};\nvar loop = function loop(animation, // $FlowFixMe[prop-missing]\n_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$iterations = _ref.iterations,\n iterations = _ref$iterations === void 0 ? -1 : _ref$iterations;\n return emptyAnimation;\n};\nexport default {\n Value: AnimatedValue,\n ValueXY: AnimatedValueXY,\n Color: AnimatedColor,\n Interpolation: AnimatedInterpolation,\n Node: AnimatedNode,\n decay,\n timing,\n spring,\n add: AnimatedImplementation.add,\n subtract: AnimatedImplementation.subtract,\n divide: AnimatedImplementation.divide,\n multiply: AnimatedImplementation.multiply,\n modulo: AnimatedImplementation.modulo,\n diffClamp: AnimatedImplementation.diffClamp,\n delay,\n sequence,\n parallel,\n stagger,\n loop,\n event: AnimatedImplementation.event,\n createAnimatedComponent,\n attachNativeEvent,\n forkEvent: AnimatedImplementation.forkEvent,\n unforkEvent: AnimatedImplementation.unforkEvent,\n Event: AnimatedEvent\n};","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport Platform from '../../../exports/Platform';\nimport FlatList from './components/AnimatedFlatList';\nimport Image from './components/AnimatedImage';\nimport ScrollView from './components/AnimatedScrollView';\nimport SectionList from './components/AnimatedSectionList';\nimport Text from './components/AnimatedText';\nimport View from './components/AnimatedView';\nimport AnimatedMock from './AnimatedMock';\nimport AnimatedImplementation from './AnimatedImplementation';\nvar Animated = Platform.isTesting ? AnimatedMock : AnimatedImplementation;\nexport default _objectSpread({\n FlatList,\n Image,\n ScrollView,\n SectionList,\n Text,\n View\n}, Animated);","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport Animated from '../../vendor/react-native/Animated/Animated';\nexport default Animated;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nvar RootTagContext = /*#__PURE__*/React.createContext(null);\nvar AppContainer = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var children = props.children,\n WrapperComponent = props.WrapperComponent;\n var innerView = /*#__PURE__*/React.createElement(View, {\n children: children,\n key: 1,\n style: styles.appContainer\n });\n if (WrapperComponent) {\n innerView = /*#__PURE__*/React.createElement(WrapperComponent, null, innerView);\n }\n return /*#__PURE__*/React.createElement(RootTagContext.Provider, {\n value: props.rootTag\n }, /*#__PURE__*/React.createElement(View, {\n ref: forwardedRef,\n style: styles.appContainer\n }, innerView));\n});\nAppContainer.displayName = 'AppContainer';\nexport default AppContainer;\nvar styles = StyleSheet.create({\n appContainer: {\n flex: 1,\n pointerEvents: 'box-none'\n }\n});","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nimport unmountComponentAtNode from '../unmountComponentAtNode';\nimport renderApplication, { getApplication as _getApplication } from './renderApplication';\nvar emptyObject = {};\nvar runnables = {};\nvar componentProviderInstrumentationHook = component => component();\nvar wrapperComponentProvider;\n\n/**\n * `AppRegistry` is the JS entry point to running all React Native apps.\n */\nexport default class AppRegistry {\n static getAppKeys() {\n return Object.keys(runnables);\n }\n static getApplication(appKey, appParameters) {\n invariant(runnables[appKey] && runnables[appKey].getApplication, \"Application \" + appKey + \" has not been registered. \" + 'This is either due to an import error during initialization or failure to call AppRegistry.registerComponent.');\n return runnables[appKey].getApplication(appParameters);\n }\n static registerComponent(appKey, componentProvider) {\n runnables[appKey] = {\n getApplication: appParameters => _getApplication(componentProviderInstrumentationHook(componentProvider), appParameters ? appParameters.initialProps : emptyObject, wrapperComponentProvider && wrapperComponentProvider(appParameters)),\n run: appParameters => renderApplication(componentProviderInstrumentationHook(componentProvider), wrapperComponentProvider && wrapperComponentProvider(appParameters), appParameters.callback, {\n hydrate: appParameters.hydrate || false,\n initialProps: appParameters.initialProps || emptyObject,\n mode: appParameters.mode || 'concurrent',\n rootTag: appParameters.rootTag\n })\n };\n return appKey;\n }\n static registerConfig(config) {\n config.forEach(_ref => {\n var appKey = _ref.appKey,\n component = _ref.component,\n run = _ref.run;\n if (run) {\n AppRegistry.registerRunnable(appKey, run);\n } else {\n invariant(component, 'No component provider passed in');\n AppRegistry.registerComponent(appKey, component);\n }\n });\n }\n\n // TODO: fix style sheet creation when using this method\n static registerRunnable(appKey, run) {\n runnables[appKey] = {\n run\n };\n return appKey;\n }\n static runApplication(appKey, appParameters) {\n var isDevelopment = process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test';\n if (isDevelopment) {\n var params = _objectSpread({}, appParameters);\n params.rootTag = \"#\" + params.rootTag.id;\n console.log(\"Running application \\\"\" + appKey + \"\\\" with appParams:\\n\", params, \"\\nDevelopment-level warnings: \" + (isDevelopment ? 'ON' : 'OFF') + \".\" + (\"\\nPerformance optimizations: \" + (isDevelopment ? 'OFF' : 'ON') + \".\"));\n }\n invariant(runnables[appKey] && runnables[appKey].run, \"Application \\\"\" + appKey + \"\\\" has not been registered. \" + 'This is either due to an import error during initialization or failure to call AppRegistry.registerComponent.');\n return runnables[appKey].run(appParameters);\n }\n static setComponentProviderInstrumentationHook(hook) {\n componentProviderInstrumentationHook = hook;\n }\n static setWrapperComponentProvider(provider) {\n wrapperComponentProvider = provider;\n }\n static unmountApplicationComponentAtRootTag(rootTag) {\n unmountComponentAtNode(rootTag);\n }\n}","import _extends from \"@babel/runtime/helpers/extends\";\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport AppContainer from './AppContainer';\nimport invariant from 'fbjs/lib/invariant';\nimport renderLegacy, { hydrateLegacy, render, hydrate } from '../render';\nimport StyleSheet from '../StyleSheet';\nimport React from 'react';\nexport default function renderApplication(RootComponent, WrapperComponent, callback, options) {\n var shouldHydrate = options.hydrate,\n initialProps = options.initialProps,\n mode = options.mode,\n rootTag = options.rootTag;\n var renderFn = shouldHydrate ? mode === 'concurrent' ? hydrate : hydrateLegacy : mode === 'concurrent' ? render : renderLegacy;\n invariant(rootTag, 'Expect to have a valid rootTag, instead got ', rootTag);\n return renderFn( /*#__PURE__*/React.createElement(AppContainer, {\n WrapperComponent: WrapperComponent,\n ref: callback,\n rootTag: rootTag\n }, /*#__PURE__*/React.createElement(RootComponent, initialProps)), rootTag);\n}\nexport function getApplication(RootComponent, initialProps, WrapperComponent) {\n var element = /*#__PURE__*/React.createElement(AppContainer, {\n WrapperComponent: WrapperComponent,\n rootTag: {}\n }, /*#__PURE__*/React.createElement(RootComponent, initialProps));\n // Don't escape CSS text\n var getStyleElement = props => {\n var sheet = StyleSheet.getSheet();\n return /*#__PURE__*/React.createElement(\"style\", _extends({}, props, {\n dangerouslySetInnerHTML: {\n __html: sheet.textContent\n },\n id: sheet.id\n }));\n };\n return {\n element,\n getStyleElement\n };\n}","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nimport EventEmitter from '../../vendor/react-native/vendor/emitter/EventEmitter';\nimport canUseDOM from '../../modules/canUseDom';\n\n// Android 4.4 browser\nvar isPrefixed = canUseDOM && !document.hasOwnProperty('hidden') && document.hasOwnProperty('webkitHidden');\nvar EVENT_TYPES = ['change', 'memoryWarning'];\nvar VISIBILITY_CHANGE_EVENT = isPrefixed ? 'webkitvisibilitychange' : 'visibilitychange';\nvar VISIBILITY_STATE_PROPERTY = isPrefixed ? 'webkitVisibilityState' : 'visibilityState';\nvar AppStates = {\n BACKGROUND: 'background',\n ACTIVE: 'active'\n};\nvar changeEmitter = null;\nexport default class AppState {\n static get currentState() {\n if (!AppState.isAvailable) {\n return AppStates.ACTIVE;\n }\n switch (document[VISIBILITY_STATE_PROPERTY]) {\n case 'hidden':\n case 'prerender':\n case 'unloaded':\n return AppStates.BACKGROUND;\n default:\n return AppStates.ACTIVE;\n }\n }\n static addEventListener(type, handler) {\n if (AppState.isAvailable) {\n invariant(EVENT_TYPES.indexOf(type) !== -1, 'Trying to subscribe to unknown event: \"%s\"', type);\n if (type === 'change') {\n if (!changeEmitter) {\n changeEmitter = new EventEmitter();\n document.addEventListener(VISIBILITY_CHANGE_EVENT, () => {\n if (changeEmitter) {\n changeEmitter.emit('change', AppState.currentState);\n }\n }, false);\n }\n return changeEmitter.addListener(type, handler);\n }\n }\n }\n}\nAppState.isAvailable = canUseDOM && document[VISIBILITY_STATE_PROPERTY];","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\nimport canUseDOM from '../../modules/canUseDom';\nfunction getQuery() {\n return canUseDOM && window.matchMedia != null ? window.matchMedia('(prefers-color-scheme: dark)') : null;\n}\nvar query = getQuery();\nvar listenerMapping = new WeakMap();\nvar Appearance = {\n getColorScheme() {\n return query && query.matches ? 'dark' : 'light';\n },\n addChangeListener(listener) {\n var mappedListener = listenerMapping.get(listener);\n if (!mappedListener) {\n mappedListener = _ref => {\n var matches = _ref.matches;\n listener({\n colorScheme: matches ? 'dark' : 'light'\n });\n };\n listenerMapping.set(listener, mappedListener);\n }\n if (query) {\n query.addListener(mappedListener);\n }\n function remove() {\n var mappedListener = listenerMapping.get(listener);\n if (query && mappedListener) {\n query.removeListener(mappedListener);\n }\n listenerMapping.delete(listener);\n }\n return {\n remove\n };\n }\n};\nexport default Appearance;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nfunction emptyFunction() {}\nvar BackHandler = {\n exitApp: emptyFunction,\n addEventListener() {\n console.error('BackHandler is not supported on web and should not be used.');\n return {\n remove: emptyFunction\n };\n },\n removeEventListener: emptyFunction\n};\nexport default BackHandler;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport TouchableOpacity from '../TouchableOpacity';\nimport Text from '../Text';\nimport { warnOnce } from '../../modules/warnOnce';\nvar Button = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n warnOnce('Button', 'Button is deprecated. Please use Pressable.');\n var accessibilityLabel = props.accessibilityLabel,\n color = props.color,\n disabled = props.disabled,\n onPress = props.onPress,\n testID = props.testID,\n title = props.title;\n return /*#__PURE__*/React.createElement(TouchableOpacity, {\n accessibilityLabel: accessibilityLabel,\n accessibilityRole: \"button\",\n disabled: disabled,\n focusable: !disabled,\n onPress: onPress,\n ref: forwardedRef,\n style: [styles.button, color && {\n backgroundColor: color\n }, disabled && styles.buttonDisabled],\n testID: testID\n }, /*#__PURE__*/React.createElement(Text, {\n style: [styles.text, disabled && styles.textDisabled]\n }, title));\n});\nButton.displayName = 'Button';\nvar styles = StyleSheet.create({\n button: {\n backgroundColor: '#2196F3',\n borderRadius: 2\n },\n text: {\n color: '#fff',\n fontWeight: '500',\n padding: 8,\n textAlign: 'center',\n textTransform: 'uppercase'\n },\n buttonDisabled: {\n backgroundColor: '#dfdfdf'\n },\n textDisabled: {\n color: '#a1a1a1'\n }\n});\nexport default Button;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"aria-readonly\", \"color\", \"disabled\", \"onChange\", \"onValueChange\", \"readOnly\", \"style\", \"value\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport createElement from '../createElement';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nvar CheckBox = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var ariaReadOnly = props['aria-readonly'],\n color = props.color,\n disabled = props.disabled,\n onChange = props.onChange,\n onValueChange = props.onValueChange,\n readOnly = props.readOnly,\n style = props.style,\n value = props.value,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n function handleChange(event) {\n var value = event.nativeEvent.target.checked;\n event.nativeEvent.value = value;\n onChange && onChange(event);\n onValueChange && onValueChange(value);\n }\n var fakeControl = /*#__PURE__*/React.createElement(View, {\n style: [styles.fakeControl, value && styles.fakeControlChecked,\n // custom color\n value && color && {\n backgroundColor: color,\n borderColor: color\n }, disabled && styles.fakeControlDisabled, value && disabled && styles.fakeControlCheckedAndDisabled]\n });\n var nativeControl = createElement('input', {\n checked: value,\n disabled: disabled,\n onChange: handleChange,\n readOnly: readOnly === true || ariaReadOnly === true || other.accessibilityReadOnly === true,\n ref: forwardedRef,\n style: [styles.nativeControl, styles.cursorInherit],\n type: 'checkbox'\n });\n return /*#__PURE__*/React.createElement(View, _extends({}, other, {\n \"aria-disabled\": disabled,\n \"aria-readonly\": ariaReadOnly,\n style: [styles.root, style, disabled && styles.cursorDefault]\n }), fakeControl, nativeControl);\n});\nCheckBox.displayName = 'CheckBox';\nvar styles = StyleSheet.create({\n root: {\n cursor: 'pointer',\n height: 16,\n userSelect: 'none',\n width: 16\n },\n cursorDefault: {\n cursor: 'default'\n },\n cursorInherit: {\n cursor: 'inherit'\n },\n fakeControl: {\n alignItems: 'center',\n backgroundColor: '#fff',\n borderColor: '#657786',\n borderRadius: 2,\n borderStyle: 'solid',\n borderWidth: 2,\n height: '100%',\n justifyContent: 'center',\n width: '100%'\n },\n fakeControlChecked: {\n backgroundColor: '#009688',\n backgroundImage: 'url(\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K\")',\n backgroundRepeat: 'no-repeat',\n borderColor: '#009688'\n },\n fakeControlDisabled: {\n borderColor: '#CCD6DD'\n },\n fakeControlCheckedAndDisabled: {\n backgroundColor: '#AAB8C2',\n borderColor: '#AAB8C2'\n },\n nativeControl: _objectSpread(_objectSpread({}, StyleSheet.absoluteFillObject), {}, {\n height: '100%',\n margin: 0,\n appearance: 'none',\n padding: 0,\n width: '100%'\n })\n});\nexport default CheckBox;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar clipboardAvailable;\nexport default class Clipboard {\n static isAvailable() {\n if (clipboardAvailable === undefined) {\n clipboardAvailable = typeof document.queryCommandSupported === 'function' && document.queryCommandSupported('copy');\n }\n return clipboardAvailable;\n }\n static getString() {\n return Promise.resolve('');\n }\n static setString(text) {\n var success = false;\n var body = document.body;\n if (body) {\n // add the text to a hidden node\n var node = document.createElement('span');\n node.textContent = text;\n node.style.opacity = '0';\n node.style.position = 'absolute';\n node.style.whiteSpace = 'pre-wrap';\n node.style.userSelect = 'auto';\n body.appendChild(node);\n\n // select the text\n var selection = window.getSelection();\n selection.removeAllRanges();\n var range = document.createRange();\n range.selectNodeContents(node);\n selection.addRange(range);\n\n // attempt to copy\n try {\n document.execCommand('copy');\n success = true;\n } catch (e) {}\n\n // remove selection and node\n selection.removeAllRanges();\n body.removeChild(node);\n }\n return success;\n }\n}","import RCTDeviceEventEmitter from '../../vendor/react-native/EventEmitter/RCTDeviceEventEmitter';\nexport default RCTDeviceEventEmitter;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nimport canUseDOM from '../../modules/canUseDom';\nvar dimensions = {\n window: {\n fontScale: 1,\n height: 0,\n scale: 1,\n width: 0\n },\n screen: {\n fontScale: 1,\n height: 0,\n scale: 1,\n width: 0\n }\n};\nvar listeners = {};\nvar shouldInit = canUseDOM;\nfunction update() {\n if (!canUseDOM) {\n return;\n }\n var win = window;\n var height;\n var width;\n\n /**\n * iOS does not update viewport dimensions on keyboard open/close.\n * window.visualViewport(https://developer.mozilla.org/en-US/docs/Web/API/VisualViewport)\n * is used instead of document.documentElement.clientHeight (which remains as a fallback)\n */\n if (win.visualViewport) {\n var visualViewport = win.visualViewport;\n /**\n * We are multiplying by scale because height and width from visual viewport\n * also react to pinch zoom, and become smaller when zoomed. But it is not desired\n * behaviour, since originally documentElement client height and width were used,\n * and they do not react to pinch zoom.\n */\n height = Math.round(visualViewport.height * visualViewport.scale);\n width = Math.round(visualViewport.width * visualViewport.scale);\n } else {\n var docEl = win.document.documentElement;\n height = docEl.clientHeight;\n width = docEl.clientWidth;\n }\n dimensions.window = {\n fontScale: 1,\n height,\n scale: win.devicePixelRatio || 1,\n width\n };\n dimensions.screen = {\n fontScale: 1,\n height: win.screen.height,\n scale: win.devicePixelRatio || 1,\n width: win.screen.width\n };\n}\nfunction handleResize() {\n update();\n if (Array.isArray(listeners['change'])) {\n listeners['change'].forEach(handler => handler(dimensions));\n }\n}\nexport default class Dimensions {\n static get(dimension) {\n if (shouldInit) {\n shouldInit = false;\n update();\n }\n invariant(dimensions[dimension], \"No dimension set for key \" + dimension);\n return dimensions[dimension];\n }\n static set(initialDimensions) {\n if (initialDimensions) {\n if (canUseDOM) {\n invariant(false, 'Dimensions cannot be set in the browser');\n } else {\n if (initialDimensions.screen != null) {\n dimensions.screen = initialDimensions.screen;\n }\n if (initialDimensions.window != null) {\n dimensions.window = initialDimensions.window;\n }\n }\n }\n }\n static addEventListener(type, handler) {\n listeners[type] = listeners[type] || [];\n listeners[type].push(handler);\n return {\n remove: () => {\n this.removeEventListener(type, handler);\n }\n };\n }\n static removeEventListener(type, handler) {\n if (Array.isArray(listeners[type])) {\n listeners[type] = listeners[type].filter(_handler => _handler !== handler);\n }\n }\n}\nif (canUseDOM) {\n if (window.visualViewport) {\n window.visualViewport.addEventListener('resize', handleResize, false);\n } else {\n window.addEventListener('resize', handleResize, false);\n }\n}","/**\n * Portions Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n/**\n * BezierEasing - use bezier curve for transition easing function\n * https://github.com/gre/bezier-easing\n * @copyright 2014-2015 Gaëtan Renaudeau. MIT License.\n */\n\n'use strict';\n\n// These values are established by empiricism with tests (tradeoff: performance VS precision)\nvar NEWTON_ITERATIONS = 4;\nvar NEWTON_MIN_SLOPE = 0.001;\nvar SUBDIVISION_PRECISION = 0.0000001;\nvar SUBDIVISION_MAX_ITERATIONS = 10;\nvar kSplineTableSize = 11;\nvar kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\nvar float32ArraySupported = typeof Float32Array === 'function';\nfunction A(aA1, aA2) {\n return 1.0 - 3.0 * aA2 + 3.0 * aA1;\n}\nfunction B(aA1, aA2) {\n return 3.0 * aA2 - 6.0 * aA1;\n}\nfunction C(aA1) {\n return 3.0 * aA1;\n}\n\n// Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\nfunction calcBezier(aT, aA1, aA2) {\n return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT;\n}\n\n// Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.\nfunction getSlope(aT, aA1, aA2) {\n return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1);\n}\nfunction binarySubdivide(aX, _aA, _aB, mX1, mX2) {\n var currentX,\n currentT,\n i = 0,\n aA = _aA,\n aB = _aB;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) {\n aB = currentT;\n } else {\n aA = currentT;\n }\n } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\n return currentT;\n}\nfunction newtonRaphsonIterate(aX, _aGuessT, mX1, mX2) {\n var aGuessT = _aGuessT;\n for (var i = 0; i < NEWTON_ITERATIONS; ++i) {\n var currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) {\n return aGuessT;\n }\n var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n}\nexport default function bezier(mX1, mY1, mX2, mY2) {\n if (!(mX1 >= 0 && mX1 <= 1 && mX2 >= 0 && mX2 <= 1)) {\n throw new Error('bezier x values must be in [0, 1] range');\n }\n\n // Precompute samples table\n var sampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\n if (mX1 !== mY1 || mX2 !== mY2) {\n for (var i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n }\n function getTForX(aX) {\n var intervalStart = 0.0;\n var currentSample = 1;\n var lastSample = kSplineTableSize - 1;\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n --currentSample;\n\n // Interpolate to provide an initial guess for t\n var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n var guessForT = intervalStart + dist * kSampleStepSize;\n var initialSlope = getSlope(guessForT, mX1, mX2);\n if (initialSlope >= NEWTON_MIN_SLOPE) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n } else if (initialSlope === 0.0) {\n return guessForT;\n } else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n }\n return function BezierEasing(x) {\n if (mX1 === mY1 && mX2 === mY2) {\n return x; // linear\n }\n // Because JavaScript number are imprecise, we should guarantee the extremes are right.\n if (x === 0) {\n return 0;\n }\n if (x === 1) {\n return 1;\n }\n return calcBezier(getTForX(x), mY1, mY2);\n };\n}\n;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\nimport _bezier from './bezier';\nvar ease;\n\n/**\n * The `Easing` module implements common easing functions. This module is used\n * by [Animate.timing()](docs/animate.html#timing) to convey physically\n * believable motion in animations.\n *\n * You can find a visualization of some common easing functions at\n * http://easings.net/\n *\n * ### Predefined animations\n *\n * The `Easing` module provides several predefined animations through the\n * following methods:\n *\n * - [`back`](docs/easing.html#back) provides a simple animation where the\n * object goes slightly back before moving forward\n * - [`bounce`](docs/easing.html#bounce) provides a bouncing animation\n * - [`ease`](docs/easing.html#ease) provides a simple inertial animation\n * - [`elastic`](docs/easing.html#elastic) provides a simple spring interaction\n *\n * ### Standard functions\n *\n * Three standard easing functions are provided:\n *\n * - [`linear`](docs/easing.html#linear)\n * - [`quad`](docs/easing.html#quad)\n * - [`cubic`](docs/easing.html#cubic)\n *\n * The [`poly`](docs/easing.html#poly) function can be used to implement\n * quartic, quintic, and other higher power functions.\n *\n * ### Additional functions\n *\n * Additional mathematical functions are provided by the following methods:\n *\n * - [`bezier`](docs/easing.html#bezier) provides a cubic bezier curve\n * - [`circle`](docs/easing.html#circle) provides a circular function\n * - [`sin`](docs/easing.html#sin) provides a sinusoidal function\n * - [`exp`](docs/easing.html#exp) provides an exponential function\n *\n * The following helpers are used to modify other easing functions.\n *\n * - [`in`](docs/easing.html#in) runs an easing function forwards\n * - [`inOut`](docs/easing.html#inout) makes any easing function symmetrical\n * - [`out`](docs/easing.html#out) runs an easing function backwards\n */\nclass Easing {\n /**\n * A stepping function, returns 1 for any positive value of `n`.\n */\n static step0(n) {\n return n > 0 ? 1 : 0;\n }\n\n /**\n * A stepping function, returns 1 if `n` is greater than or equal to 1.\n */\n static step1(n) {\n return n >= 1 ? 1 : 0;\n }\n\n /**\n * A linear function, `f(t) = t`. Position correlates to elapsed time one to\n * one.\n *\n * http://cubic-bezier.com/#0,0,1,1\n */\n static linear(t) {\n return t;\n }\n\n /**\n * A simple inertial interaction, similar to an object slowly accelerating to\n * speed.\n *\n * http://cubic-bezier.com/#.42,0,1,1\n */\n static ease(t) {\n if (!ease) {\n ease = Easing.bezier(0.42, 0, 1, 1);\n }\n return ease(t);\n }\n\n /**\n * A quadratic function, `f(t) = t * t`. Position equals the square of elapsed\n * time.\n *\n * http://easings.net/#easeInQuad\n */\n static quad(t) {\n return t * t;\n }\n\n /**\n * A cubic function, `f(t) = t * t * t`. Position equals the cube of elapsed\n * time.\n *\n * http://easings.net/#easeInCubic\n */\n static cubic(t) {\n return t * t * t;\n }\n\n /**\n * A power function. Position is equal to the Nth power of elapsed time.\n *\n * n = 4: http://easings.net/#easeInQuart\n * n = 5: http://easings.net/#easeInQuint\n */\n static poly(n) {\n return t => Math.pow(t, n);\n }\n\n /**\n * A sinusoidal function.\n *\n * http://easings.net/#easeInSine\n */\n static sin(t) {\n return 1 - Math.cos(t * Math.PI / 2);\n }\n\n /**\n * A circular function.\n *\n * http://easings.net/#easeInCirc\n */\n static circle(t) {\n return 1 - Math.sqrt(1 - t * t);\n }\n\n /**\n * An exponential function.\n *\n * http://easings.net/#easeInExpo\n */\n static exp(t) {\n return Math.pow(2, 10 * (t - 1));\n }\n\n /**\n * A simple elastic interaction, similar to a spring oscillating back and\n * forth.\n *\n * Default bounciness is 1, which overshoots a little bit once. 0 bounciness\n * doesn't overshoot at all, and bounciness of N > 1 will overshoot about N\n * times.\n *\n * http://easings.net/#easeInElastic\n */\n static elastic(bounciness) {\n if (bounciness === void 0) {\n bounciness = 1;\n }\n var p = bounciness * Math.PI;\n return t => 1 - Math.pow(Math.cos(t * Math.PI / 2), 3) * Math.cos(t * p);\n }\n\n /**\n * Use with `Animated.parallel()` to create a simple effect where the object\n * animates back slightly as the animation starts.\n *\n * Wolfram Plot:\n *\n * - http://tiny.cc/back_default (s = 1.70158, default)\n */\n static back(s) {\n if (s === void 0) {\n s = 1.70158;\n }\n return t => t * t * ((s + 1) * t - s);\n }\n\n /**\n * Provides a simple bouncing effect.\n *\n * http://easings.net/#easeInBounce\n */\n static bounce(t) {\n if (t < 1 / 2.75) {\n return 7.5625 * t * t;\n }\n if (t < 2 / 2.75) {\n var _t = t - 1.5 / 2.75;\n return 7.5625 * _t * _t + 0.75;\n }\n if (t < 2.5 / 2.75) {\n var _t2 = t - 2.25 / 2.75;\n return 7.5625 * _t2 * _t2 + 0.9375;\n }\n var t2 = t - 2.625 / 2.75;\n return 7.5625 * t2 * t2 + 0.984375;\n }\n\n /**\n * Provides a cubic bezier curve, equivalent to CSS Transitions'\n * `transition-timing-function`.\n *\n * A useful tool to visualize cubic bezier curves can be found at\n * http://cubic-bezier.com/\n */\n static bezier(x1, y1, x2, y2) {\n return _bezier(x1, y1, x2, y2);\n }\n\n /**\n * Runs an easing function forwards.\n */\n static in(easing) {\n return easing;\n }\n\n /**\n * Runs an easing function backwards.\n */\n static out(easing) {\n return t => 1 - easing(1 - t);\n }\n\n /**\n * Makes any easing function symmetrical. The easing function will run\n * forwards for half of the duration, then backwards for the rest of the\n * duration.\n */\n static inOut(easing) {\n return t => {\n if (t < 0.5) {\n return easing(t * 2) / 2;\n }\n return 1 - easing((1 - t) * 2) / 2;\n };\n }\n}\nexport default Easing;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport Easing from '../../vendor/react-native/Animated/Easing';\nexport default Easing;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\n/*\n * @returns {bool} true if different, false if equal\n */\nvar deepDiffer = function deepDiffer(one, two, maxDepth) {\n if (maxDepth === void 0) {\n maxDepth = -1;\n }\n if (maxDepth === 0) {\n return true;\n }\n if (one === two) {\n // Short circuit on identical object references instead of traversing them.\n return false;\n }\n if (typeof one === 'function' && typeof two === 'function') {\n // We consider all functions equal\n return false;\n }\n if (typeof one !== 'object' || one === null) {\n // Primitives can be directly compared\n return one !== two;\n }\n if (typeof two !== 'object' || two === null) {\n // We know they are different because the previous case would have triggered\n // otherwise.\n return true;\n }\n if (one.constructor !== two.constructor) {\n return true;\n }\n if (Array.isArray(one)) {\n // We know two is also an array because the constructors are equal\n var len = one.length;\n if (two.length !== len) {\n return true;\n }\n for (var ii = 0; ii < len; ii++) {\n if (deepDiffer(one[ii], two[ii], maxDepth - 1)) {\n return true;\n }\n }\n } else {\n for (var key in one) {\n if (deepDiffer(one[key], two[key], maxDepth - 1)) {\n return true;\n }\n }\n for (var twoKey in two) {\n // The only case we haven't checked yet is keys that are in two but aren't\n // in one, which means they are different.\n if (one[twoKey] === undefined && two[twoKey] !== undefined) {\n return true;\n }\n }\n }\n return false;\n};\nexport default deepDiffer;","var safeIsNaN = Number.isNaN ||\n function ponyfill(value) {\n return typeof value === 'number' && value !== value;\n };\nfunction isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (safeIsNaN(first) && safeIsNaN(second)) {\n return true;\n }\n return false;\n}\nfunction areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n for (var i = 0; i < newInputs.length; i++) {\n if (!isEqual(newInputs[i], lastInputs[i])) {\n return false;\n }\n }\n return true;\n}\n\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) { isEqual = areInputsEqual; }\n var cache = null;\n function memoized() {\n var newArgs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n if (cache && cache.lastThis === this && isEqual(newArgs, cache.lastArgs)) {\n return cache.lastResult;\n }\n var lastResult = resultFn.apply(this, newArgs);\n cache = {\n lastResult: lastResult,\n lastArgs: newArgs,\n lastThis: this,\n };\n return lastResult;\n }\n memoized.clear = function clear() {\n cache = null;\n };\n return memoized;\n}\n\nexport { memoizeOne as default };\n","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nvar _excluded = [\"numColumns\", \"columnWrapperStyle\", \"removeClippedSubviews\", \"strictMode\"];\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport View from '../../../exports/View';\nimport StyleSheet from '../../../exports/StyleSheet';\nimport deepDiffer from '../deepDiffer';\nimport Platform from '../../../exports/Platform';\nimport invariant from 'fbjs/lib/invariant';\nimport * as React from 'react';\nimport VirtualizedList from '../VirtualizedList';\nimport { keyExtractor as defaultKeyExtractor } from '../VirtualizeUtils';\nimport memoizeOne from 'memoize-one';\n/**\n * Default Props Helper Functions\n * Use the following helper functions for default values\n */\n\n// removeClippedSubviewsOrDefault(this.props.removeClippedSubviews)\nfunction removeClippedSubviewsOrDefault(removeClippedSubviews) {\n return removeClippedSubviews !== null && removeClippedSubviews !== void 0 ? removeClippedSubviews : Platform.OS === 'android';\n}\n\n// numColumnsOrDefault(this.props.numColumns)\nfunction numColumnsOrDefault(numColumns) {\n return numColumns !== null && numColumns !== void 0 ? numColumns : 1;\n}\nfunction isArrayLike(data) {\n // $FlowExpectedError[incompatible-use]\n return typeof Object(data).length === 'number';\n}\n/**\n * A performant interface for rendering simple, flat lists, supporting the most handy features:\n *\n * - Fully cross-platform.\n * - Optional horizontal mode.\n * - Configurable viewability callbacks.\n * - Header support.\n * - Footer support.\n * - Separator support.\n * - Pull to Refresh.\n * - Scroll loading.\n * - ScrollToIndex support.\n *\n * If you need section support, use [``](docs/sectionlist.html).\n *\n * Minimal Example:\n *\n * {item.key}}\n * />\n *\n * More complex, multi-select example demonstrating `PureComponent` usage for perf optimization and avoiding bugs.\n *\n * - By binding the `onPressItem` handler, the props will remain `===` and `PureComponent` will\n * prevent wasteful re-renders unless the actual `id`, `selected`, or `title` props change, even\n * if the components rendered in `MyListItem` did not have such optimizations.\n * - By passing `extraData={this.state}` to `FlatList` we make sure `FlatList` itself will re-render\n * when the `state.selected` changes. Without setting this prop, `FlatList` would not know it\n * needs to re-render any items because it is also a `PureComponent` and the prop comparison will\n * not show any changes.\n * - `keyExtractor` tells the list to use the `id`s for the react keys instead of the default `key` property.\n *\n *\n * class MyListItem extends React.PureComponent {\n * _onPress = () => {\n * this.props.onPressItem(this.props.id);\n * };\n *\n * render() {\n * const textColor = this.props.selected ? \"red\" : \"black\";\n * return (\n * \n * \n * \n * {this.props.title}\n * \n * \n * \n * );\n * }\n * }\n *\n * class MultiSelectList extends React.PureComponent {\n * state = {selected: (new Map(): Map)};\n *\n * _keyExtractor = (item, index) => item.id;\n *\n * _onPressItem = (id: string) => {\n * // updater functions are preferred for transactional updates\n * this.setState((state) => {\n * // copy the map rather than modifying state.\n * const selected = new Map(state.selected);\n * selected.set(id, !selected.get(id)); // toggle\n * return {selected};\n * });\n * };\n *\n * _renderItem = ({item}) => (\n * \n * );\n *\n * render() {\n * return (\n * \n * );\n * }\n * }\n *\n * This is a convenience wrapper around [``](docs/virtualizedlist.html),\n * and thus inherits its props (as well as those of `ScrollView`) that aren't explicitly listed\n * here, along with the following caveats:\n *\n * - Internal state is not preserved when content scrolls out of the render window. Make sure all\n * your data is captured in the item data or external stores like Flux, Redux, or Relay.\n * - This is a `PureComponent` which means that it will not re-render if `props` remain shallow-\n * equal. Make sure that everything your `renderItem` function depends on is passed as a prop\n * (e.g. `extraData`) that is not `===` after updates, otherwise your UI may not update on\n * changes. This includes the `data` prop and parent component state.\n * - In order to constrain memory and enable smooth scrolling, content is rendered asynchronously\n * offscreen. This means it's possible to scroll faster than the fill rate ands momentarily see\n * blank content. This is a tradeoff that can be adjusted to suit the needs of each application,\n * and we are working on improving it behind the scenes.\n * - By default, the list looks for a `key` prop on each item and uses that for the React key.\n * Alternatively, you can provide a custom `keyExtractor` prop.\n *\n * Also inherits [ScrollView Props](docs/scrollview.html#props), unless it is nested in another FlatList of same orientation.\n */\nclass FlatList extends React.PureComponent {\n /**\n * Scrolls to the end of the content. May be janky without `getItemLayout` prop.\n */\n scrollToEnd(params) {\n if (this._listRef) {\n this._listRef.scrollToEnd(params);\n }\n }\n\n /**\n * Scrolls to the item at the specified index such that it is positioned in the viewable area\n * such that `viewPosition` 0 places it at the top, 1 at the bottom, and 0.5 centered in the\n * middle. `viewOffset` is a fixed number of pixels to offset the final target position.\n *\n * Note: cannot scroll to locations outside the render window without specifying the\n * `getItemLayout` prop.\n */\n scrollToIndex(params) {\n if (this._listRef) {\n this._listRef.scrollToIndex(params);\n }\n }\n\n /**\n * Requires linear scan through data - use `scrollToIndex` instead if possible.\n *\n * Note: cannot scroll to locations outside the render window without specifying the\n * `getItemLayout` prop.\n */\n scrollToItem(params) {\n if (this._listRef) {\n this._listRef.scrollToItem(params);\n }\n }\n\n /**\n * Scroll to a specific content pixel offset in the list.\n *\n * Check out [scrollToOffset](docs/virtualizedlist.html#scrolltooffset) of VirtualizedList\n */\n scrollToOffset(params) {\n if (this._listRef) {\n this._listRef.scrollToOffset(params);\n }\n }\n\n /**\n * Tells the list an interaction has occurred, which should trigger viewability calculations, e.g.\n * if `waitForInteractions` is true and the user has not scrolled. This is typically called by\n * taps on items or by navigation actions.\n */\n recordInteraction() {\n if (this._listRef) {\n this._listRef.recordInteraction();\n }\n }\n\n /**\n * Displays the scroll indicators momentarily.\n *\n * @platform ios\n */\n flashScrollIndicators() {\n if (this._listRef) {\n this._listRef.flashScrollIndicators();\n }\n }\n\n /**\n * Provides a handle to the underlying scroll responder.\n */\n getScrollResponder() {\n if (this._listRef) {\n return this._listRef.getScrollResponder();\n }\n }\n\n /**\n * Provides a reference to the underlying host component\n */\n getNativeScrollRef() {\n if (this._listRef) {\n /* $FlowFixMe[incompatible-return] Suppresses errors found when fixing\n * TextInput typing */\n return this._listRef.getScrollRef();\n }\n }\n getScrollableNode() {\n if (this._listRef) {\n return this._listRef.getScrollableNode();\n }\n }\n constructor(_props) {\n super(_props);\n this._virtualizedListPairs = [];\n this._captureRef = ref => {\n this._listRef = ref;\n };\n this._getItem = (data, index) => {\n var numColumns = numColumnsOrDefault(this.props.numColumns);\n if (numColumns > 1) {\n var ret = [];\n for (var kk = 0; kk < numColumns; kk++) {\n var itemIndex = index * numColumns + kk;\n if (itemIndex < data.length) {\n var _item = data[itemIndex];\n ret.push(_item);\n }\n }\n return ret;\n } else {\n return data[index];\n }\n };\n this._getItemCount = data => {\n // Legacy behavior of FlatList was to forward \"undefined\" length if invalid\n // data like a non-arraylike object is passed. VirtualizedList would then\n // coerce this, and the math would work out to no-op. For compatibility, if\n // invalid data is passed, we tell VirtualizedList there are zero items\n // available to prevent it from trying to read from the invalid data\n // (without propagating invalidly typed data).\n if (data != null && isArrayLike(data)) {\n var numColumns = numColumnsOrDefault(this.props.numColumns);\n return numColumns > 1 ? Math.ceil(data.length / numColumns) : data.length;\n } else {\n return 0;\n }\n };\n this._keyExtractor = (items, index) => {\n var _this$props$keyExtrac;\n var numColumns = numColumnsOrDefault(this.props.numColumns);\n var keyExtractor = (_this$props$keyExtrac = this.props.keyExtractor) !== null && _this$props$keyExtrac !== void 0 ? _this$props$keyExtrac : defaultKeyExtractor;\n if (numColumns > 1) {\n invariant(Array.isArray(items), 'FlatList: Encountered internal consistency error, expected each item to consist of an ' + 'array with 1-%s columns; instead, received a single item.', numColumns);\n return items.map((item, kk) => keyExtractor(item, index * numColumns + kk)).join(':');\n }\n\n // $FlowFixMe[incompatible-call] Can't call keyExtractor with an array\n return keyExtractor(items, index);\n };\n this._renderer = (ListItemComponent, renderItem, columnWrapperStyle, numColumns, extraData\n // $FlowFixMe[missing-local-annot]\n ) => {\n var cols = numColumnsOrDefault(numColumns);\n var render = props => {\n if (ListItemComponent) {\n // $FlowFixMe[not-a-component] Component isn't valid\n // $FlowFixMe[incompatible-type-arg] Component isn't valid\n // $FlowFixMe[incompatible-return] Component isn't valid\n return /*#__PURE__*/React.createElement(ListItemComponent, props);\n } else if (renderItem) {\n // $FlowFixMe[incompatible-call]\n return renderItem(props);\n } else {\n return null;\n }\n };\n var renderProp = info => {\n if (cols > 1) {\n var _item2 = info.item,\n _index = info.index;\n invariant(Array.isArray(_item2), 'Expected array of items with numColumns > 1');\n return /*#__PURE__*/React.createElement(View, {\n style: [styles.row, columnWrapperStyle]\n }, _item2.map((it, kk) => {\n var element = render({\n // $FlowFixMe[incompatible-call]\n item: it,\n index: _index * cols + kk,\n separators: info.separators\n });\n return element != null ? /*#__PURE__*/React.createElement(React.Fragment, {\n key: kk\n }, element) : null;\n }));\n } else {\n return render(info);\n }\n };\n return ListItemComponent ? {\n ListItemComponent: renderProp\n } : {\n renderItem: renderProp\n };\n };\n this._memoizedRenderer = memoizeOne(this._renderer);\n this._checkProps(this.props);\n if (this.props.viewabilityConfigCallbackPairs) {\n this._virtualizedListPairs = this.props.viewabilityConfigCallbackPairs.map(pair => ({\n viewabilityConfig: pair.viewabilityConfig,\n onViewableItemsChanged: this._createOnViewableItemsChanged(pair.onViewableItemsChanged)\n }));\n } else if (this.props.onViewableItemsChanged) {\n this._virtualizedListPairs.push({\n /* $FlowFixMe[incompatible-call] (>=0.63.0 site=react_native_fb) This\n * comment suppresses an error found when Flow v0.63 was deployed. To\n * see the error delete this comment and run Flow. */\n viewabilityConfig: this.props.viewabilityConfig,\n onViewableItemsChanged: this._createOnViewableItemsChanged(this.props.onViewableItemsChanged)\n });\n }\n }\n\n // $FlowFixMe[missing-local-annot]\n componentDidUpdate(prevProps) {\n invariant(prevProps.numColumns === this.props.numColumns, 'Changing numColumns on the fly is not supported. Change the key prop on FlatList when ' + 'changing the number of columns to force a fresh render of the component.');\n invariant(prevProps.onViewableItemsChanged === this.props.onViewableItemsChanged, 'Changing onViewableItemsChanged on the fly is not supported');\n invariant(!deepDiffer(prevProps.viewabilityConfig, this.props.viewabilityConfig), 'Changing viewabilityConfig on the fly is not supported');\n invariant(prevProps.viewabilityConfigCallbackPairs === this.props.viewabilityConfigCallbackPairs, 'Changing viewabilityConfigCallbackPairs on the fly is not supported');\n this._checkProps(this.props);\n }\n // $FlowFixMe[missing-local-annot]\n _checkProps(props) {\n var getItem = props.getItem,\n getItemCount = props.getItemCount,\n horizontal = props.horizontal,\n columnWrapperStyle = props.columnWrapperStyle,\n onViewableItemsChanged = props.onViewableItemsChanged,\n viewabilityConfigCallbackPairs = props.viewabilityConfigCallbackPairs;\n var numColumns = numColumnsOrDefault(this.props.numColumns);\n invariant(!getItem && !getItemCount, 'FlatList does not support custom data formats.');\n if (numColumns > 1) {\n invariant(!horizontal, 'numColumns does not support horizontal.');\n } else {\n invariant(!columnWrapperStyle, 'columnWrapperStyle not supported for single column lists');\n }\n invariant(!(onViewableItemsChanged && viewabilityConfigCallbackPairs), 'FlatList does not support setting both onViewableItemsChanged and ' + 'viewabilityConfigCallbackPairs.');\n }\n _pushMultiColumnViewable(arr, v) {\n var _this$props$keyExtrac2;\n var numColumns = numColumnsOrDefault(this.props.numColumns);\n var keyExtractor = (_this$props$keyExtrac2 = this.props.keyExtractor) !== null && _this$props$keyExtrac2 !== void 0 ? _this$props$keyExtrac2 : defaultKeyExtractor;\n v.item.forEach((item, ii) => {\n invariant(v.index != null, 'Missing index!');\n var index = v.index * numColumns + ii;\n arr.push(_objectSpread(_objectSpread({}, v), {}, {\n item,\n key: keyExtractor(item, index),\n index\n }));\n });\n }\n _createOnViewableItemsChanged(onViewableItemsChanged\n // $FlowFixMe[missing-local-annot]\n ) {\n return info => {\n var numColumns = numColumnsOrDefault(this.props.numColumns);\n if (onViewableItemsChanged) {\n if (numColumns > 1) {\n var changed = [];\n var viewableItems = [];\n info.viewableItems.forEach(v => this._pushMultiColumnViewable(viewableItems, v));\n info.changed.forEach(v => this._pushMultiColumnViewable(changed, v));\n onViewableItemsChanged({\n viewableItems,\n changed\n });\n } else {\n onViewableItemsChanged(info);\n }\n }\n };\n }\n render() {\n var _this$props = this.props,\n numColumns = _this$props.numColumns,\n columnWrapperStyle = _this$props.columnWrapperStyle,\n _removeClippedSubviews = _this$props.removeClippedSubviews,\n _this$props$strictMod = _this$props.strictMode,\n strictMode = _this$props$strictMod === void 0 ? false : _this$props$strictMod,\n restProps = _objectWithoutPropertiesLoose(_this$props, _excluded);\n var renderer = strictMode ? this._memoizedRenderer : this._renderer;\n return (\n /*#__PURE__*/\n // $FlowFixMe[incompatible-exact] - `restProps` (`Props`) is inexact.\n React.createElement(VirtualizedList, _extends({}, restProps, {\n getItem: this._getItem,\n getItemCount: this._getItemCount,\n keyExtractor: this._keyExtractor,\n ref: this._captureRef,\n viewabilityConfigCallbackPairs: this._virtualizedListPairs,\n removeClippedSubviews: removeClippedSubviewsOrDefault(_removeClippedSubviews)\n }, renderer(this.props.ListItemComponent, this.props.renderItem, columnWrapperStyle, numColumns, this.props.extraData)))\n );\n }\n}\nvar styles = StyleSheet.create({\n row: {\n flexDirection: 'row'\n }\n});\nexport default FlatList;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport FlatList from '../../vendor/react-native/FlatList';\nexport default FlatList;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar I18nManager = {\n allowRTL() {\n return;\n },\n forceRTL() {\n return;\n },\n getConstants() {\n return {\n isRTL: false\n };\n }\n};\nexport default I18nManager;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar assets = [];\nexport function registerAsset(asset) {\n // `push` returns new array length, so the first asset will\n // get id 1 (not 0) to make the value truthy\n return assets.push(asset);\n}\nexport function getAssetByID(assetId) {\n return assets[assetId - 1];\n}","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar dataUriPattern = /^data:/;\nexport class ImageUriCache {\n static has(uri) {\n var entries = ImageUriCache._entries;\n var isDataUri = dataUriPattern.test(uri);\n return isDataUri || Boolean(entries[uri]);\n }\n static add(uri) {\n var entries = ImageUriCache._entries;\n var lastUsedTimestamp = Date.now();\n if (entries[uri]) {\n entries[uri].lastUsedTimestamp = lastUsedTimestamp;\n entries[uri].refCount += 1;\n } else {\n entries[uri] = {\n lastUsedTimestamp,\n refCount: 1\n };\n }\n }\n static remove(uri) {\n var entries = ImageUriCache._entries;\n if (entries[uri]) {\n entries[uri].refCount -= 1;\n }\n // Free up entries when the cache is \"full\"\n ImageUriCache._cleanUpIfNeeded();\n }\n static _cleanUpIfNeeded() {\n var entries = ImageUriCache._entries;\n var imageUris = Object.keys(entries);\n if (imageUris.length + 1 > ImageUriCache._maximumEntries) {\n var leastRecentlyUsedKey;\n var leastRecentlyUsedEntry;\n imageUris.forEach(uri => {\n var entry = entries[uri];\n if ((!leastRecentlyUsedEntry || entry.lastUsedTimestamp < leastRecentlyUsedEntry.lastUsedTimestamp) && entry.refCount === 0) {\n leastRecentlyUsedKey = uri;\n leastRecentlyUsedEntry = entry;\n }\n });\n if (leastRecentlyUsedKey) {\n delete entries[leastRecentlyUsedKey];\n }\n }\n }\n}\nImageUriCache._maximumEntries = 256;\nImageUriCache._entries = {};\nvar id = 0;\nvar requests = {};\nvar ImageLoader = {\n abort(requestId) {\n var image = requests[\"\" + requestId];\n if (image) {\n image.onerror = null;\n image.onload = null;\n image = null;\n delete requests[\"\" + requestId];\n }\n },\n getSize(uri, success, failure) {\n var complete = false;\n var interval = setInterval(callback, 16);\n var requestId = ImageLoader.load(uri, callback, errorCallback);\n function callback() {\n var image = requests[\"\" + requestId];\n if (image) {\n var naturalHeight = image.naturalHeight,\n naturalWidth = image.naturalWidth;\n if (naturalHeight && naturalWidth) {\n success(naturalWidth, naturalHeight);\n complete = true;\n }\n }\n if (complete) {\n ImageLoader.abort(requestId);\n clearInterval(interval);\n }\n }\n function errorCallback() {\n if (typeof failure === 'function') {\n failure();\n }\n ImageLoader.abort(requestId);\n clearInterval(interval);\n }\n },\n has(uri) {\n return ImageUriCache.has(uri);\n },\n load(uri, onLoad, onError) {\n id += 1;\n var image = new window.Image();\n image.onerror = onError;\n image.onload = e => {\n // avoid blocking the main thread\n var onDecode = () => onLoad({\n nativeEvent: e\n });\n if (typeof image.decode === 'function') {\n // Safari currently throws exceptions when decoding svgs.\n // We want to catch that error and allow the load handler\n // to be forwarded to the onLoad handler in this case\n image.decode().then(onDecode, onDecode);\n } else {\n setTimeout(onDecode, 0);\n }\n };\n image.src = uri;\n requests[\"\" + id] = image;\n return id;\n },\n prefetch(uri) {\n return new Promise((resolve, reject) => {\n ImageLoader.load(uri, () => {\n // Add the uri to the cache so it can be immediately displayed when used\n // but also immediately remove it to correctly reflect that it has no active references\n ImageUriCache.add(uri);\n ImageUriCache.remove(uri);\n resolve();\n }, reject);\n });\n },\n queryCache(uris) {\n var result = {};\n uris.forEach(u => {\n if (ImageUriCache.has(u)) {\n result[u] = 'disk/memory';\n }\n });\n return Promise.resolve(result);\n }\n};\nexport default ImageLoader;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"aria-label\", \"blurRadius\", \"defaultSource\", \"draggable\", \"onError\", \"onLayout\", \"onLoad\", \"onLoadEnd\", \"onLoadStart\", \"pointerEvents\", \"source\", \"style\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport createElement from '../createElement';\nimport { getAssetByID } from '../../modules/AssetRegistry';\nimport { createBoxShadowValue } from '../StyleSheet/preprocess';\nimport ImageLoader from '../../modules/ImageLoader';\nimport PixelRatio from '../PixelRatio';\nimport StyleSheet from '../StyleSheet';\nimport TextAncestorContext from '../Text/TextAncestorContext';\nimport View from '../View';\nimport { warnOnce } from '../../modules/warnOnce';\nvar ERRORED = 'ERRORED';\nvar LOADED = 'LOADED';\nvar LOADING = 'LOADING';\nvar IDLE = 'IDLE';\nvar _filterId = 0;\nvar svgDataUriPattern = /^(data:image\\/svg\\+xml;utf8,)(.*)/;\nfunction createTintColorSVG(tintColor, id) {\n return tintColor && id != null ? /*#__PURE__*/React.createElement(\"svg\", {\n style: {\n position: 'absolute',\n height: 0,\n visibility: 'hidden',\n width: 0\n }\n }, /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"tint-\" + id,\n suppressHydrationWarning: true\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodColor: \"\" + tintColor,\n key: tintColor\n }), /*#__PURE__*/React.createElement(\"feComposite\", {\n in2: \"SourceAlpha\",\n operator: \"atop\"\n })))) : null;\n}\nfunction extractNonStandardStyleProps(style, blurRadius, filterId, tintColorProp) {\n var flatStyle = StyleSheet.flatten(style);\n var filter = flatStyle.filter,\n resizeMode = flatStyle.resizeMode,\n shadowOffset = flatStyle.shadowOffset,\n tintColor = flatStyle.tintColor;\n if (flatStyle.resizeMode) {\n warnOnce('Image.style.resizeMode', 'Image: style.resizeMode is deprecated. Please use props.resizeMode.');\n }\n if (flatStyle.tintColor) {\n warnOnce('Image.style.tintColor', 'Image: style.tintColor is deprecated. Please use props.tintColor.');\n }\n\n // Add CSS filters\n // React Native exposes these features as props and proprietary styles\n var filters = [];\n var _filter = null;\n if (filter) {\n filters.push(filter);\n }\n if (blurRadius) {\n filters.push(\"blur(\" + blurRadius + \"px)\");\n }\n if (shadowOffset) {\n var shadowString = createBoxShadowValue(flatStyle);\n if (shadowString) {\n filters.push(\"drop-shadow(\" + shadowString + \")\");\n }\n }\n if ((tintColorProp || tintColor) && filterId != null) {\n filters.push(\"url(#tint-\" + filterId + \")\");\n }\n if (filters.length > 0) {\n _filter = filters.join(' ');\n }\n return [resizeMode, _filter, tintColor];\n}\nfunction resolveAssetDimensions(source) {\n if (typeof source === 'number') {\n var _getAssetByID = getAssetByID(source),\n _height = _getAssetByID.height,\n _width = _getAssetByID.width;\n return {\n height: _height,\n width: _width\n };\n } else if (source != null && !Array.isArray(source) && typeof source === 'object') {\n var _height2 = source.height,\n _width2 = source.width;\n return {\n height: _height2,\n width: _width2\n };\n }\n}\nfunction resolveAssetUri(source) {\n var uri = null;\n if (typeof source === 'number') {\n // get the URI from the packager\n var asset = getAssetByID(source);\n if (asset == null) {\n throw new Error(\"Image: asset with ID \\\"\" + source + \"\\\" could not be found. Please check the image source or packager.\");\n }\n var scale = asset.scales[0];\n if (asset.scales.length > 1) {\n var preferredScale = PixelRatio.get();\n // Get the scale which is closest to the preferred scale\n scale = asset.scales.reduce((prev, curr) => Math.abs(curr - preferredScale) < Math.abs(prev - preferredScale) ? curr : prev);\n }\n var scaleSuffix = scale !== 1 ? \"@\" + scale + \"x\" : '';\n uri = asset ? asset.httpServerLocation + \"/\" + asset.name + scaleSuffix + \".\" + asset.type : '';\n } else if (typeof source === 'string') {\n uri = source;\n } else if (source && typeof source.uri === 'string') {\n uri = source.uri;\n }\n if (uri) {\n var match = uri.match(svgDataUriPattern);\n // inline SVG markup may contain characters (e.g., #, \") that need to be escaped\n if (match) {\n var prefix = match[1],\n svg = match[2];\n var encodedSvg = encodeURIComponent(svg);\n return \"\" + prefix + encodedSvg;\n }\n }\n return uri;\n}\nvar Image = /*#__PURE__*/React.forwardRef((props, ref) => {\n var ariaLabel = props['aria-label'],\n blurRadius = props.blurRadius,\n defaultSource = props.defaultSource,\n draggable = props.draggable,\n onError = props.onError,\n onLayout = props.onLayout,\n onLoad = props.onLoad,\n onLoadEnd = props.onLoadEnd,\n onLoadStart = props.onLoadStart,\n pointerEvents = props.pointerEvents,\n source = props.source,\n style = props.style,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n if (process.env.NODE_ENV !== 'production') {\n if (props.children) {\n throw new Error('The component cannot contain children. If you want to render content on top of the image, consider using the component or absolute positioning.');\n }\n }\n var _React$useState = React.useState(() => {\n var uri = resolveAssetUri(source);\n if (uri != null) {\n var isLoaded = ImageLoader.has(uri);\n if (isLoaded) {\n return LOADED;\n }\n }\n return IDLE;\n }),\n state = _React$useState[0],\n updateState = _React$useState[1];\n var _React$useState2 = React.useState({}),\n layout = _React$useState2[0],\n updateLayout = _React$useState2[1];\n var hasTextAncestor = React.useContext(TextAncestorContext);\n var hiddenImageRef = React.useRef(null);\n var filterRef = React.useRef(_filterId++);\n var requestRef = React.useRef(null);\n var shouldDisplaySource = state === LOADED || state === LOADING && defaultSource == null;\n var _extractNonStandardSt = extractNonStandardStyleProps(style, blurRadius, filterRef.current, props.tintColor),\n _resizeMode = _extractNonStandardSt[0],\n filter = _extractNonStandardSt[1],\n _tintColor = _extractNonStandardSt[2];\n var resizeMode = props.resizeMode || _resizeMode || 'cover';\n var tintColor = props.tintColor || _tintColor;\n var selectedSource = shouldDisplaySource ? source : defaultSource;\n var displayImageUri = resolveAssetUri(selectedSource);\n var imageSizeStyle = resolveAssetDimensions(selectedSource);\n var backgroundImage = displayImageUri ? \"url(\\\"\" + displayImageUri + \"\\\")\" : null;\n var backgroundSize = getBackgroundSize();\n\n // Accessibility image allows users to trigger the browser's image context menu\n var hiddenImage = displayImageUri ? createElement('img', {\n alt: ariaLabel || '',\n style: styles.accessibilityImage$raw,\n draggable: draggable || false,\n ref: hiddenImageRef,\n src: displayImageUri\n }) : null;\n function getBackgroundSize() {\n if (hiddenImageRef.current != null && (resizeMode === 'center' || resizeMode === 'repeat')) {\n var _hiddenImageRef$curre = hiddenImageRef.current,\n naturalHeight = _hiddenImageRef$curre.naturalHeight,\n naturalWidth = _hiddenImageRef$curre.naturalWidth;\n var _height3 = layout.height,\n _width3 = layout.width;\n if (naturalHeight && naturalWidth && _height3 && _width3) {\n var scaleFactor = Math.min(1, _width3 / naturalWidth, _height3 / naturalHeight);\n var x = Math.ceil(scaleFactor * naturalWidth);\n var y = Math.ceil(scaleFactor * naturalHeight);\n return x + \"px \" + y + \"px\";\n }\n }\n }\n function handleLayout(e) {\n if (resizeMode === 'center' || resizeMode === 'repeat' || onLayout) {\n var _layout = e.nativeEvent.layout;\n onLayout && onLayout(e);\n updateLayout(_layout);\n }\n }\n\n // Image loading\n var uri = resolveAssetUri(source);\n React.useEffect(() => {\n abortPendingRequest();\n if (uri != null) {\n updateState(LOADING);\n if (onLoadStart) {\n onLoadStart();\n }\n requestRef.current = ImageLoader.load(uri, function load(e) {\n updateState(LOADED);\n if (onLoad) {\n onLoad(e);\n }\n if (onLoadEnd) {\n onLoadEnd();\n }\n }, function error() {\n updateState(ERRORED);\n if (onError) {\n onError({\n nativeEvent: {\n error: \"Failed to load resource \" + uri + \" (404)\"\n }\n });\n }\n if (onLoadEnd) {\n onLoadEnd();\n }\n });\n }\n function abortPendingRequest() {\n if (requestRef.current != null) {\n ImageLoader.abort(requestRef.current);\n requestRef.current = null;\n }\n }\n return abortPendingRequest;\n }, [uri, requestRef, updateState, onError, onLoad, onLoadEnd, onLoadStart]);\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, {\n \"aria-label\": ariaLabel,\n onLayout: handleLayout,\n pointerEvents: pointerEvents,\n ref: ref,\n style: [styles.root, hasTextAncestor && styles.inline, imageSizeStyle, style, styles.undo,\n // TEMP: avoid deprecated shadow props regression\n // until Image refactored to use createElement.\n {\n boxShadow: null\n }]\n }), /*#__PURE__*/React.createElement(View, {\n style: [styles.image, resizeModeStyles[resizeMode], {\n backgroundImage,\n filter\n }, backgroundSize != null && {\n backgroundSize\n }],\n suppressHydrationWarning: true\n }), hiddenImage, createTintColorSVG(tintColor, filterRef.current));\n});\nImage.displayName = 'Image';\n\n// $FlowIgnore: This is the correct type, but casting makes it unhappy since the variables aren't defined yet\nvar ImageWithStatics = Image;\nImageWithStatics.getSize = function (uri, success, failure) {\n ImageLoader.getSize(uri, success, failure);\n};\nImageWithStatics.prefetch = function (uri) {\n return ImageLoader.prefetch(uri);\n};\nImageWithStatics.queryCache = function (uris) {\n return ImageLoader.queryCache(uris);\n};\nvar styles = StyleSheet.create({\n root: {\n flexBasis: 'auto',\n overflow: 'hidden',\n zIndex: 0\n },\n inline: {\n display: 'inline-flex'\n },\n undo: {\n // These styles are converted to CSS filters applied to the\n // element displaying the background image.\n blurRadius: null,\n shadowColor: null,\n shadowOpacity: null,\n shadowOffset: null,\n shadowRadius: null,\n tintColor: null,\n // These styles are not supported\n overlayColor: null,\n resizeMode: null\n },\n image: _objectSpread(_objectSpread({}, StyleSheet.absoluteFillObject), {}, {\n backgroundColor: 'transparent',\n backgroundPosition: 'center',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n height: '100%',\n width: '100%',\n zIndex: -1\n }),\n accessibilityImage$raw: _objectSpread(_objectSpread({}, StyleSheet.absoluteFillObject), {}, {\n height: '100%',\n opacity: 0,\n width: '100%',\n zIndex: -1\n })\n});\nvar resizeModeStyles = StyleSheet.create({\n center: {\n backgroundSize: 'auto'\n },\n contain: {\n backgroundSize: 'contain'\n },\n cover: {\n backgroundSize: 'cover'\n },\n none: {\n backgroundPosition: '0',\n backgroundSize: 'auto'\n },\n repeat: {\n backgroundPosition: '0',\n backgroundRepeat: 'repeat',\n backgroundSize: 'auto'\n },\n stretch: {\n backgroundSize: '100% 100%'\n }\n});\nexport default ImageWithStatics;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"children\", \"style\", \"imageStyle\", \"imageRef\"];\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport Image from '../Image';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nvar emptyObject = {};\n\n/**\n * Very simple drop-in replacement for which supports nesting views.\n */\nvar ImageBackground = /*#__PURE__*/forwardRef((props, forwardedRef) => {\n var children = props.children,\n _props$style = props.style,\n style = _props$style === void 0 ? emptyObject : _props$style,\n imageStyle = props.imageStyle,\n imageRef = props.imageRef,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n var _StyleSheet$flatten = StyleSheet.flatten(style),\n height = _StyleSheet$flatten.height,\n width = _StyleSheet$flatten.width;\n return /*#__PURE__*/React.createElement(View, {\n ref: forwardedRef,\n style: style\n }, /*#__PURE__*/React.createElement(Image, _extends({}, rest, {\n ref: imageRef,\n style: [{\n // Temporary Workaround:\n // Current (imperfect yet) implementation of overwrites width and height styles\n // (which is not quite correct), and these styles conflict with explicitly set styles\n // of and with our internal layout model here.\n // So, we have to proxy/reapply these styles explicitly for actual component.\n // This workaround should be removed after implementing proper support of\n // intrinsic content size of the .\n width,\n height,\n zIndex: -1\n }, StyleSheet.absoluteFill, imageStyle]\n })), children);\n});\nImageBackground.displayName = 'ImageBackground';\nexport default ImageBackground;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nclass TaskQueue {\n constructor(_ref) {\n var onMoreTasks = _ref.onMoreTasks;\n this._onMoreTasks = onMoreTasks;\n this._queueStack = [{\n tasks: [],\n popable: true\n }];\n }\n enqueue(task) {\n this._getCurrentQueue().push(task);\n }\n enqueueTasks(tasks) {\n tasks.forEach(task => this.enqueue(task));\n }\n cancelTasks(tasksToCancel) {\n this._queueStack = this._queueStack.map(queue => _objectSpread(_objectSpread({}, queue), {}, {\n tasks: queue.tasks.filter(task => tasksToCancel.indexOf(task) === -1)\n })).filter((queue, idx) => queue.tasks.length > 0 || idx === 0);\n }\n hasTasksToProcess() {\n return this._getCurrentQueue().length > 0;\n }\n\n /**\n * Executes the next task in the queue.\n */\n processNext() {\n var queue = this._getCurrentQueue();\n if (queue.length) {\n var task = queue.shift();\n try {\n if (typeof task === 'object' && task.gen) {\n this._genPromise(task);\n } else if (typeof task === 'object' && task.run) {\n task.run();\n } else {\n invariant(typeof task === 'function', 'Expected Function, SimpleTask, or PromiseTask, but got:\\n' + JSON.stringify(task, null, 2));\n task();\n }\n } catch (e) {\n e.message = 'TaskQueue: Error with task ' + (task.name || '') + ': ' + e.message;\n throw e;\n }\n }\n }\n _getCurrentQueue() {\n var stackIdx = this._queueStack.length - 1;\n var queue = this._queueStack[stackIdx];\n if (queue.popable && queue.tasks.length === 0 && stackIdx > 0) {\n this._queueStack.pop();\n return this._getCurrentQueue();\n } else {\n return queue.tasks;\n }\n }\n _genPromise(task) {\n var length = this._queueStack.push({\n tasks: [],\n popable: false\n });\n var stackIdx = length - 1;\n var stackItem = this._queueStack[stackIdx];\n task.gen().then(() => {\n stackItem.popable = true;\n this.hasTasksToProcess() && this._onMoreTasks();\n }).catch(ex => {\n setTimeout(() => {\n ex.message = \"TaskQueue: Error resolving Promise in task \" + task.name + \": \" + ex.message;\n throw ex;\n }, 0);\n });\n }\n}\nexport default TaskQueue;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\nimport canUseDOM from '../canUseDom';\nvar _requestIdleCallback = function _requestIdleCallback(cb, options) {\n return setTimeout(() => {\n var start = Date.now();\n cb({\n didTimeout: false,\n timeRemaining() {\n return Math.max(0, 50 - (Date.now() - start));\n }\n });\n }, 1);\n};\nvar _cancelIdleCallback = function _cancelIdleCallback(id) {\n clearTimeout(id);\n};\nvar isSupported = canUseDOM && typeof window.requestIdleCallback !== 'undefined';\nvar requestIdleCallback = isSupported ? window.requestIdleCallback : _requestIdleCallback;\nvar cancelIdleCallback = isSupported ? window.cancelIdleCallback : _cancelIdleCallback;\nexport default requestIdleCallback;\nexport { cancelIdleCallback };","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nimport TaskQueue from './TaskQueue';\nimport EventEmitter from '../../vendor/react-native/vendor/emitter/EventEmitter';\nimport requestIdleCallback from '../../modules/requestIdleCallback';\nvar _emitter = new EventEmitter();\nvar InteractionManager = {\n Events: {\n interactionStart: 'interactionStart',\n interactionComplete: 'interactionComplete'\n },\n /**\n * Schedule a function to run after all interactions have completed.\n */\n runAfterInteractions(task) {\n var tasks = [];\n var promise = new Promise(resolve => {\n _scheduleUpdate();\n if (task) {\n tasks.push(task);\n }\n tasks.push({\n run: resolve,\n name: 'resolve ' + (task && task.name || '?')\n });\n _taskQueue.enqueueTasks(tasks);\n });\n return {\n then: promise.then.bind(promise),\n done: promise.then.bind(promise),\n cancel: () => {\n _taskQueue.cancelTasks(tasks);\n }\n };\n },\n /**\n * Notify manager that an interaction has started.\n */\n createInteractionHandle() {\n _scheduleUpdate();\n var handle = ++_inc;\n _addInteractionSet.add(handle);\n return handle;\n },\n /**\n * Notify manager that an interaction has completed.\n */\n clearInteractionHandle(handle) {\n invariant(!!handle, 'Must provide a handle to clear.');\n _scheduleUpdate();\n _addInteractionSet.delete(handle);\n _deleteInteractionSet.add(handle);\n },\n addListener: _emitter.addListener.bind(_emitter),\n /**\n *\n * @param deadline\n */\n setDeadline(deadline) {\n _deadline = deadline;\n }\n};\nvar _interactionSet = new Set();\nvar _addInteractionSet = new Set();\nvar _deleteInteractionSet = new Set();\nvar _taskQueue = new TaskQueue({\n onMoreTasks: _scheduleUpdate\n});\nvar _nextUpdateHandle = 0;\nvar _inc = 0;\nvar _deadline = -1;\n\n/**\n * Schedule an asynchronous update to the interaction state.\n */\nfunction _scheduleUpdate() {\n if (!_nextUpdateHandle) {\n if (_deadline > 0) {\n _nextUpdateHandle = setTimeout(_processUpdate);\n } else {\n _nextUpdateHandle = requestIdleCallback(_processUpdate);\n }\n }\n}\n\n/**\n * Notify listeners, process queue, etc\n */\nfunction _processUpdate() {\n _nextUpdateHandle = 0;\n var interactionCount = _interactionSet.size;\n _addInteractionSet.forEach(handle => _interactionSet.add(handle));\n _deleteInteractionSet.forEach(handle => _interactionSet.delete(handle));\n var nextInteractionCount = _interactionSet.size;\n if (interactionCount !== 0 && nextInteractionCount === 0) {\n _emitter.emit(InteractionManager.Events.interactionComplete);\n } else if (interactionCount === 0 && nextInteractionCount !== 0) {\n _emitter.emit(InteractionManager.Events.interactionStart);\n }\n if (nextInteractionCount === 0) {\n // It seems that we can't know the running time of the current event loop,\n // we can only calculate the running time of the current task queue.\n var begin = Date.now();\n while (_taskQueue.hasTasksToProcess()) {\n _taskQueue.processNext();\n if (_deadline > 0 && Date.now() - begin >= _deadline) {\n _scheduleUpdate();\n break;\n }\n }\n }\n _addInteractionSet.clear();\n _deleteInteractionSet.clear();\n}\nexport default InteractionManager;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport dismissKeyboard from '../../modules/dismissKeyboard';\n\n// in the future we can use https://github.com/w3c/virtual-keyboard\nvar Keyboard = {\n isVisible() {\n return false;\n },\n addListener() {\n return {\n remove: () => {}\n };\n },\n dismiss() {\n dismissKeyboard();\n },\n removeAllListeners() {},\n removeListener() {}\n};\nexport default Keyboard;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"behavior\", \"contentContainerStyle\", \"keyboardVerticalOffset\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport View from '../View';\nclass KeyboardAvoidingView extends React.Component {\n constructor() {\n super(...arguments);\n this.frame = null;\n this.onLayout = event => {\n this.frame = event.nativeEvent.layout;\n };\n }\n relativeKeyboardHeight(keyboardFrame) {\n var frame = this.frame;\n if (!frame || !keyboardFrame) {\n return 0;\n }\n var keyboardY = keyboardFrame.screenY - (this.props.keyboardVerticalOffset || 0);\n return Math.max(frame.y + frame.height - keyboardY, 0);\n }\n onKeyboardChange(event) {}\n render() {\n var _this$props = this.props,\n behavior = _this$props.behavior,\n contentContainerStyle = _this$props.contentContainerStyle,\n keyboardVerticalOffset = _this$props.keyboardVerticalOffset,\n rest = _objectWithoutPropertiesLoose(_this$props, _excluded);\n return /*#__PURE__*/React.createElement(View, _extends({\n onLayout: this.onLayout\n }, rest));\n }\n}\nexport default KeyboardAvoidingView;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport Platform from '../../../exports/Platform';\nimport UIManager from '../../../exports/UIManager';\nvar __DEV__ = process.env.NODE_ENV !== 'production';\nfunction configureNext(config, onAnimationDidEnd) {\n if (!Platform.isTesting) {\n UIManager.configureNextLayoutAnimation(config, onAnimationDidEnd !== null && onAnimationDidEnd !== void 0 ? onAnimationDidEnd : function () {}, function () {} /* unused onError */);\n }\n}\n\nfunction create(duration, type, property) {\n return {\n duration,\n create: {\n type,\n property\n },\n update: {\n type\n },\n delete: {\n type,\n property\n }\n };\n}\nvar Presets = {\n easeInEaseOut: create(300, 'easeInEaseOut', 'opacity'),\n linear: create(500, 'linear', 'opacity'),\n spring: {\n duration: 700,\n create: {\n type: 'linear',\n property: 'opacity'\n },\n update: {\n type: 'spring',\n springDamping: 0.4\n },\n delete: {\n type: 'linear',\n property: 'opacity'\n }\n }\n};\n\n/**\n * Automatically animates views to their new positions when the\n * next layout happens.\n *\n * A common way to use this API is to call it before calling `setState`.\n *\n * Note that in order to get this to work on **Android** you need to set the following flags via `UIManager`:\n *\n * UIManager.setLayoutAnimationEnabledExperimental && UIManager.setLayoutAnimationEnabledExperimental(true);\n */\nvar LayoutAnimation = {\n /**\n * Schedules an animation to happen on the next layout.\n *\n * @param config Specifies animation properties:\n *\n * - `duration` in milliseconds\n * - `create`, `AnimationConfig` for animating in new views\n * - `update`, `AnimationConfig` for animating views that have been updated\n *\n * @param onAnimationDidEnd Called when the animation finished.\n * Only supported on iOS.\n * @param onError Called on error. Only supported on iOS.\n */\n configureNext,\n /**\n * Helper for creating a config for `configureNext`.\n */\n create,\n Types: Object.freeze({\n spring: 'spring',\n linear: 'linear',\n easeInEaseOut: 'easeInEaseOut',\n easeIn: 'easeIn',\n easeOut: 'easeOut',\n keyboard: 'keyboard'\n }),\n Properties: Object.freeze({\n opacity: 'opacity',\n scaleX: 'scaleX',\n scaleY: 'scaleY',\n scaleXY: 'scaleXY'\n }),\n checkConfig() {\n console.error('LayoutAnimation.checkConfig(...) has been disabled.');\n },\n Presets,\n easeInEaseOut: configureNext.bind(null, Presets.easeInEaseOut),\n linear: configureNext.bind(null, Presets.linear),\n spring: configureNext.bind(null, Presets.spring)\n};\nexport default LayoutAnimation;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport LayoutAnimation from '../../vendor/react-native/LayoutAnimation';\nexport default LayoutAnimation;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nimport canUseDOM from '../../modules/canUseDom';\nvar initialURL = canUseDOM ? window.location.href : '';\nclass Linking {\n constructor() {\n this._eventCallbacks = {};\n }\n _dispatchEvent(event) {\n for (var _len = arguments.length, data = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n data[_key - 1] = arguments[_key];\n }\n var listeners = this._eventCallbacks[event];\n if (listeners != null && Array.isArray(listeners)) {\n listeners.map(listener => {\n listener(...data);\n });\n }\n }\n\n /**\n * Adds a event listener for the specified event. The callback will be called when the\n * said event is dispatched.\n */\n addEventListener(eventType, callback) {\n var _this = this;\n if (!_this._eventCallbacks[eventType]) {\n _this._eventCallbacks[eventType] = [callback];\n }\n _this._eventCallbacks[eventType].push(callback);\n return {\n remove() {\n var callbacks = _this._eventCallbacks[eventType];\n var filteredCallbacks = callbacks.filter(c => c.toString() !== callback.toString());\n _this._eventCallbacks[eventType] = filteredCallbacks;\n }\n };\n }\n\n /**\n * Removes a previously added event listener for the specified event. The callback must\n * be the same object as the one passed to `addEventListener`.\n */\n removeEventListener(eventType, callback) {\n console.error(\"Linking.removeEventListener('\" + eventType + \"', ...): Method has been \" + 'deprecated. Please instead use `remove()` on the subscription ' + 'returned by `Linking.addEventListener`.');\n var callbacks = this._eventCallbacks[eventType];\n var filteredCallbacks = callbacks.filter(c => c.toString() !== callback.toString());\n this._eventCallbacks[eventType] = filteredCallbacks;\n }\n canOpenURL() {\n return Promise.resolve(true);\n }\n getInitialURL() {\n return Promise.resolve(initialURL);\n }\n\n /**\n * Try to open the given url in a secure fashion. The method returns a Promise object.\n * If a target is passed (including undefined) that target will be used, otherwise '_blank'.\n * If the url opens, the promise is resolved. If not, the promise is rejected.\n * Dispatches the `onOpen` event if `url` is opened successfully.\n */\n openURL(url, target) {\n if (arguments.length === 1) {\n target = '_blank';\n }\n try {\n open(url, target);\n this._dispatchEvent('onOpen', url);\n return Promise.resolve();\n } catch (e) {\n return Promise.reject(e);\n }\n }\n _validateURL(url) {\n invariant(typeof url === 'string', 'Invalid URL: should be a string. Was: ' + url);\n invariant(url, 'Invalid URL: cannot be empty');\n }\n}\nvar open = (url, target) => {\n if (canUseDOM) {\n var urlToOpen = new URL(url, window.location).toString();\n if (urlToOpen.indexOf('tel:') === 0) {\n window.location = urlToOpen;\n } else {\n window.open(urlToOpen, target, 'noopener');\n }\n }\n};\nexport default new Linking();","/**\n * Copyright (c) 2016-present, Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar LogBox = {\n ignoreLogs() {},\n ignoreAllLogs() {},\n uninstall() {},\n install() {}\n};\nexport default LogBox;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport canUseDOM from '../../modules/canUseDom';\nfunction ModalPortal(props) {\n var children = props.children;\n var elementRef = React.useRef(null);\n if (canUseDOM && !elementRef.current) {\n var element = document.createElement('div');\n if (element && document.body) {\n document.body.appendChild(element);\n elementRef.current = element;\n }\n }\n React.useEffect(() => {\n if (canUseDOM) {\n return () => {\n if (document.body && elementRef.current) {\n document.body.removeChild(elementRef.current);\n elementRef.current = null;\n }\n };\n }\n }, []);\n return elementRef.current && canUseDOM ? /*#__PURE__*/ReactDOM.createPortal(children, elementRef.current) : null;\n}\nexport default ModalPortal;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport createElement from '../createElement';\nvar ANIMATION_DURATION = 300;\nfunction getAnimationStyle(animationType, visible) {\n if (animationType === 'slide') {\n return visible ? animatedSlideInStyles : animatedSlideOutStyles;\n }\n if (animationType === 'fade') {\n return visible ? animatedFadeInStyles : animatedFadeOutStyles;\n }\n return visible ? styles.container : styles.hidden;\n}\nfunction ModalAnimation(props) {\n var animationType = props.animationType,\n children = props.children,\n onDismiss = props.onDismiss,\n onShow = props.onShow,\n visible = props.visible;\n var _React$useState = React.useState(false),\n isRendering = _React$useState[0],\n setIsRendering = _React$useState[1];\n var wasVisible = React.useRef(false);\n var wasRendering = React.useRef(false);\n var isAnimated = animationType && animationType !== 'none';\n var animationEndCallback = React.useCallback(e => {\n if (e && e.currentTarget !== e.target) {\n // If the event was generated for something NOT this element we\n // should ignore it as it's not relevant to us\n return;\n }\n if (visible) {\n if (onShow) {\n onShow();\n }\n } else {\n setIsRendering(false);\n }\n }, [onShow, visible]);\n React.useEffect(() => {\n if (wasRendering.current && !isRendering && onDismiss) {\n onDismiss();\n }\n wasRendering.current = isRendering;\n }, [isRendering, onDismiss]);\n React.useEffect(() => {\n if (visible) {\n setIsRendering(true);\n }\n if (visible !== wasVisible.current && !isAnimated) {\n // Manually call `animationEndCallback` if no animation is used\n animationEndCallback();\n }\n wasVisible.current = visible;\n }, [isAnimated, visible, animationEndCallback]);\n return isRendering || visible ? createElement('div', {\n style: isRendering ? getAnimationStyle(animationType, visible) : styles.hidden,\n onAnimationEnd: animationEndCallback,\n children\n }) : null;\n}\nvar styles = StyleSheet.create({\n container: {\n position: 'fixed',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n zIndex: 9999\n },\n animatedIn: {\n animationDuration: ANIMATION_DURATION + \"ms\",\n animationTimingFunction: 'ease-in'\n },\n animatedOut: {\n pointerEvents: 'none',\n animationDuration: ANIMATION_DURATION + \"ms\",\n animationTimingFunction: 'ease-out'\n },\n fadeIn: {\n opacity: 1,\n animationKeyframes: {\n '0%': {\n opacity: 0\n },\n '100%': {\n opacity: 1\n }\n }\n },\n fadeOut: {\n opacity: 0,\n animationKeyframes: {\n '0%': {\n opacity: 1\n },\n '100%': {\n opacity: 0\n }\n }\n },\n slideIn: {\n transform: 'translateY(0%)',\n animationKeyframes: {\n '0%': {\n transform: 'translateY(100%)'\n },\n '100%': {\n transform: 'translateY(0%)'\n }\n }\n },\n slideOut: {\n transform: 'translateY(100%)',\n animationKeyframes: {\n '0%': {\n transform: 'translateY(0%)'\n },\n '100%': {\n transform: 'translateY(100%)'\n }\n }\n },\n hidden: {\n opacity: 0\n }\n});\nvar animatedSlideInStyles = [styles.container, styles.animatedIn, styles.slideIn];\nvar animatedSlideOutStyles = [styles.container, styles.animatedOut, styles.slideOut];\nvar animatedFadeInStyles = [styles.container, styles.animatedIn, styles.fadeIn];\nvar animatedFadeOutStyles = [styles.container, styles.animatedOut, styles.fadeOut];\nexport default ModalAnimation;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"active\", \"children\", \"onRequestClose\", \"transparent\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport View from '../View';\nimport StyleSheet from '../StyleSheet';\nimport canUseDOM from '../../modules/canUseDom';\nvar ModalContent = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var active = props.active,\n children = props.children,\n onRequestClose = props.onRequestClose,\n transparent = props.transparent,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n React.useEffect(() => {\n if (canUseDOM) {\n var closeOnEscape = e => {\n if (active && e.key === 'Escape') {\n e.stopPropagation();\n if (onRequestClose) {\n onRequestClose();\n }\n }\n };\n document.addEventListener('keyup', closeOnEscape, false);\n return () => document.removeEventListener('keyup', closeOnEscape, false);\n }\n }, [active, onRequestClose]);\n var style = React.useMemo(() => {\n return [styles.modal, transparent ? styles.modalTransparent : styles.modalOpaque];\n }, [transparent]);\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, {\n \"aria-modal\": true,\n ref: forwardedRef,\n role: active ? 'dialog' : null,\n style: style\n }), /*#__PURE__*/React.createElement(View, {\n style: styles.container\n }, children));\n});\nvar styles = StyleSheet.create({\n modal: {\n position: 'fixed',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n },\n modalTransparent: {\n backgroundColor: 'transparent'\n },\n modalOpaque: {\n backgroundColor: 'white'\n },\n container: {\n top: 0,\n flex: 1\n }\n});\nexport default ModalContent;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport View from '../View';\nimport createElement from '../createElement';\nimport StyleSheet from '../StyleSheet';\nimport UIManager from '../UIManager';\nimport canUseDOM from '../../modules/canUseDom';\n\n/**\n * This Component is used to \"wrap\" the modal we're opening\n * so that changing focus via tab will never leave the document.\n *\n * This allows us to properly trap the focus within a modal\n * even if the modal is at the start or end of a document.\n */\n\nvar FocusBracket = () => {\n return createElement('div', {\n role: 'none',\n tabIndex: 0,\n style: styles.focusBracket\n });\n};\nfunction attemptFocus(element) {\n if (!canUseDOM) {\n return false;\n }\n try {\n element.focus();\n } catch (e) {\n // Do nothing\n }\n return document.activeElement === element;\n}\nfunction focusFirstDescendant(element) {\n for (var i = 0; i < element.childNodes.length; i++) {\n var child = element.childNodes[i];\n if (attemptFocus(child) || focusFirstDescendant(child)) {\n return true;\n }\n }\n return false;\n}\nfunction focusLastDescendant(element) {\n for (var i = element.childNodes.length - 1; i >= 0; i--) {\n var child = element.childNodes[i];\n if (attemptFocus(child) || focusLastDescendant(child)) {\n return true;\n }\n }\n return false;\n}\nvar ModalFocusTrap = _ref => {\n var active = _ref.active,\n children = _ref.children;\n var trapElementRef = React.useRef();\n var focusRef = React.useRef({\n trapFocusInProgress: false,\n lastFocusedElement: null\n });\n React.useEffect(() => {\n if (canUseDOM) {\n var trapFocus = () => {\n // We should not trap focus if:\n // - The modal hasn't fully initialized with an HTMLElement ref\n // - Focus is already in the process of being trapped (e.g., we're refocusing)\n // - isTrapActive prop being falsey tells us to do nothing\n if (trapElementRef.current == null || focusRef.current.trapFocusInProgress || !active) {\n return;\n }\n try {\n focusRef.current.trapFocusInProgress = true;\n if (document.activeElement instanceof Node && !trapElementRef.current.contains(document.activeElement)) {\n // To handle keyboard focusing we can make an assumption here.\n // If you're tabbing through the focusable elements, the previously\n // active element will either be the first or the last.\n // If the previously selected element is the \"first\" descendant\n // and we're leaving it - this means that we should be looping\n // around to the other side of the modal.\n var hasFocused = focusFirstDescendant(trapElementRef.current);\n if (focusRef.current.lastFocusedElement === document.activeElement) {\n hasFocused = focusLastDescendant(trapElementRef.current);\n }\n // If we couldn't focus a new element then we need to focus onto the trap target\n if (!hasFocused && trapElementRef.current != null && document.activeElement) {\n UIManager.focus(trapElementRef.current);\n }\n }\n } finally {\n focusRef.current.trapFocusInProgress = false;\n }\n focusRef.current.lastFocusedElement = document.activeElement;\n };\n\n // Call the trapFocus callback at least once when this modal has been activated.\n trapFocus();\n document.addEventListener('focus', trapFocus, true);\n return () => document.removeEventListener('focus', trapFocus, true);\n }\n }, [active]);\n\n // To be fully compliant with WCAG we need to refocus element that triggered opening modal\n // after closing it\n React.useEffect(function () {\n if (canUseDOM) {\n var lastFocusedElementOutsideTrap = document.activeElement;\n return function () {\n if (lastFocusedElementOutsideTrap && document.contains(lastFocusedElementOutsideTrap)) {\n UIManager.focus(lastFocusedElementOutsideTrap);\n }\n };\n }\n }, []);\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FocusBracket, null), /*#__PURE__*/React.createElement(View, {\n ref: trapElementRef\n }, children), /*#__PURE__*/React.createElement(FocusBracket, null));\n};\nexport default ModalFocusTrap;\nvar styles = StyleSheet.create({\n focusBracket: {\n outlineStyle: 'none'\n }\n});","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"animationType\", \"children\", \"onDismiss\", \"onRequestClose\", \"onShow\", \"transparent\", \"visible\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport ModalPortal from './ModalPortal';\nimport ModalAnimation from './ModalAnimation';\nimport ModalContent from './ModalContent';\nimport ModalFocusTrap from './ModalFocusTrap';\nvar uniqueModalIdentifier = 0;\nvar activeModalStack = [];\nvar activeModalListeners = {};\nfunction notifyActiveModalListeners() {\n if (activeModalStack.length === 0) {\n return;\n }\n var activeModalId = activeModalStack[activeModalStack.length - 1];\n activeModalStack.forEach(modalId => {\n if (modalId in activeModalListeners) {\n activeModalListeners[modalId](modalId === activeModalId);\n }\n });\n}\nfunction removeActiveModal(modalId) {\n if (modalId in activeModalListeners) {\n // Before removing this listener we should probably tell it\n // that it's no longer the active modal for sure.\n activeModalListeners[modalId](false);\n delete activeModalListeners[modalId];\n }\n var index = activeModalStack.indexOf(modalId);\n if (index !== -1) {\n activeModalStack.splice(index, 1);\n notifyActiveModalListeners();\n }\n}\nfunction addActiveModal(modalId, listener) {\n removeActiveModal(modalId);\n activeModalStack.push(modalId);\n activeModalListeners[modalId] = listener;\n notifyActiveModalListeners();\n}\nvar Modal = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var animationType = props.animationType,\n children = props.children,\n onDismiss = props.onDismiss,\n onRequestClose = props.onRequestClose,\n onShow = props.onShow,\n transparent = props.transparent,\n _props$visible = props.visible,\n visible = _props$visible === void 0 ? true : _props$visible,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n // Set a unique model identifier so we can correctly route\n // dismissals and check the layering of modals.\n var modalId = React.useMemo(() => uniqueModalIdentifier++, []);\n var _React$useState = React.useState(false),\n isActive = _React$useState[0],\n setIsActive = _React$useState[1];\n var onDismissCallback = React.useCallback(() => {\n removeActiveModal(modalId);\n if (onDismiss) {\n onDismiss();\n }\n }, [modalId, onDismiss]);\n var onShowCallback = React.useCallback(() => {\n addActiveModal(modalId, setIsActive);\n if (onShow) {\n onShow();\n }\n }, [modalId, onShow]);\n React.useEffect(() => {\n return () => removeActiveModal(modalId);\n }, [modalId]);\n return /*#__PURE__*/React.createElement(ModalPortal, null, /*#__PURE__*/React.createElement(ModalAnimation, {\n animationType: animationType,\n onDismiss: onDismissCallback,\n onShow: onShowCallback,\n visible: visible\n }, /*#__PURE__*/React.createElement(ModalFocusTrap, {\n active: isActive\n }, /*#__PURE__*/React.createElement(ModalContent, _extends({}, rest, {\n active: isActive,\n onRequestClose: onRequestClose,\n ref: forwardedRef,\n transparent: transparent\n }), children))));\n});\nexport default Modal;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport NativeEventEmitter from '../../vendor/react-native/EventEmitter/NativeEventEmitter';\nexport default NativeEventEmitter;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport UIManager from '../UIManager';\n\n// NativeModules shim\nvar NativeModules = {\n UIManager\n};\nexport default NativeModules;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n */\n\nvar TouchHistoryMath = {\n /**\n * This code is optimized and not intended to look beautiful. This allows\n * computing of touch centroids that have moved after `touchesChangedAfter`\n * timeStamp. You can compute the current centroid involving all touches\n * moves after `touchesChangedAfter`, or you can compute the previous\n * centroid of all touches that were moved after `touchesChangedAfter`.\n *\n * @param {TouchHistoryMath} touchHistory Standard Responder touch track\n * data.\n * @param {number} touchesChangedAfter timeStamp after which moved touches\n * are considered \"actively moving\" - not just \"active\".\n * @param {boolean} isXAxis Consider `x` dimension vs. `y` dimension.\n * @param {boolean} ofCurrent Compute current centroid for actively moving\n * touches vs. previous centroid of now actively moving touches.\n * @return {number} value of centroid in specified dimension.\n */\n centroidDimension: function centroidDimension(touchHistory, touchesChangedAfter, isXAxis, ofCurrent) {\n var touchBank = touchHistory.touchBank;\n var total = 0;\n var count = 0;\n var oneTouchData = touchHistory.numberActiveTouches === 1 ? touchHistory.touchBank[touchHistory.indexOfSingleActiveTouch] : null;\n if (oneTouchData !== null) {\n if (oneTouchData.touchActive && oneTouchData.currentTimeStamp > touchesChangedAfter) {\n total += ofCurrent && isXAxis ? oneTouchData.currentPageX : ofCurrent && !isXAxis ? oneTouchData.currentPageY : !ofCurrent && isXAxis ? oneTouchData.previousPageX : oneTouchData.previousPageY;\n count = 1;\n }\n } else {\n for (var i = 0; i < touchBank.length; i++) {\n var touchTrack = touchBank[i];\n if (touchTrack !== null && touchTrack !== undefined && touchTrack.touchActive && touchTrack.currentTimeStamp >= touchesChangedAfter) {\n var toAdd = void 0; // Yuck, program temporarily in invalid state.\n if (ofCurrent && isXAxis) {\n toAdd = touchTrack.currentPageX;\n } else if (ofCurrent && !isXAxis) {\n toAdd = touchTrack.currentPageY;\n } else if (!ofCurrent && isXAxis) {\n toAdd = touchTrack.previousPageX;\n } else {\n toAdd = touchTrack.previousPageY;\n }\n total += toAdd;\n count++;\n }\n }\n }\n return count > 0 ? total / count : TouchHistoryMath.noCentroid;\n },\n currentCentroidXOfTouchesChangedAfter: function currentCentroidXOfTouchesChangedAfter(touchHistory, touchesChangedAfter) {\n return TouchHistoryMath.centroidDimension(touchHistory, touchesChangedAfter, true,\n // isXAxis\n true // ofCurrent\n );\n },\n\n currentCentroidYOfTouchesChangedAfter: function currentCentroidYOfTouchesChangedAfter(touchHistory, touchesChangedAfter) {\n return TouchHistoryMath.centroidDimension(touchHistory, touchesChangedAfter, false,\n // isXAxis\n true // ofCurrent\n );\n },\n\n previousCentroidXOfTouchesChangedAfter: function previousCentroidXOfTouchesChangedAfter(touchHistory, touchesChangedAfter) {\n return TouchHistoryMath.centroidDimension(touchHistory, touchesChangedAfter, true,\n // isXAxis\n false // ofCurrent\n );\n },\n\n previousCentroidYOfTouchesChangedAfter: function previousCentroidYOfTouchesChangedAfter(touchHistory, touchesChangedAfter) {\n return TouchHistoryMath.centroidDimension(touchHistory, touchesChangedAfter, false,\n // isXAxis\n false // ofCurrent\n );\n },\n\n currentCentroidX: function currentCentroidX(touchHistory) {\n return TouchHistoryMath.centroidDimension(touchHistory, 0,\n // touchesChangedAfter\n true,\n // isXAxis\n true // ofCurrent\n );\n },\n\n currentCentroidY: function currentCentroidY(touchHistory) {\n return TouchHistoryMath.centroidDimension(touchHistory, 0,\n // touchesChangedAfter\n false,\n // isXAxis\n true // ofCurrent\n );\n },\n\n noCentroid: -1\n};\nexport default TouchHistoryMath;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport InteractionManager from '../../../exports/InteractionManager';\nimport TouchHistoryMath from '../TouchHistoryMath';\nvar currentCentroidXOfTouchesChangedAfter = TouchHistoryMath.currentCentroidXOfTouchesChangedAfter;\nvar currentCentroidYOfTouchesChangedAfter = TouchHistoryMath.currentCentroidYOfTouchesChangedAfter;\nvar previousCentroidXOfTouchesChangedAfter = TouchHistoryMath.previousCentroidXOfTouchesChangedAfter;\nvar previousCentroidYOfTouchesChangedAfter = TouchHistoryMath.previousCentroidYOfTouchesChangedAfter;\nvar currentCentroidX = TouchHistoryMath.currentCentroidX;\nvar currentCentroidY = TouchHistoryMath.currentCentroidY;\n\n/**\n * `PanResponder` reconciles several touches into a single gesture. It makes\n * single-touch gestures resilient to extra touches, and can be used to\n * recognize simple multi-touch gestures.\n *\n * By default, `PanResponder` holds an `InteractionManager` handle to block\n * long-running JS events from interrupting active gestures.\n *\n * It provides a predictable wrapper of the responder handlers provided by the\n * [gesture responder system](docs/gesture-responder-system.html).\n * For each handler, it provides a new `gestureState` object alongside the\n * native event object:\n *\n * ```\n * onPanResponderMove: (event, gestureState) => {}\n * ```\n *\n * A native event is a synthetic touch event with the following form:\n *\n * - `nativeEvent`\n * + `changedTouches` - Array of all touch events that have changed since the last event\n * + `identifier` - The ID of the touch\n * + `locationX` - The X position of the touch, relative to the element\n * + `locationY` - The Y position of the touch, relative to the element\n * + `pageX` - The X position of the touch, relative to the root element\n * + `pageY` - The Y position of the touch, relative to the root element\n * + `target` - The node id of the element receiving the touch event\n * + `timestamp` - A time identifier for the touch, useful for velocity calculation\n * + `touches` - Array of all current touches on the screen\n *\n * A `gestureState` object has the following:\n *\n * - `stateID` - ID of the gestureState- persisted as long as there at least\n * one touch on screen\n * - `moveX` - the latest screen coordinates of the recently-moved touch\n * - `moveY` - the latest screen coordinates of the recently-moved touch\n * - `x0` - the screen coordinates of the responder grant\n * - `y0` - the screen coordinates of the responder grant\n * - `dx` - accumulated distance of the gesture since the touch started\n * - `dy` - accumulated distance of the gesture since the touch started\n * - `vx` - current velocity of the gesture\n * - `vy` - current velocity of the gesture\n * - `numberActiveTouches` - Number of touches currently on screen\n *\n * ### Basic Usage\n *\n * ```\n * componentWillMount: function() {\n * this._panResponder = PanResponder.create({\n * // Ask to be the responder:\n * onStartShouldSetPanResponder: (evt, gestureState) => true,\n * onStartShouldSetPanResponderCapture: (evt, gestureState) => true,\n * onMoveShouldSetPanResponder: (evt, gestureState) => true,\n * onMoveShouldSetPanResponderCapture: (evt, gestureState) => true,\n *\n * onPanResponderGrant: (evt, gestureState) => {\n * // The gesture has started. Show visual feedback so the user knows\n * // what is happening!\n *\n * // gestureState.d{x,y} will be set to zero now\n * },\n * onPanResponderMove: (evt, gestureState) => {\n * // The most recent move distance is gestureState.move{X,Y}\n *\n * // The accumulated gesture distance since becoming responder is\n * // gestureState.d{x,y}\n * },\n * onPanResponderTerminationRequest: (evt, gestureState) => true,\n * onPanResponderRelease: (evt, gestureState) => {\n * // The user has released all touches while this view is the\n * // responder. This typically means a gesture has succeeded\n * },\n * onPanResponderTerminate: (evt, gestureState) => {\n * // Another component has become the responder, so this gesture\n * // should be cancelled\n * },\n * onShouldBlockNativeResponder: (evt, gestureState) => {\n * // Returns whether this component should block native components from becoming the JS\n * // responder. Returns true by default. Is currently only supported on android.\n * return true;\n * },\n * });\n * },\n *\n * render: function() {\n * return (\n * \n * );\n * },\n *\n * ```\n *\n * ### Working Example\n *\n * To see it in action, try the\n * [PanResponder example in RNTester](https://github.com/facebook/react-native/blob/master/RNTester/js/PanResponderExample.js)\n */\n\nvar PanResponder = {\n /**\n *\n * A graphical explanation of the touch data flow:\n *\n * +----------------------------+ +--------------------------------+\n * | ResponderTouchHistoryStore | |TouchHistoryMath |\n * +----------------------------+ +----------+---------------------+\n * |Global store of touchHistory| |Allocation-less math util |\n * |including activeness, start | |on touch history (centroids |\n * |position, prev/cur position.| |and multitouch movement etc) |\n * | | | |\n * +----^-----------------------+ +----^---------------------------+\n * | |\n * | (records relevant history |\n * | of touches relevant for |\n * | implementing higher level |\n * | gestures) |\n * | |\n * +----+-----------------------+ +----|---------------------------+\n * | ResponderEventPlugin | | | Your App/Component |\n * +----------------------------+ +----|---------------------------+\n * |Negotiates which view gets | Low level | | High level |\n * |onResponderMove events. | events w/ | +-+-------+ events w/ |\n * |Also records history into | touchHistory| | Pan | multitouch + |\n * |ResponderTouchHistoryStore. +---------------->Responder+-----> accumulative|\n * +----------------------------+ attached to | | | distance and |\n * each event | +---------+ velocity. |\n * | |\n * | |\n * +--------------------------------+\n *\n *\n *\n * Gesture that calculates cumulative movement over time in a way that just\n * \"does the right thing\" for multiple touches. The \"right thing\" is very\n * nuanced. When moving two touches in opposite directions, the cumulative\n * distance is zero in each dimension. When two touches move in parallel five\n * pixels in the same direction, the cumulative distance is five, not ten. If\n * two touches start, one moves five in a direction, then stops and the other\n * touch moves fives in the same direction, the cumulative distance is ten.\n *\n * This logic requires a kind of processing of time \"clusters\" of touch events\n * so that two touch moves that essentially occur in parallel but move every\n * other frame respectively, are considered part of the same movement.\n *\n * Explanation of some of the non-obvious fields:\n *\n * - moveX/moveY: If no move event has been observed, then `(moveX, moveY)` is\n * invalid. If a move event has been observed, `(moveX, moveY)` is the\n * centroid of the most recently moved \"cluster\" of active touches.\n * (Currently all move have the same timeStamp, but later we should add some\n * threshold for what is considered to be \"moving\"). If a palm is\n * accidentally counted as a touch, but a finger is moving greatly, the palm\n * will move slightly, but we only want to count the single moving touch.\n * - x0/y0: Centroid location (non-cumulative) at the time of becoming\n * responder.\n * - dx/dy: Cumulative touch distance - not the same thing as sum of each touch\n * distance. Accounts for touch moves that are clustered together in time,\n * moving the same direction. Only valid when currently responder (otherwise,\n * it only represents the drag distance below the threshold).\n * - vx/vy: Velocity.\n */\n\n _initializeGestureState(gestureState) {\n gestureState.moveX = 0;\n gestureState.moveY = 0;\n gestureState.x0 = 0;\n gestureState.y0 = 0;\n gestureState.dx = 0;\n gestureState.dy = 0;\n gestureState.vx = 0;\n gestureState.vy = 0;\n gestureState.numberActiveTouches = 0;\n // All `gestureState` accounts for timeStamps up until:\n gestureState._accountsForMovesUpTo = 0;\n },\n /**\n * This is nuanced and is necessary. It is incorrect to continuously take all\n * active *and* recently moved touches, find the centroid, and track how that\n * result changes over time. Instead, we must take all recently moved\n * touches, and calculate how the centroid has changed just for those\n * recently moved touches, and append that change to an accumulator. This is\n * to (at least) handle the case where the user is moving three fingers, and\n * then one of the fingers stops but the other two continue.\n *\n * This is very different than taking all of the recently moved touches and\n * storing their centroid as `dx/dy`. For correctness, we must *accumulate\n * changes* in the centroid of recently moved touches.\n *\n * There is also some nuance with how we handle multiple moved touches in a\n * single event. With the way `ReactNativeEventEmitter` dispatches touches as\n * individual events, multiple touches generate two 'move' events, each of\n * them triggering `onResponderMove`. But with the way `PanResponder` works,\n * all of the gesture inference is performed on the first dispatch, since it\n * looks at all of the touches (even the ones for which there hasn't been a\n * native dispatch yet). Therefore, `PanResponder` does not call\n * `onResponderMove` passed the first dispatch. This diverges from the\n * typical responder callback pattern (without using `PanResponder`), but\n * avoids more dispatches than necessary.\n */\n _updateGestureStateOnMove(gestureState, touchHistory) {\n gestureState.numberActiveTouches = touchHistory.numberActiveTouches;\n gestureState.moveX = currentCentroidXOfTouchesChangedAfter(touchHistory, gestureState._accountsForMovesUpTo);\n gestureState.moveY = currentCentroidYOfTouchesChangedAfter(touchHistory, gestureState._accountsForMovesUpTo);\n var movedAfter = gestureState._accountsForMovesUpTo;\n var prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter);\n var x = currentCentroidXOfTouchesChangedAfter(touchHistory, movedAfter);\n var prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter);\n var y = currentCentroidYOfTouchesChangedAfter(touchHistory, movedAfter);\n var nextDX = gestureState.dx + (x - prevX);\n var nextDY = gestureState.dy + (y - prevY);\n\n // TODO: This must be filtered intelligently.\n var dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;\n gestureState.vx = (nextDX - gestureState.dx) / dt;\n gestureState.vy = (nextDY - gestureState.dy) / dt;\n gestureState.dx = nextDX;\n gestureState.dy = nextDY;\n gestureState._accountsForMovesUpTo = touchHistory.mostRecentTimeStamp;\n },\n /**\n * @param {object} config Enhanced versions of all of the responder callbacks\n * that provide not only the typical `ResponderSyntheticEvent`, but also the\n * `PanResponder` gesture state. Simply replace the word `Responder` with\n * `PanResponder` in each of the typical `onResponder*` callbacks. For\n * example, the `config` object would look like:\n *\n * - `onMoveShouldSetPanResponder: (e, gestureState) => {...}`\n * - `onMoveShouldSetPanResponderCapture: (e, gestureState) => {...}`\n * - `onStartShouldSetPanResponder: (e, gestureState) => {...}`\n * - `onStartShouldSetPanResponderCapture: (e, gestureState) => {...}`\n * - `onPanResponderReject: (e, gestureState) => {...}`\n * - `onPanResponderGrant: (e, gestureState) => {...}`\n * - `onPanResponderStart: (e, gestureState) => {...}`\n * - `onPanResponderEnd: (e, gestureState) => {...}`\n * - `onPanResponderRelease: (e, gestureState) => {...}`\n * - `onPanResponderMove: (e, gestureState) => {...}`\n * - `onPanResponderTerminate: (e, gestureState) => {...}`\n * - `onPanResponderTerminationRequest: (e, gestureState) => {...}`\n * - `onShouldBlockNativeResponder: (e, gestureState) => {...}`\n *\n * In general, for events that have capture equivalents, we update the\n * gestureState once in the capture phase and can use it in the bubble phase\n * as well.\n *\n * Be careful with onStartShould* callbacks. They only reflect updated\n * `gestureState` for start/end events that bubble/capture to the Node.\n * Once the node is the responder, you can rely on every start/end event\n * being processed by the gesture and `gestureState` being updated\n * accordingly. (numberActiveTouches) may not be totally accurate unless you\n * are the responder.\n */\n create(config) {\n var interactionState = {\n handle: null,\n shouldCancelClick: false,\n timeout: null\n };\n var gestureState = {\n // Useful for debugging\n stateID: Math.random(),\n moveX: 0,\n moveY: 0,\n x0: 0,\n y0: 0,\n dx: 0,\n dy: 0,\n vx: 0,\n vy: 0,\n numberActiveTouches: 0,\n _accountsForMovesUpTo: 0\n };\n var panHandlers = {\n onStartShouldSetResponder(event) {\n return config.onStartShouldSetPanResponder == null ? false : config.onStartShouldSetPanResponder(event, gestureState);\n },\n onMoveShouldSetResponder(event) {\n return config.onMoveShouldSetPanResponder == null ? false : config.onMoveShouldSetPanResponder(event, gestureState);\n },\n onStartShouldSetResponderCapture(event) {\n // TODO: Actually, we should reinitialize the state any time\n // touches.length increases from 0 active to > 0 active.\n if (event.nativeEvent.touches.length === 1) {\n PanResponder._initializeGestureState(gestureState);\n }\n gestureState.numberActiveTouches = event.touchHistory.numberActiveTouches;\n return config.onStartShouldSetPanResponderCapture != null ? config.onStartShouldSetPanResponderCapture(event, gestureState) : false;\n },\n onMoveShouldSetResponderCapture(event) {\n var touchHistory = event.touchHistory;\n // Responder system incorrectly dispatches should* to current responder\n // Filter out any touch moves past the first one - we would have\n // already processed multi-touch geometry during the first event.\n if (gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp) {\n return false;\n }\n PanResponder._updateGestureStateOnMove(gestureState, touchHistory);\n return config.onMoveShouldSetPanResponderCapture ? config.onMoveShouldSetPanResponderCapture(event, gestureState) : false;\n },\n onResponderGrant(event) {\n if (!interactionState.handle) {\n interactionState.handle = InteractionManager.createInteractionHandle();\n }\n if (interactionState.timeout) {\n clearInteractionTimeout(interactionState);\n }\n interactionState.shouldCancelClick = true;\n gestureState.x0 = currentCentroidX(event.touchHistory);\n gestureState.y0 = currentCentroidY(event.touchHistory);\n gestureState.dx = 0;\n gestureState.dy = 0;\n if (config.onPanResponderGrant) {\n config.onPanResponderGrant(event, gestureState);\n }\n // TODO: t7467124 investigate if this can be removed\n return config.onShouldBlockNativeResponder == null ? true : config.onShouldBlockNativeResponder(event, gestureState);\n },\n onResponderReject(event) {\n clearInteractionHandle(interactionState, config.onPanResponderReject, event, gestureState);\n },\n onResponderRelease(event) {\n clearInteractionHandle(interactionState, config.onPanResponderRelease, event, gestureState);\n setInteractionTimeout(interactionState);\n PanResponder._initializeGestureState(gestureState);\n },\n onResponderStart(event) {\n var touchHistory = event.touchHistory;\n gestureState.numberActiveTouches = touchHistory.numberActiveTouches;\n if (config.onPanResponderStart) {\n config.onPanResponderStart(event, gestureState);\n }\n },\n onResponderMove(event) {\n var touchHistory = event.touchHistory;\n // Guard against the dispatch of two touch moves when there are two\n // simultaneously changed touches.\n if (gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp) {\n return;\n }\n // Filter out any touch moves past the first one - we would have\n // already processed multi-touch geometry during the first event.\n PanResponder._updateGestureStateOnMove(gestureState, touchHistory);\n if (config.onPanResponderMove) {\n config.onPanResponderMove(event, gestureState);\n }\n },\n onResponderEnd(event) {\n var touchHistory = event.touchHistory;\n gestureState.numberActiveTouches = touchHistory.numberActiveTouches;\n clearInteractionHandle(interactionState, config.onPanResponderEnd, event, gestureState);\n },\n onResponderTerminate(event) {\n clearInteractionHandle(interactionState, config.onPanResponderTerminate, event, gestureState);\n setInteractionTimeout(interactionState);\n PanResponder._initializeGestureState(gestureState);\n },\n onResponderTerminationRequest(event) {\n return config.onPanResponderTerminationRequest == null ? true : config.onPanResponderTerminationRequest(event, gestureState);\n },\n // We do not want to trigger 'click' activated gestures or native behaviors\n // on any pan target that is under a mouse cursor when it is released.\n // Browsers will natively cancel 'click' events on a target if a non-mouse\n // active pointer moves.\n onClickCapture: event => {\n if (interactionState.shouldCancelClick === true) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n };\n return {\n panHandlers,\n getInteractionHandle() {\n return interactionState.handle;\n }\n };\n }\n};\nfunction clearInteractionHandle(interactionState, callback, event, gestureState) {\n if (interactionState.handle) {\n InteractionManager.clearInteractionHandle(interactionState.handle);\n interactionState.handle = null;\n }\n if (callback) {\n callback(event, gestureState);\n }\n}\nfunction clearInteractionTimeout(interactionState) {\n clearTimeout(interactionState.timeout);\n}\nfunction setInteractionTimeout(interactionState) {\n interactionState.timeout = setTimeout(() => {\n interactionState.shouldCancelClick = false;\n }, 250);\n}\nexport default PanResponder;","import PanResponder from '../../vendor/react-native/PanResponder';\nexport default PanResponder;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"children\", \"enabled\", \"onValueChange\", \"selectedValue\", \"style\", \"testID\", \"itemStyle\", \"mode\", \"prompt\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport createElement from '../createElement';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport usePlatformMethods from '../../modules/usePlatformMethods';\nimport PickerItem from './PickerItem';\nimport StyleSheet from '../StyleSheet';\nvar Picker = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var children = props.children,\n enabled = props.enabled,\n onValueChange = props.onValueChange,\n selectedValue = props.selectedValue,\n style = props.style,\n testID = props.testID,\n itemStyle = props.itemStyle,\n mode = props.mode,\n prompt = props.prompt,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var hostRef = React.useRef(null);\n function handleChange(e) {\n var _e$target = e.target,\n selectedIndex = _e$target.selectedIndex,\n value = _e$target.value;\n if (onValueChange) {\n onValueChange(value, selectedIndex);\n }\n }\n\n // $FlowFixMe\n var supportedProps = _objectSpread({\n children,\n disabled: enabled === false ? true : undefined,\n onChange: handleChange,\n style: [styles.initial, style],\n testID,\n value: selectedValue\n }, other);\n var platformMethodsRef = usePlatformMethods(supportedProps);\n var setRef = useMergeRefs(hostRef, platformMethodsRef, forwardedRef);\n supportedProps.ref = setRef;\n return createElement('select', supportedProps);\n});\n\n// $FlowFixMe\nPicker.Item = PickerItem;\nvar styles = StyleSheet.create({\n initial: {\n fontFamily: 'System',\n fontSize: 'inherit',\n margin: 0\n }\n});\nexport default Picker;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport createElement from '../createElement';\nexport default function PickerItem(props) {\n var color = props.color,\n label = props.label,\n testID = props.testID,\n value = props.value;\n var style = {\n color\n };\n return createElement('option', {\n children: label,\n style,\n testID,\n value\n });\n}","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport Dimensions from '../Dimensions';\n\n/**\n * PixelRatio gives access to the device pixel density.\n */\nexport default class PixelRatio {\n /**\n * Returns the device pixel density.\n */\n static get() {\n return Dimensions.get('window').scale;\n }\n\n /**\n * No equivalent for Web\n */\n static getFontScale() {\n return Dimensions.get('window').fontScale || PixelRatio.get();\n }\n\n /**\n * Converts a layout size (dp) to pixel size (px).\n * Guaranteed to return an integer number.\n */\n static getPixelSizeForLayoutSize(layoutSize) {\n return Math.round(layoutSize * PixelRatio.get());\n }\n\n /**\n * Rounds a layout size (dp) to the nearest layout size that corresponds to\n * an integer number of pixels. For example, on a device with a PixelRatio\n * of 3, `PixelRatio.roundToNearestPixel(8.4) = 8.33`, which corresponds to\n * exactly (8.33 * 3) = 25 pixels.\n */\n static roundToNearestPixel(layoutSize) {\n var ratio = PixelRatio.get();\n return Math.round(layoutSize * ratio) / ratio;\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n'use strict';\n\nimport canUseDOM from '../canUseDom';\nvar emptyFunction = () => {};\nfunction supportsPassiveEvents() {\n var supported = false;\n // Check if browser supports event with passive listeners\n // https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support\n if (canUseDOM) {\n try {\n var options = {};\n Object.defineProperty(options, 'passive', {\n get() {\n supported = true;\n return false;\n }\n });\n window.addEventListener('test', null, options);\n window.removeEventListener('test', null, options);\n } catch (e) {}\n }\n return supported;\n}\nvar canUsePassiveEvents = supportsPassiveEvents();\nfunction getOptions(options) {\n if (options == null) {\n return false;\n }\n return canUsePassiveEvents ? options : Boolean(options.capture);\n}\n\n/**\n * Shim generic API compatibility with ReactDOM's synthetic events, without needing the\n * large amount of code ReactDOM uses to do this. Ideally we wouldn't use a synthetic\n * event wrapper at all.\n */\nfunction isPropagationStopped() {\n return this.cancelBubble;\n}\nfunction isDefaultPrevented() {\n return this.defaultPrevented;\n}\nfunction normalizeEvent(event) {\n event.nativeEvent = event;\n event.persist = emptyFunction;\n event.isDefaultPrevented = isDefaultPrevented;\n event.isPropagationStopped = isPropagationStopped;\n return event;\n}\n\n/**\n *\n */\nexport function addEventListener(target, type, listener, options) {\n var opts = getOptions(options);\n var compatListener = e => listener(normalizeEvent(e));\n target.addEventListener(type, compatListener, opts);\n return function removeEventListener() {\n if (target != null) {\n target.removeEventListener(type, compatListener, opts);\n }\n };\n}","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { addEventListener } from '../addEventListener';\nimport canUseDOM from '../canUseDom';\nvar supportsPointerEvent = () => !!(typeof window !== 'undefined' && window.PointerEvent != null);\nvar activeModality = 'keyboard';\nvar modality = 'keyboard';\nvar previousModality;\nvar previousActiveModality;\nvar isEmulatingMouseEvents = false;\nvar listeners = new Set();\nvar KEYBOARD = 'keyboard';\nvar MOUSE = 'mouse';\nvar TOUCH = 'touch';\nvar BLUR = 'blur';\nvar CONTEXTMENU = 'contextmenu';\nvar FOCUS = 'focus';\nvar KEYDOWN = 'keydown';\nvar MOUSEDOWN = 'mousedown';\nvar MOUSEMOVE = 'mousemove';\nvar MOUSEUP = 'mouseup';\nvar POINTERDOWN = 'pointerdown';\nvar POINTERMOVE = 'pointermove';\nvar SCROLL = 'scroll';\nvar SELECTIONCHANGE = 'selectionchange';\nvar TOUCHCANCEL = 'touchcancel';\nvar TOUCHMOVE = 'touchmove';\nvar TOUCHSTART = 'touchstart';\nvar VISIBILITYCHANGE = 'visibilitychange';\nvar bubbleOptions = {\n passive: true\n};\nvar captureOptions = {\n capture: true,\n passive: true\n};\nfunction restoreModality() {\n if (previousModality != null || previousActiveModality != null) {\n if (previousModality != null) {\n modality = previousModality;\n previousModality = null;\n }\n if (previousActiveModality != null) {\n activeModality = previousActiveModality;\n previousActiveModality = null;\n }\n callListeners();\n }\n}\nfunction onBlurWindow() {\n previousModality = modality;\n previousActiveModality = activeModality;\n activeModality = KEYBOARD;\n modality = KEYBOARD;\n callListeners();\n // for fallback events\n isEmulatingMouseEvents = false;\n}\nfunction onFocusWindow() {\n restoreModality();\n}\nfunction onKeyDown(event) {\n if (event.metaKey || event.altKey || event.ctrlKey) {\n return;\n }\n if (modality !== KEYBOARD) {\n modality = KEYBOARD;\n activeModality = KEYBOARD;\n callListeners();\n }\n}\nfunction onVisibilityChange() {\n if (document.visibilityState !== 'hidden') {\n restoreModality();\n }\n}\nfunction onPointerish(event) {\n var eventType = event.type;\n if (supportsPointerEvent()) {\n if (eventType === POINTERDOWN) {\n if (activeModality !== event.pointerType) {\n modality = event.pointerType;\n activeModality = event.pointerType;\n callListeners();\n }\n return;\n }\n if (eventType === POINTERMOVE) {\n if (modality !== event.pointerType) {\n modality = event.pointerType;\n callListeners();\n }\n return;\n }\n }\n // Fallback for non-PointerEvent environment\n else {\n if (!isEmulatingMouseEvents) {\n if (eventType === MOUSEDOWN) {\n if (activeModality !== MOUSE) {\n modality = MOUSE;\n activeModality = MOUSE;\n callListeners();\n }\n }\n if (eventType === MOUSEMOVE) {\n if (modality !== MOUSE) {\n modality = MOUSE;\n callListeners();\n }\n }\n }\n\n // Flag when browser may produce emulated events\n if (eventType === TOUCHSTART) {\n isEmulatingMouseEvents = true;\n if (event.touches && event.touches.length > 1) {\n isEmulatingMouseEvents = false;\n }\n if (activeModality !== TOUCH) {\n modality = TOUCH;\n activeModality = TOUCH;\n callListeners();\n }\n return;\n }\n\n // Remove flag after emulated events are finished or cancelled, and if an\n // event occurs that cuts short a touch event sequence.\n if (eventType === CONTEXTMENU || eventType === MOUSEUP || eventType === SELECTIONCHANGE || eventType === SCROLL || eventType === TOUCHCANCEL || eventType === TOUCHMOVE) {\n isEmulatingMouseEvents = false;\n }\n }\n}\nif (canUseDOM) {\n // Window events\n addEventListener(window, BLUR, onBlurWindow, bubbleOptions);\n addEventListener(window, FOCUS, onFocusWindow, bubbleOptions);\n // Must be capture phase because 'stopPropagation' might prevent these\n // events bubbling to the document.\n addEventListener(document, KEYDOWN, onKeyDown, captureOptions);\n addEventListener(document, VISIBILITYCHANGE, onVisibilityChange, captureOptions);\n addEventListener(document, POINTERDOWN, onPointerish, captureOptions);\n addEventListener(document, POINTERMOVE, onPointerish, captureOptions);\n // Fallback events\n addEventListener(document, CONTEXTMENU, onPointerish, captureOptions);\n addEventListener(document, MOUSEDOWN, onPointerish, captureOptions);\n addEventListener(document, MOUSEMOVE, onPointerish, captureOptions);\n addEventListener(document, MOUSEUP, onPointerish, captureOptions);\n addEventListener(document, TOUCHCANCEL, onPointerish, captureOptions);\n addEventListener(document, TOUCHMOVE, onPointerish, captureOptions);\n addEventListener(document, TOUCHSTART, onPointerish, captureOptions);\n addEventListener(document, SELECTIONCHANGE, onPointerish, captureOptions);\n addEventListener(document, SCROLL, onPointerish, captureOptions);\n}\nfunction callListeners() {\n var value = {\n activeModality,\n modality\n };\n listeners.forEach(listener => {\n listener(value);\n });\n}\nexport function getActiveModality() {\n return activeModality;\n}\nexport function getModality() {\n return modality;\n}\nexport function addModalityListener(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n}\nexport function testOnly_resetActiveModality() {\n isEmulatingMouseEvents = false;\n activeModality = KEYBOARD;\n modality = KEYBOARD;\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { addEventListener } from '../addEventListener';\nimport useLayoutEffect from '../useLayoutEffect';\nimport useStable from '../useStable';\n/**\n * This can be used with any event type include custom events.\n *\n * const click = useEvent('click', options);\n * useEffect(() => {\n * click.setListener(target, onClick);\n * return () => click.clear();\n * }).\n */\nexport default function useEvent(eventType, options) {\n var targetListeners = useStable(() => new Map());\n var addListener = useStable(() => {\n return (target, callback) => {\n var removeTargetListener = targetListeners.get(target);\n if (removeTargetListener != null) {\n removeTargetListener();\n }\n if (callback == null) {\n targetListeners.delete(target);\n callback = () => {};\n }\n var removeEventListener = addEventListener(target, eventType, callback, options);\n targetListeners.set(target, removeEventListener);\n return removeEventListener;\n };\n });\n useLayoutEffect(() => {\n return () => {\n targetListeners.forEach(removeListener => {\n removeListener();\n });\n targetListeners.clear();\n };\n }, [targetListeners]);\n return addListener;\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { getModality } from '../modality';\nimport useEvent from '../useEvent';\nimport useLayoutEffect from '../useLayoutEffect';\n\n/**\n * Types\n */\n\n/**\n * Implementation\n */\n\nvar emptyObject = {};\nvar opts = {\n passive: true\n};\nvar lockEventType = 'react-gui:hover:lock';\nvar unlockEventType = 'react-gui:hover:unlock';\nvar supportsPointerEvent = () => !!(typeof window !== 'undefined' && window.PointerEvent != null);\nfunction dispatchCustomEvent(target, type, payload) {\n var event = document.createEvent('CustomEvent');\n var _ref = payload || emptyObject,\n _ref$bubbles = _ref.bubbles,\n bubbles = _ref$bubbles === void 0 ? true : _ref$bubbles,\n _ref$cancelable = _ref.cancelable,\n cancelable = _ref$cancelable === void 0 ? true : _ref$cancelable,\n detail = _ref.detail;\n event.initCustomEvent(type, bubbles, cancelable, detail);\n target.dispatchEvent(event);\n}\n\n// This accounts for the non-PointerEvent fallback events.\nfunction getPointerType(event) {\n var pointerType = event.pointerType;\n return pointerType != null ? pointerType : getModality();\n}\nexport default function useHover(targetRef, config) {\n var contain = config.contain,\n disabled = config.disabled,\n onHoverStart = config.onHoverStart,\n onHoverChange = config.onHoverChange,\n onHoverUpdate = config.onHoverUpdate,\n onHoverEnd = config.onHoverEnd;\n var canUsePE = supportsPointerEvent();\n var addMoveListener = useEvent(canUsePE ? 'pointermove' : 'mousemove', opts);\n var addEnterListener = useEvent(canUsePE ? 'pointerenter' : 'mouseenter', opts);\n var addLeaveListener = useEvent(canUsePE ? 'pointerleave' : 'mouseleave', opts);\n // These custom events are used to implement the \"contain\" prop.\n var addLockListener = useEvent(lockEventType, opts);\n var addUnlockListener = useEvent(unlockEventType, opts);\n useLayoutEffect(() => {\n var target = targetRef.current;\n if (target !== null) {\n /**\n * End the hover gesture\n */\n var hoverEnd = function hoverEnd(e) {\n if (onHoverEnd != null) {\n onHoverEnd(e);\n }\n if (onHoverChange != null) {\n onHoverChange(false);\n }\n // Remove the listeners once finished.\n addMoveListener(target, null);\n addLeaveListener(target, null);\n };\n\n /**\n * Leave element\n */\n var leaveListener = function leaveListener(e) {\n var target = targetRef.current;\n if (target != null && getPointerType(e) !== 'touch') {\n if (contain) {\n dispatchCustomEvent(target, unlockEventType);\n }\n hoverEnd(e);\n }\n };\n\n /**\n * Move within element\n */\n var moveListener = function moveListener(e) {\n if (getPointerType(e) !== 'touch') {\n if (onHoverUpdate != null) {\n // Not all browsers have these properties\n if (e.x == null) {\n e.x = e.clientX;\n }\n if (e.y == null) {\n e.y = e.clientY;\n }\n onHoverUpdate(e);\n }\n }\n };\n\n /**\n * Start the hover gesture\n */\n var hoverStart = function hoverStart(e) {\n if (onHoverStart != null) {\n onHoverStart(e);\n }\n if (onHoverChange != null) {\n onHoverChange(true);\n }\n // Set the listeners needed for the rest of the hover gesture.\n if (onHoverUpdate != null) {\n addMoveListener(target, !disabled ? moveListener : null);\n }\n addLeaveListener(target, !disabled ? leaveListener : null);\n };\n\n /**\n * Enter element\n */\n var enterListener = function enterListener(e) {\n var target = targetRef.current;\n if (target != null && getPointerType(e) !== 'touch') {\n if (contain) {\n dispatchCustomEvent(target, lockEventType);\n }\n hoverStart(e);\n var lockListener = function lockListener(lockEvent) {\n if (lockEvent.target !== target) {\n hoverEnd(e);\n }\n };\n var unlockListener = function unlockListener(lockEvent) {\n if (lockEvent.target !== target) {\n hoverStart(e);\n }\n };\n addLockListener(target, !disabled ? lockListener : null);\n addUnlockListener(target, !disabled ? unlockListener : null);\n }\n };\n addEnterListener(target, !disabled ? enterListener : null);\n }\n }, [addEnterListener, addMoveListener, addLeaveListener, addLockListener, addUnlockListener, contain, disabled, onHoverStart, onHoverChange, onHoverUpdate, onHoverEnd, targetRef]);\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\n'use strict';\n\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"children\", \"delayLongPress\", \"delayPressIn\", \"delayPressOut\", \"disabled\", \"onBlur\", \"onContextMenu\", \"onFocus\", \"onHoverIn\", \"onHoverOut\", \"onKeyDown\", \"onLongPress\", \"onPress\", \"onPressMove\", \"onPressIn\", \"onPressOut\", \"style\", \"tabIndex\", \"testOnly_hovered\", \"testOnly_pressed\"];\nimport * as React from 'react';\nimport { forwardRef, memo, useMemo, useState, useRef } from 'react';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport useHover from '../../modules/useHover';\nimport usePressEvents from '../../modules/usePressEvents';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\n/**\n * Component used to build display components that should respond to whether the\n * component is currently pressed or not.\n */\nfunction Pressable(props, forwardedRef) {\n var children = props.children,\n delayLongPress = props.delayLongPress,\n delayPressIn = props.delayPressIn,\n delayPressOut = props.delayPressOut,\n disabled = props.disabled,\n onBlur = props.onBlur,\n onContextMenu = props.onContextMenu,\n onFocus = props.onFocus,\n onHoverIn = props.onHoverIn,\n onHoverOut = props.onHoverOut,\n onKeyDown = props.onKeyDown,\n onLongPress = props.onLongPress,\n onPress = props.onPress,\n onPressMove = props.onPressMove,\n onPressIn = props.onPressIn,\n onPressOut = props.onPressOut,\n style = props.style,\n tabIndex = props.tabIndex,\n testOnly_hovered = props.testOnly_hovered,\n testOnly_pressed = props.testOnly_pressed,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n var _useForceableState = useForceableState(testOnly_hovered === true),\n hovered = _useForceableState[0],\n setHovered = _useForceableState[1];\n var _useForceableState2 = useForceableState(false),\n focused = _useForceableState2[0],\n setFocused = _useForceableState2[1];\n var _useForceableState3 = useForceableState(testOnly_pressed === true),\n pressed = _useForceableState3[0],\n setPressed = _useForceableState3[1];\n var hostRef = useRef(null);\n var setRef = useMergeRefs(forwardedRef, hostRef);\n var pressConfig = useMemo(() => ({\n delayLongPress,\n delayPressStart: delayPressIn,\n delayPressEnd: delayPressOut,\n disabled,\n onLongPress,\n onPress,\n onPressChange: setPressed,\n onPressStart: onPressIn,\n onPressMove,\n onPressEnd: onPressOut\n }), [delayLongPress, delayPressIn, delayPressOut, disabled, onLongPress, onPress, onPressIn, onPressMove, onPressOut, setPressed]);\n var pressEventHandlers = usePressEvents(hostRef, pressConfig);\n var onContextMenuPress = pressEventHandlers.onContextMenu,\n onKeyDownPress = pressEventHandlers.onKeyDown;\n useHover(hostRef, {\n contain: true,\n disabled,\n onHoverChange: setHovered,\n onHoverStart: onHoverIn,\n onHoverEnd: onHoverOut\n });\n var interactionState = {\n hovered,\n focused,\n pressed\n };\n var blurHandler = React.useCallback(e => {\n if (e.nativeEvent.target === hostRef.current) {\n setFocused(false);\n if (onBlur != null) {\n onBlur(e);\n }\n }\n }, [hostRef, setFocused, onBlur]);\n var focusHandler = React.useCallback(e => {\n if (e.nativeEvent.target === hostRef.current) {\n setFocused(true);\n if (onFocus != null) {\n onFocus(e);\n }\n }\n }, [hostRef, setFocused, onFocus]);\n var contextMenuHandler = React.useCallback(e => {\n if (onContextMenuPress != null) {\n onContextMenuPress(e);\n }\n if (onContextMenu != null) {\n onContextMenu(e);\n }\n }, [onContextMenu, onContextMenuPress]);\n var keyDownHandler = React.useCallback(e => {\n if (onKeyDownPress != null) {\n onKeyDownPress(e);\n }\n if (onKeyDown != null) {\n onKeyDown(e);\n }\n }, [onKeyDown, onKeyDownPress]);\n var _tabIndex;\n if (tabIndex !== undefined) {\n _tabIndex = tabIndex;\n } else {\n _tabIndex = disabled ? -1 : 0;\n }\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, pressEventHandlers, {\n \"aria-disabled\": disabled,\n onBlur: blurHandler,\n onContextMenu: contextMenuHandler,\n onFocus: focusHandler,\n onKeyDown: keyDownHandler,\n ref: setRef,\n style: [disabled ? styles.disabled : styles.active, typeof style === 'function' ? style(interactionState) : style],\n tabIndex: _tabIndex\n }), typeof children === 'function' ? children(interactionState) : children);\n}\nfunction useForceableState(forced) {\n var _useState = useState(false),\n bool = _useState[0],\n setBool = _useState[1];\n return [bool || forced, setBool];\n}\nvar styles = StyleSheet.create({\n active: {\n cursor: 'pointer',\n touchAction: 'manipulation'\n },\n disabled: {\n pointerEvents: 'box-none'\n }\n});\nvar MemoedPressable = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(Pressable));\nMemoedPressable.displayName = 'Pressable';\nexport default MemoedPressable;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"color\", \"indeterminate\", \"progress\", \"trackColor\", \"style\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nvar ProgressBar = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _props$color = props.color,\n color = _props$color === void 0 ? '#1976D2' : _props$color,\n _props$indeterminate = props.indeterminate,\n indeterminate = _props$indeterminate === void 0 ? false : _props$indeterminate,\n _props$progress = props.progress,\n progress = _props$progress === void 0 ? 0 : _props$progress,\n _props$trackColor = props.trackColor,\n trackColor = _props$trackColor === void 0 ? 'transparent' : _props$trackColor,\n style = props.style,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var percentageProgress = progress * 100;\n var width = indeterminate ? '25%' : percentageProgress + \"%\";\n return /*#__PURE__*/React.createElement(View, _extends({}, other, {\n \"aria-valuemax\": 100,\n \"aria-valuemin\": 0,\n \"aria-valuenow\": indeterminate ? null : percentageProgress,\n ref: ref,\n role: \"progressbar\",\n style: [styles.track, style, {\n backgroundColor: trackColor\n }]\n }), /*#__PURE__*/React.createElement(View, {\n style: [{\n backgroundColor: color,\n width\n }, styles.progress, indeterminate && styles.animation]\n }));\n});\nProgressBar.displayName = 'ProgressBar';\nvar styles = StyleSheet.create({\n track: {\n forcedColorAdjust: 'none',\n height: 5,\n overflow: 'hidden',\n userSelect: 'none',\n zIndex: 0\n },\n progress: {\n forcedColorAdjust: 'none',\n height: '100%',\n zIndex: -1\n },\n animation: {\n animationDuration: '1s',\n animationKeyframes: [{\n '0%': {\n transform: 'translateX(-100%)'\n },\n '100%': {\n transform: 'translateX(400%)'\n }\n }],\n animationTimingFunction: 'linear',\n animationIterationCount: 'infinite'\n }\n});\nexport default ProgressBar;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"colors\", \"enabled\", \"onRefresh\", \"progressBackgroundColor\", \"progressViewOffset\", \"refreshing\", \"size\", \"tintColor\", \"title\", \"titleColor\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport View from '../View';\nimport React from 'react';\nfunction RefreshControl(props) {\n var colors = props.colors,\n enabled = props.enabled,\n onRefresh = props.onRefresh,\n progressBackgroundColor = props.progressBackgroundColor,\n progressViewOffset = props.progressViewOffset,\n refreshing = props.refreshing,\n size = props.size,\n tintColor = props.tintColor,\n title = props.title,\n titleColor = props.titleColor,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n return /*#__PURE__*/React.createElement(View, rest);\n}\nexport default RefreshControl;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"style\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nimport canUseDOM from '../../modules/canUseDom';\nvar cssFunction = function () {\n if (canUseDOM && window.CSS && window.CSS.supports && window.CSS.supports('top: constant(safe-area-inset-top)')) {\n return 'constant';\n }\n return 'env';\n}();\nvar SafeAreaView = /*#__PURE__*/React.forwardRef((props, ref) => {\n var style = props.style,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, {\n ref: ref,\n style: [styles.root, style]\n }));\n});\nSafeAreaView.displayName = 'SafeAreaView';\nvar styles = StyleSheet.create({\n root: {\n paddingTop: cssFunction + \"(safe-area-inset-top)\",\n paddingRight: cssFunction + \"(safe-area-inset-right)\",\n paddingBottom: cssFunction + \"(safe-area-inset-bottom)\",\n paddingLeft: cssFunction + \"(safe-area-inset-left)\"\n }\n});\nexport default SafeAreaView;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"onScroll\", \"onTouchMove\", \"onWheel\", \"scrollEnabled\", \"scrollEventThrottle\", \"showsHorizontalScrollIndicator\", \"showsVerticalScrollIndicator\", \"style\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nimport useMergeRefs from '../../modules/useMergeRefs';\nfunction normalizeScrollEvent(e) {\n return {\n nativeEvent: {\n contentOffset: {\n get x() {\n return e.target.scrollLeft;\n },\n get y() {\n return e.target.scrollTop;\n }\n },\n contentSize: {\n get height() {\n return e.target.scrollHeight;\n },\n get width() {\n return e.target.scrollWidth;\n }\n },\n layoutMeasurement: {\n get height() {\n return e.target.offsetHeight;\n },\n get width() {\n return e.target.offsetWidth;\n }\n }\n },\n timeStamp: Date.now()\n };\n}\nfunction shouldEmitScrollEvent(lastTick, eventThrottle) {\n var timeSinceLastTick = Date.now() - lastTick;\n return eventThrottle > 0 && timeSinceLastTick >= eventThrottle;\n}\n\n/**\n * Encapsulates the Web-specific scroll throttling and disabling logic\n */\nvar ScrollViewBase = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var onScroll = props.onScroll,\n onTouchMove = props.onTouchMove,\n onWheel = props.onWheel,\n _props$scrollEnabled = props.scrollEnabled,\n scrollEnabled = _props$scrollEnabled === void 0 ? true : _props$scrollEnabled,\n _props$scrollEventThr = props.scrollEventThrottle,\n scrollEventThrottle = _props$scrollEventThr === void 0 ? 0 : _props$scrollEventThr,\n showsHorizontalScrollIndicator = props.showsHorizontalScrollIndicator,\n showsVerticalScrollIndicator = props.showsVerticalScrollIndicator,\n style = props.style,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n var scrollState = React.useRef({\n isScrolling: false,\n scrollLastTick: 0\n });\n var scrollTimeout = React.useRef(null);\n var scrollRef = React.useRef(null);\n function createPreventableScrollHandler(handler) {\n return e => {\n if (scrollEnabled) {\n if (handler) {\n handler(e);\n }\n }\n };\n }\n function handleScroll(e) {\n e.stopPropagation();\n if (e.target === scrollRef.current) {\n e.persist();\n // A scroll happened, so the scroll resets the scrollend timeout.\n if (scrollTimeout.current != null) {\n clearTimeout(scrollTimeout.current);\n }\n scrollTimeout.current = setTimeout(() => {\n handleScrollEnd(e);\n }, 100);\n if (scrollState.current.isScrolling) {\n // Scroll last tick may have changed, check if we need to notify\n if (shouldEmitScrollEvent(scrollState.current.scrollLastTick, scrollEventThrottle)) {\n handleScrollTick(e);\n }\n } else {\n // Weren't scrolling, so we must have just started\n handleScrollStart(e);\n }\n }\n }\n function handleScrollStart(e) {\n scrollState.current.isScrolling = true;\n handleScrollTick(e);\n }\n function handleScrollTick(e) {\n scrollState.current.scrollLastTick = Date.now();\n if (onScroll) {\n onScroll(normalizeScrollEvent(e));\n }\n }\n function handleScrollEnd(e) {\n scrollState.current.isScrolling = false;\n if (onScroll) {\n onScroll(normalizeScrollEvent(e));\n }\n }\n var hideScrollbar = showsHorizontalScrollIndicator === false || showsVerticalScrollIndicator === false;\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, {\n onScroll: handleScroll,\n onTouchMove: createPreventableScrollHandler(onTouchMove),\n onWheel: createPreventableScrollHandler(onWheel),\n ref: useMergeRefs(scrollRef, forwardedRef),\n style: [style, !scrollEnabled && styles.scrollDisabled, hideScrollbar && styles.hideScrollbar]\n }));\n});\n\n// Chrome doesn't support e.preventDefault in this case; touch-action must be\n// used to disable scrolling.\n// https://developers.google.com/web/updates/2017/01/scrolling-intervention\nvar styles = StyleSheet.create({\n scrollDisabled: {\n overflowX: 'hidden',\n overflowY: 'hidden',\n touchAction: 'none'\n },\n hideScrollbar: {\n scrollbarWidth: 'none'\n }\n});\nexport default ScrollViewBase;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"contentContainerStyle\", \"horizontal\", \"onContentSizeChange\", \"refreshControl\", \"stickyHeaderIndices\", \"pagingEnabled\", \"forwardedRef\", \"keyboardDismissMode\", \"onScroll\", \"centerContent\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport Dimensions from '../Dimensions';\nimport dismissKeyboard from '../../modules/dismissKeyboard';\nimport invariant from 'fbjs/lib/invariant';\nimport mergeRefs from '../../modules/mergeRefs';\nimport Platform from '../Platform';\nimport ScrollViewBase from './ScrollViewBase';\nimport StyleSheet from '../StyleSheet';\nimport TextInputState from '../../modules/TextInputState';\nimport UIManager from '../UIManager';\nimport View from '../View';\nimport React from 'react';\nimport warning from 'fbjs/lib/warning';\nvar emptyObject = {};\nvar IS_ANIMATING_TOUCH_START_THRESHOLD_MS = 16;\nclass ScrollView extends React.Component {\n constructor() {\n super(...arguments);\n this._scrollNodeRef = null;\n this._innerViewRef = null;\n this.isTouching = false;\n this.lastMomentumScrollBeginTime = 0;\n this.lastMomentumScrollEndTime = 0;\n this.observedScrollSinceBecomingResponder = false;\n this.becameResponderWhileAnimating = false;\n this.scrollResponderHandleScrollShouldSetResponder = () => {\n return this.isTouching;\n };\n this.scrollResponderHandleStartShouldSetResponderCapture = e => {\n // First see if we want to eat taps while the keyboard is up\n // var currentlyFocusedTextInput = TextInputState.currentlyFocusedField();\n // if (!this.props.keyboardShouldPersistTaps &&\n // currentlyFocusedTextInput != null &&\n // e.target !== currentlyFocusedTextInput) {\n // return true;\n // }\n return this.scrollResponderIsAnimating();\n };\n this.scrollResponderHandleTerminationRequest = () => {\n return !this.observedScrollSinceBecomingResponder;\n };\n this.scrollResponderHandleTouchEnd = e => {\n var nativeEvent = e.nativeEvent;\n this.isTouching = nativeEvent.touches.length !== 0;\n this.props.onTouchEnd && this.props.onTouchEnd(e);\n };\n this.scrollResponderHandleResponderRelease = e => {\n this.props.onResponderRelease && this.props.onResponderRelease(e);\n\n // By default scroll views will unfocus a textField\n // if another touch occurs outside of it\n var currentlyFocusedTextInput = TextInputState.currentlyFocusedField();\n if (!this.props.keyboardShouldPersistTaps && currentlyFocusedTextInput != null && e.target !== currentlyFocusedTextInput && !this.observedScrollSinceBecomingResponder && !this.becameResponderWhileAnimating) {\n this.props.onScrollResponderKeyboardDismissed && this.props.onScrollResponderKeyboardDismissed(e);\n TextInputState.blurTextInput(currentlyFocusedTextInput);\n }\n };\n this.scrollResponderHandleScroll = e => {\n this.observedScrollSinceBecomingResponder = true;\n this.props.onScroll && this.props.onScroll(e);\n };\n this.scrollResponderHandleResponderGrant = e => {\n this.observedScrollSinceBecomingResponder = false;\n this.props.onResponderGrant && this.props.onResponderGrant(e);\n this.becameResponderWhileAnimating = this.scrollResponderIsAnimating();\n };\n this.scrollResponderHandleScrollBeginDrag = e => {\n this.props.onScrollBeginDrag && this.props.onScrollBeginDrag(e);\n };\n this.scrollResponderHandleScrollEndDrag = e => {\n this.props.onScrollEndDrag && this.props.onScrollEndDrag(e);\n };\n this.scrollResponderHandleMomentumScrollBegin = e => {\n this.lastMomentumScrollBeginTime = Date.now();\n this.props.onMomentumScrollBegin && this.props.onMomentumScrollBegin(e);\n };\n this.scrollResponderHandleMomentumScrollEnd = e => {\n this.lastMomentumScrollEndTime = Date.now();\n this.props.onMomentumScrollEnd && this.props.onMomentumScrollEnd(e);\n };\n this.scrollResponderHandleTouchStart = e => {\n this.isTouching = true;\n this.props.onTouchStart && this.props.onTouchStart(e);\n };\n this.scrollResponderHandleTouchMove = e => {\n this.props.onTouchMove && this.props.onTouchMove(e);\n };\n this.scrollResponderIsAnimating = () => {\n var now = Date.now();\n var timeSinceLastMomentumScrollEnd = now - this.lastMomentumScrollEndTime;\n var isAnimating = timeSinceLastMomentumScrollEnd < IS_ANIMATING_TOUCH_START_THRESHOLD_MS || this.lastMomentumScrollEndTime < this.lastMomentumScrollBeginTime;\n return isAnimating;\n };\n this.scrollResponderScrollTo = (x, y, animated) => {\n if (typeof x === 'number') {\n console.warn('`scrollResponderScrollTo(x, y, animated)` is deprecated. Use `scrollResponderScrollTo({x: 5, y: 5, animated: true})` instead.');\n } else {\n var _ref = x || emptyObject;\n x = _ref.x;\n y = _ref.y;\n animated = _ref.animated;\n }\n var node = this.getScrollableNode();\n var left = x || 0;\n var top = y || 0;\n if (node != null) {\n if (typeof node.scroll === 'function') {\n node.scroll({\n top,\n left,\n behavior: !animated ? 'auto' : 'smooth'\n });\n } else {\n node.scrollLeft = left;\n node.scrollTop = top;\n }\n }\n };\n this.scrollResponderZoomTo = (rect, animated) => {\n if (Platform.OS !== 'ios') {\n invariant('zoomToRect is not implemented');\n }\n };\n this.scrollResponderScrollNativeHandleToKeyboard = (nodeHandle, additionalOffset, preventNegativeScrollOffset) => {\n this.additionalScrollOffset = additionalOffset || 0;\n this.preventNegativeScrollOffset = !!preventNegativeScrollOffset;\n UIManager.measureLayout(nodeHandle, this.getInnerViewNode(), this.scrollResponderTextInputFocusError, this.scrollResponderInputMeasureAndScrollToKeyboard);\n };\n this.scrollResponderInputMeasureAndScrollToKeyboard = (left, top, width, height) => {\n var keyboardScreenY = Dimensions.get('window').height;\n if (this.keyboardWillOpenTo) {\n keyboardScreenY = this.keyboardWillOpenTo.endCoordinates.screenY;\n }\n var scrollOffsetY = top - keyboardScreenY + height + this.additionalScrollOffset;\n\n // By default, this can scroll with negative offset, pulling the content\n // down so that the target component's bottom meets the keyboard's top.\n // If requested otherwise, cap the offset at 0 minimum to avoid content\n // shifting down.\n if (this.preventNegativeScrollOffset) {\n scrollOffsetY = Math.max(0, scrollOffsetY);\n }\n this.scrollResponderScrollTo({\n x: 0,\n y: scrollOffsetY,\n animated: true\n });\n this.additionalOffset = 0;\n this.preventNegativeScrollOffset = false;\n };\n this.scrollResponderKeyboardWillShow = e => {\n this.keyboardWillOpenTo = e;\n this.props.onKeyboardWillShow && this.props.onKeyboardWillShow(e);\n };\n this.scrollResponderKeyboardWillHide = e => {\n this.keyboardWillOpenTo = null;\n this.props.onKeyboardWillHide && this.props.onKeyboardWillHide(e);\n };\n this.scrollResponderKeyboardDidShow = e => {\n // TODO(7693961): The event for DidShow is not available on iOS yet.\n // Use the one from WillShow and do not assign.\n if (e) {\n this.keyboardWillOpenTo = e;\n }\n this.props.onKeyboardDidShow && this.props.onKeyboardDidShow(e);\n };\n this.scrollResponderKeyboardDidHide = e => {\n this.keyboardWillOpenTo = null;\n this.props.onKeyboardDidHide && this.props.onKeyboardDidHide(e);\n };\n this.flashScrollIndicators = () => {\n this.scrollResponderFlashScrollIndicators();\n };\n this.getScrollResponder = () => {\n return this;\n };\n this.getScrollableNode = () => {\n return this._scrollNodeRef;\n };\n this.getInnerViewRef = () => {\n return this._innerViewRef;\n };\n this.getInnerViewNode = () => {\n return this._innerViewRef;\n };\n this.getNativeScrollRef = () => {\n return this._scrollNodeRef;\n };\n this.scrollTo = (y, x, animated) => {\n if (typeof y === 'number') {\n console.warn('`scrollTo(y, x, animated)` is deprecated. Use `scrollTo({x: 5, y: 5, animated: true})` instead.');\n } else {\n var _ref2 = y || emptyObject;\n x = _ref2.x;\n y = _ref2.y;\n animated = _ref2.animated;\n }\n this.scrollResponderScrollTo({\n x: x || 0,\n y: y || 0,\n animated: animated !== false\n });\n };\n this.scrollToEnd = options => {\n // Default to true\n var animated = (options && options.animated) !== false;\n var horizontal = this.props.horizontal;\n var scrollResponderNode = this.getScrollableNode();\n var x = horizontal ? scrollResponderNode.scrollWidth : 0;\n var y = horizontal ? 0 : scrollResponderNode.scrollHeight;\n this.scrollResponderScrollTo({\n x,\n y,\n animated\n });\n };\n this._handleContentOnLayout = e => {\n var _e$nativeEvent$layout = e.nativeEvent.layout,\n width = _e$nativeEvent$layout.width,\n height = _e$nativeEvent$layout.height;\n this.props.onContentSizeChange(width, height);\n };\n this._handleScroll = e => {\n if (process.env.NODE_ENV !== 'production') {\n if (this.props.onScroll && this.props.scrollEventThrottle == null) {\n console.log('You specified `onScroll` on a but not ' + '`scrollEventThrottle`. You will only receive one event. ' + 'Using `16` you get all the events but be aware that it may ' + \"cause frame drops, use a bigger number if you don't need as \" + 'much precision.');\n }\n }\n if (this.props.keyboardDismissMode === 'on-drag') {\n dismissKeyboard();\n }\n this.scrollResponderHandleScroll(e);\n };\n this._setInnerViewRef = node => {\n this._innerViewRef = node;\n };\n this._setScrollNodeRef = node => {\n this._scrollNodeRef = node;\n // ScrollView needs to add more methods to the hostNode in addition to those\n // added by `usePlatformMethods`. This is temporarily until an API like\n // `ScrollView.scrollTo(hostNode, { x, y })` is added to React Native.\n if (node != null) {\n node.getScrollResponder = this.getScrollResponder;\n node.getInnerViewNode = this.getInnerViewNode;\n node.getInnerViewRef = this.getInnerViewRef;\n node.getNativeScrollRef = this.getNativeScrollRef;\n node.getScrollableNode = this.getScrollableNode;\n node.scrollTo = this.scrollTo;\n node.scrollToEnd = this.scrollToEnd;\n node.flashScrollIndicators = this.flashScrollIndicators;\n node.scrollResponderZoomTo = this.scrollResponderZoomTo;\n node.scrollResponderScrollNativeHandleToKeyboard = this.scrollResponderScrollNativeHandleToKeyboard;\n }\n var ref = mergeRefs(this.props.forwardedRef);\n ref(node);\n };\n }\n /**\n * Merely touch starting is not sufficient for a scroll view to become the\n * responder. Being the \"responder\" means that the very next touch move/end\n * event will result in an action/movement.\n *\n * Invoke this from an `onStartShouldSetResponder` event.\n *\n * `onStartShouldSetResponder` is used when the next move/end will trigger\n * some UI movement/action, but when you want to yield priority to views\n * nested inside of the view.\n *\n * There may be some cases where scroll views actually should return `true`\n * from `onStartShouldSetResponder`: Any time we are detecting a standard tap\n * that gives priority to nested views.\n *\n * - If a single tap on the scroll view triggers an action such as\n * recentering a map style view yet wants to give priority to interaction\n * views inside (such as dropped pins or labels), then we would return true\n * from this method when there is a single touch.\n *\n * - Similar to the previous case, if a two finger \"tap\" should trigger a\n * zoom, we would check the `touches` count, and if `>= 2`, we would return\n * true.\n *\n */\n scrollResponderHandleStartShouldSetResponder() {\n return false;\n }\n\n /**\n * There are times when the scroll view wants to become the responder\n * (meaning respond to the next immediate `touchStart/touchEnd`), in a way\n * that *doesn't* give priority to nested views (hence the capture phase):\n *\n * - Currently animating.\n * - Tapping anywhere that is not the focused input, while the keyboard is\n * up (which should dismiss the keyboard).\n *\n * Invoke this from an `onStartShouldSetResponderCapture` event.\n */\n\n /**\n * Invoke this from an `onResponderReject` event.\n *\n * Some other element is not yielding its role as responder. Normally, we'd\n * just disable the `UIScrollView`, but a touch has already began on it, the\n * `UIScrollView` will not accept being disabled after that. The easiest\n * solution for now is to accept the limitation of disallowing this\n * altogether. To improve this, find a way to disable the `UIScrollView` after\n * a touch has already started.\n */\n scrollResponderHandleResponderReject() {\n warning(false, \"ScrollView doesn't take rejection well - scrolls anyway\");\n }\n\n /**\n * We will allow the scroll view to give up its lock iff it acquired the lock\n * during an animation. This is a very useful default that happens to satisfy\n * many common user experiences.\n *\n * - Stop a scroll on the left edge, then turn that into an outer view's\n * backswipe.\n * - Stop a scroll mid-bounce at the top, continue pulling to have the outer\n * view dismiss.\n * - However, without catching the scroll view mid-bounce (while it is\n * motionless), if you drag far enough for the scroll view to become\n * responder (and therefore drag the scroll view a bit), any backswipe\n * navigation of a swipe gesture higher in the view hierarchy, should be\n * rejected.\n */\n\n /**\n * Displays the scroll indicators momentarily.\n */\n scrollResponderFlashScrollIndicators() {}\n\n /**\n * This method should be used as the callback to onFocus in a TextInputs'\n * parent view. Note that any module using this mixin needs to return\n * the parent view's ref in getScrollViewRef() in order to use this method.\n * @param {any} nodeHandle The TextInput node handle\n * @param {number} additionalOffset The scroll view's top \"contentInset\".\n * Default is 0.\n * @param {bool} preventNegativeScrolling Whether to allow pulling the content\n * down to make it meet the keyboard's top. Default is false.\n */\n\n scrollResponderTextInputFocusError(e) {\n console.error('Error measuring text field: ', e);\n }\n\n /**\n * Warning, this may be called several times for a single keyboard opening.\n * It's best to store the information in this method and then take any action\n * at a later point (either in `keyboardDidShow` or other).\n *\n * Here's the order that events occur in:\n * - focus\n * - willShow {startCoordinates, endCoordinates} several times\n * - didShow several times\n * - blur\n * - willHide {startCoordinates, endCoordinates} several times\n * - didHide several times\n *\n * The `ScrollResponder` providesModule callbacks for each of these events.\n * Even though any user could have easily listened to keyboard events\n * themselves, using these `props` callbacks ensures that ordering of events\n * is consistent - and not dependent on the order that the keyboard events are\n * subscribed to. This matters when telling the scroll view to scroll to where\n * the keyboard is headed - the scroll responder better have been notified of\n * the keyboard destination before being instructed to scroll to where the\n * keyboard will be. Stick to the `ScrollResponder` callbacks, and everything\n * will work.\n *\n * WARNING: These callbacks will fire even if a keyboard is displayed in a\n * different navigation pane. Filter out the events to determine if they are\n * relevant to you. (For example, only if you receive these callbacks after\n * you had explicitly focused a node etc).\n */\n\n render() {\n var _this$props = this.props,\n contentContainerStyle = _this$props.contentContainerStyle,\n horizontal = _this$props.horizontal,\n onContentSizeChange = _this$props.onContentSizeChange,\n refreshControl = _this$props.refreshControl,\n stickyHeaderIndices = _this$props.stickyHeaderIndices,\n pagingEnabled = _this$props.pagingEnabled,\n forwardedRef = _this$props.forwardedRef,\n keyboardDismissMode = _this$props.keyboardDismissMode,\n onScroll = _this$props.onScroll,\n centerContent = _this$props.centerContent,\n other = _objectWithoutPropertiesLoose(_this$props, _excluded);\n if (process.env.NODE_ENV !== 'production' && this.props.style) {\n var style = StyleSheet.flatten(this.props.style);\n var childLayoutProps = ['alignItems', 'justifyContent'].filter(prop => style && style[prop] !== undefined);\n invariant(childLayoutProps.length === 0, \"ScrollView child layout (\" + JSON.stringify(childLayoutProps) + \") \" + 'must be applied through the contentContainerStyle prop.');\n }\n var contentSizeChangeProps = {};\n if (onContentSizeChange) {\n contentSizeChangeProps = {\n onLayout: this._handleContentOnLayout\n };\n }\n var hasStickyHeaderIndices = !horizontal && Array.isArray(stickyHeaderIndices);\n var children = hasStickyHeaderIndices || pagingEnabled ? React.Children.map(this.props.children, (child, i) => {\n var isSticky = hasStickyHeaderIndices && stickyHeaderIndices.indexOf(i) > -1;\n if (child != null && (isSticky || pagingEnabled)) {\n return /*#__PURE__*/React.createElement(View, {\n style: [isSticky && styles.stickyHeader, pagingEnabled && styles.pagingEnabledChild]\n }, child);\n } else {\n return child;\n }\n }) : this.props.children;\n var contentContainer = /*#__PURE__*/React.createElement(View, _extends({}, contentSizeChangeProps, {\n children: children,\n collapsable: false,\n ref: this._setInnerViewRef,\n style: [horizontal && styles.contentContainerHorizontal, centerContent && styles.contentContainerCenterContent, contentContainerStyle]\n }));\n var baseStyle = horizontal ? styles.baseHorizontal : styles.baseVertical;\n var pagingEnabledStyle = horizontal ? styles.pagingEnabledHorizontal : styles.pagingEnabledVertical;\n var props = _objectSpread(_objectSpread({}, other), {}, {\n style: [baseStyle, pagingEnabled && pagingEnabledStyle, this.props.style],\n onTouchStart: this.scrollResponderHandleTouchStart,\n onTouchMove: this.scrollResponderHandleTouchMove,\n onTouchEnd: this.scrollResponderHandleTouchEnd,\n onScrollBeginDrag: this.scrollResponderHandleScrollBeginDrag,\n onScrollEndDrag: this.scrollResponderHandleScrollEndDrag,\n onMomentumScrollBegin: this.scrollResponderHandleMomentumScrollBegin,\n onMomentumScrollEnd: this.scrollResponderHandleMomentumScrollEnd,\n onStartShouldSetResponder: this.scrollResponderHandleStartShouldSetResponder,\n onStartShouldSetResponderCapture: this.scrollResponderHandleStartShouldSetResponderCapture,\n onScrollShouldSetResponder: this.scrollResponderHandleScrollShouldSetResponder,\n onScroll: this._handleScroll,\n onResponderGrant: this.scrollResponderHandleResponderGrant,\n onResponderTerminationRequest: this.scrollResponderHandleTerminationRequest,\n onResponderTerminate: this.scrollResponderHandleTerminate,\n onResponderRelease: this.scrollResponderHandleResponderRelease,\n onResponderReject: this.scrollResponderHandleResponderReject\n });\n var ScrollViewClass = ScrollViewBase;\n invariant(ScrollViewClass !== undefined, 'ScrollViewClass must not be undefined');\n var scrollView = /*#__PURE__*/React.createElement(ScrollViewClass, _extends({}, props, {\n ref: this._setScrollNodeRef\n }), contentContainer);\n if (refreshControl) {\n return /*#__PURE__*/React.cloneElement(refreshControl, {\n style: props.style\n }, scrollView);\n }\n return scrollView;\n }\n}\nvar commonStyle = {\n flexGrow: 1,\n flexShrink: 1,\n // Enable hardware compositing in modern browsers.\n // Creates a new layer with its own backing surface that can significantly\n // improve scroll performance.\n transform: 'translateZ(0)',\n // iOS native scrolling\n WebkitOverflowScrolling: 'touch'\n};\nvar styles = StyleSheet.create({\n baseVertical: _objectSpread(_objectSpread({}, commonStyle), {}, {\n flexDirection: 'column',\n overflowX: 'hidden',\n overflowY: 'auto'\n }),\n baseHorizontal: _objectSpread(_objectSpread({}, commonStyle), {}, {\n flexDirection: 'row',\n overflowX: 'auto',\n overflowY: 'hidden'\n }),\n contentContainerHorizontal: {\n flexDirection: 'row'\n },\n contentContainerCenterContent: {\n justifyContent: 'center',\n flexGrow: 1\n },\n stickyHeader: {\n position: 'sticky',\n top: 0,\n zIndex: 10\n },\n pagingEnabledHorizontal: {\n scrollSnapType: 'x mandatory'\n },\n pagingEnabledVertical: {\n scrollSnapType: 'y mandatory'\n },\n pagingEnabledChild: {\n scrollSnapAlign: 'start'\n }\n});\nvar ForwardedScrollView = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n return /*#__PURE__*/React.createElement(ScrollView, _extends({}, props, {\n forwardedRef: forwardedRef\n }));\n});\nForwardedScrollView.displayName = 'ScrollView';\nexport default ForwardedScrollView;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nvar _excluded = [\"ItemSeparatorComponent\", \"SectionSeparatorComponent\", \"renderItem\", \"renderSectionFooter\", \"renderSectionHeader\", \"sections\", \"stickySectionHeadersEnabled\"];\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport View from '../../../exports/View';\nimport VirtualizedList from '../VirtualizedList';\nimport { keyExtractor as defaultKeyExtractor } from '../VirtualizeUtils';\nimport invariant from 'fbjs/lib/invariant';\nimport * as React from 'react';\n/**\n * Right now this just flattens everything into one list and uses VirtualizedList under the\n * hood. The only operation that might not scale well is concatting the data arrays of all the\n * sections when new props are received, which should be plenty fast for up to ~10,000 items.\n */\nclass VirtualizedSectionList extends React.PureComponent {\n constructor() {\n super(...arguments);\n this._keyExtractor = (item, index) => {\n var info = this._subExtractor(index);\n return info && info.key || String(index);\n };\n this._convertViewable = viewable => {\n var _info$index;\n invariant(viewable.index != null, 'Received a broken ViewToken');\n var info = this._subExtractor(viewable.index);\n if (!info) {\n return null;\n }\n var keyExtractorWithNullableIndex = info.section.keyExtractor;\n var keyExtractorWithNonNullableIndex = this.props.keyExtractor || defaultKeyExtractor;\n var key = keyExtractorWithNullableIndex != null ? keyExtractorWithNullableIndex(viewable.item, info.index) : keyExtractorWithNonNullableIndex(viewable.item, (_info$index = info.index) !== null && _info$index !== void 0 ? _info$index : 0);\n return _objectSpread(_objectSpread({}, viewable), {}, {\n index: info.index,\n key,\n section: info.section\n });\n };\n this._onViewableItemsChanged = _ref => {\n var viewableItems = _ref.viewableItems,\n changed = _ref.changed;\n var onViewableItemsChanged = this.props.onViewableItemsChanged;\n if (onViewableItemsChanged != null) {\n onViewableItemsChanged({\n viewableItems: viewableItems.map(this._convertViewable, this).filter(Boolean),\n changed: changed.map(this._convertViewable, this).filter(Boolean)\n });\n }\n };\n this._renderItem = listItemCount =>\n // eslint-disable-next-line react/no-unstable-nested-components\n _ref2 => {\n var item = _ref2.item,\n index = _ref2.index;\n var info = this._subExtractor(index);\n if (!info) {\n return null;\n }\n var infoIndex = info.index;\n if (infoIndex == null) {\n var section = info.section;\n if (info.header === true) {\n var renderSectionHeader = this.props.renderSectionHeader;\n return renderSectionHeader ? renderSectionHeader({\n section\n }) : null;\n } else {\n var renderSectionFooter = this.props.renderSectionFooter;\n return renderSectionFooter ? renderSectionFooter({\n section\n }) : null;\n }\n } else {\n var renderItem = info.section.renderItem || this.props.renderItem;\n var SeparatorComponent = this._getSeparatorComponent(index, info, listItemCount);\n invariant(renderItem, 'no renderItem!');\n return /*#__PURE__*/React.createElement(ItemWithSeparator, {\n SeparatorComponent: SeparatorComponent,\n LeadingSeparatorComponent: infoIndex === 0 ? this.props.SectionSeparatorComponent : undefined,\n cellKey: info.key,\n index: infoIndex,\n item: item,\n leadingItem: info.leadingItem,\n leadingSection: info.leadingSection,\n prevCellKey: (this._subExtractor(index - 1) || {}).key\n // Callback to provide updateHighlight for this item\n ,\n setSelfHighlightCallback: this._setUpdateHighlightFor,\n setSelfUpdatePropsCallback: this._setUpdatePropsFor\n // Provide child ability to set highlight/updateProps for previous item using prevCellKey\n ,\n updateHighlightFor: this._updateHighlightFor,\n updatePropsFor: this._updatePropsFor,\n renderItem: renderItem,\n section: info.section,\n trailingItem: info.trailingItem,\n trailingSection: info.trailingSection,\n inverted: !!this.props.inverted\n });\n }\n };\n this._updatePropsFor = (cellKey, value) => {\n var updateProps = this._updatePropsMap[cellKey];\n if (updateProps != null) {\n updateProps(value);\n }\n };\n this._updateHighlightFor = (cellKey, value) => {\n var updateHighlight = this._updateHighlightMap[cellKey];\n if (updateHighlight != null) {\n updateHighlight(value);\n }\n };\n this._setUpdateHighlightFor = (cellKey, updateHighlightFn) => {\n if (updateHighlightFn != null) {\n this._updateHighlightMap[cellKey] = updateHighlightFn;\n } else {\n // $FlowFixMe[prop-missing]\n delete this._updateHighlightFor[cellKey];\n }\n };\n this._setUpdatePropsFor = (cellKey, updatePropsFn) => {\n if (updatePropsFn != null) {\n this._updatePropsMap[cellKey] = updatePropsFn;\n } else {\n delete this._updatePropsMap[cellKey];\n }\n };\n this._updateHighlightMap = {};\n this._updatePropsMap = {};\n this._captureRef = ref => {\n this._listRef = ref;\n };\n }\n scrollToLocation(params) {\n var index = params.itemIndex;\n for (var i = 0; i < params.sectionIndex; i++) {\n index += this.props.getItemCount(this.props.sections[i].data) + 2;\n }\n var viewOffset = params.viewOffset || 0;\n if (this._listRef == null) {\n return;\n }\n if (params.itemIndex > 0 && this.props.stickySectionHeadersEnabled) {\n var frame = this._listRef.__getFrameMetricsApprox(index - params.itemIndex, this._listRef.props);\n viewOffset += frame.length;\n }\n var toIndexParams = _objectSpread(_objectSpread({}, params), {}, {\n viewOffset,\n index\n });\n // $FlowFixMe[incompatible-use]\n this._listRef.scrollToIndex(toIndexParams);\n }\n getListRef() {\n return this._listRef;\n }\n render() {\n var _this$props = this.props,\n ItemSeparatorComponent = _this$props.ItemSeparatorComponent,\n SectionSeparatorComponent = _this$props.SectionSeparatorComponent,\n _renderItem = _this$props.renderItem,\n renderSectionFooter = _this$props.renderSectionFooter,\n renderSectionHeader = _this$props.renderSectionHeader,\n _sections = _this$props.sections,\n stickySectionHeadersEnabled = _this$props.stickySectionHeadersEnabled,\n passThroughProps = _objectWithoutPropertiesLoose(_this$props, _excluded);\n var listHeaderOffset = this.props.ListHeaderComponent ? 1 : 0;\n var stickyHeaderIndices = this.props.stickySectionHeadersEnabled ? [] : undefined;\n var itemCount = 0;\n for (var _iterator = _createForOfIteratorHelperLoose(this.props.sections), _step; !(_step = _iterator()).done;) {\n var section = _step.value;\n // Track the section header indices\n if (stickyHeaderIndices != null) {\n stickyHeaderIndices.push(itemCount + listHeaderOffset);\n }\n\n // Add two for the section header and footer.\n itemCount += 2;\n itemCount += this.props.getItemCount(section.data);\n }\n var renderItem = this._renderItem(itemCount);\n return /*#__PURE__*/React.createElement(VirtualizedList, _extends({}, passThroughProps, {\n keyExtractor: this._keyExtractor,\n stickyHeaderIndices: stickyHeaderIndices,\n renderItem: renderItem,\n data: this.props.sections,\n getItem: (sections, index) => this._getItem(this.props, sections, index),\n getItemCount: () => itemCount,\n onViewableItemsChanged: this.props.onViewableItemsChanged ? this._onViewableItemsChanged : undefined,\n ref: this._captureRef\n }));\n }\n _getItem(props, sections, index) {\n if (!sections) {\n return null;\n }\n var itemIdx = index - 1;\n for (var i = 0; i < sections.length; i++) {\n var section = sections[i];\n var sectionData = section.data;\n var itemCount = props.getItemCount(sectionData);\n if (itemIdx === -1 || itemIdx === itemCount) {\n // We intend for there to be overflow by one on both ends of the list.\n // This will be for headers and footers. When returning a header or footer\n // item the section itself is the item.\n return section;\n } else if (itemIdx < itemCount) {\n // If we are in the bounds of the list's data then return the item.\n return props.getItem(sectionData, itemIdx);\n } else {\n itemIdx -= itemCount + 2; // Add two for the header and footer\n }\n }\n\n return null;\n }\n\n // $FlowFixMe[missing-local-annot]\n\n _subExtractor(index) {\n var itemIndex = index;\n var _this$props2 = this.props,\n getItem = _this$props2.getItem,\n getItemCount = _this$props2.getItemCount,\n keyExtractor = _this$props2.keyExtractor,\n sections = _this$props2.sections;\n for (var i = 0; i < sections.length; i++) {\n var section = sections[i];\n var sectionData = section.data;\n var key = section.key || String(i);\n itemIndex -= 1; // The section adds an item for the header\n if (itemIndex >= getItemCount(sectionData) + 1) {\n itemIndex -= getItemCount(sectionData) + 1; // The section adds an item for the footer.\n } else if (itemIndex === -1) {\n return {\n section,\n key: key + ':header',\n index: null,\n header: true,\n trailingSection: sections[i + 1]\n };\n } else if (itemIndex === getItemCount(sectionData)) {\n return {\n section,\n key: key + ':footer',\n index: null,\n header: false,\n trailingSection: sections[i + 1]\n };\n } else {\n var extractor = section.keyExtractor || keyExtractor || defaultKeyExtractor;\n return {\n section,\n key: key + ':' + extractor(getItem(sectionData, itemIndex), itemIndex),\n index: itemIndex,\n leadingItem: getItem(sectionData, itemIndex - 1),\n leadingSection: sections[i - 1],\n trailingItem: getItem(sectionData, itemIndex + 1),\n trailingSection: sections[i + 1]\n };\n }\n }\n }\n _getSeparatorComponent(index, info, listItemCount) {\n info = info || this._subExtractor(index);\n if (!info) {\n return null;\n }\n var ItemSeparatorComponent = info.section.ItemSeparatorComponent || this.props.ItemSeparatorComponent;\n var SectionSeparatorComponent = this.props.SectionSeparatorComponent;\n var isLastItemInList = index === listItemCount - 1;\n var isLastItemInSection = info.index === this.props.getItemCount(info.section.data) - 1;\n if (SectionSeparatorComponent && isLastItemInSection) {\n return SectionSeparatorComponent;\n }\n if (ItemSeparatorComponent && !isLastItemInSection && !isLastItemInList) {\n return ItemSeparatorComponent;\n }\n return null;\n }\n}\nfunction ItemWithSeparator(props) {\n var LeadingSeparatorComponent = props.LeadingSeparatorComponent,\n SeparatorComponent = props.SeparatorComponent,\n cellKey = props.cellKey,\n prevCellKey = props.prevCellKey,\n setSelfHighlightCallback = props.setSelfHighlightCallback,\n updateHighlightFor = props.updateHighlightFor,\n setSelfUpdatePropsCallback = props.setSelfUpdatePropsCallback,\n updatePropsFor = props.updatePropsFor,\n item = props.item,\n index = props.index,\n section = props.section,\n inverted = props.inverted;\n var _React$useState = React.useState(false),\n leadingSeparatorHiglighted = _React$useState[0],\n setLeadingSeparatorHighlighted = _React$useState[1];\n var _React$useState2 = React.useState(false),\n separatorHighlighted = _React$useState2[0],\n setSeparatorHighlighted = _React$useState2[1];\n var _React$useState3 = React.useState({\n leadingItem: props.leadingItem,\n leadingSection: props.leadingSection,\n section: props.section,\n trailingItem: props.item,\n trailingSection: props.trailingSection\n }),\n leadingSeparatorProps = _React$useState3[0],\n setLeadingSeparatorProps = _React$useState3[1];\n var _React$useState4 = React.useState({\n leadingItem: props.item,\n leadingSection: props.leadingSection,\n section: props.section,\n trailingItem: props.trailingItem,\n trailingSection: props.trailingSection\n }),\n separatorProps = _React$useState4[0],\n setSeparatorProps = _React$useState4[1];\n React.useEffect(() => {\n setSelfHighlightCallback(cellKey, setSeparatorHighlighted);\n // $FlowFixMe[incompatible-call]\n setSelfUpdatePropsCallback(cellKey, setSeparatorProps);\n return () => {\n setSelfUpdatePropsCallback(cellKey, null);\n setSelfHighlightCallback(cellKey, null);\n };\n }, [cellKey, setSelfHighlightCallback, setSeparatorProps, setSelfUpdatePropsCallback]);\n var separators = {\n highlight: () => {\n setLeadingSeparatorHighlighted(true);\n setSeparatorHighlighted(true);\n if (prevCellKey != null) {\n updateHighlightFor(prevCellKey, true);\n }\n },\n unhighlight: () => {\n setLeadingSeparatorHighlighted(false);\n setSeparatorHighlighted(false);\n if (prevCellKey != null) {\n updateHighlightFor(prevCellKey, false);\n }\n },\n updateProps: (select, newProps) => {\n if (select === 'leading') {\n if (LeadingSeparatorComponent != null) {\n setLeadingSeparatorProps(_objectSpread(_objectSpread({}, leadingSeparatorProps), newProps));\n } else if (prevCellKey != null) {\n // update the previous item's separator\n updatePropsFor(prevCellKey, _objectSpread(_objectSpread({}, leadingSeparatorProps), newProps));\n }\n } else if (select === 'trailing' && SeparatorComponent != null) {\n setSeparatorProps(_objectSpread(_objectSpread({}, separatorProps), newProps));\n }\n }\n };\n var element = props.renderItem({\n item,\n index,\n section,\n separators\n });\n var leadingSeparator = LeadingSeparatorComponent != null && /*#__PURE__*/React.createElement(LeadingSeparatorComponent, _extends({\n highlighted: leadingSeparatorHiglighted\n }, leadingSeparatorProps));\n var separator = SeparatorComponent != null && /*#__PURE__*/React.createElement(SeparatorComponent, _extends({\n highlighted: separatorHighlighted\n }, separatorProps));\n return leadingSeparator || separator ? /*#__PURE__*/React.createElement(View, null, inverted === false ? leadingSeparator : separator, element, inverted === false ? separator : leadingSeparator) : element;\n}\n\n/* $FlowFixMe[class-object-subtyping] added when improving typing for this\n * parameters */\n// $FlowFixMe[method-unbinding]\nexport default VirtualizedSectionList;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"stickySectionHeadersEnabled\"];\nimport Platform from '../../../exports/Platform';\nimport * as React from 'react';\nimport VirtualizedSectionList from '../VirtualizedSectionList';\n/**\n * A performant interface for rendering sectioned lists, supporting the most handy features:\n *\n * - Fully cross-platform.\n * - Configurable viewability callbacks.\n * - List header support.\n * - List footer support.\n * - Item separator support.\n * - Section header support.\n * - Section separator support.\n * - Heterogeneous data and item rendering support.\n * - Pull to Refresh.\n * - Scroll loading.\n *\n * If you don't need section support and want a simpler interface, use\n * [``](https://reactnative.dev/docs/flatlist).\n *\n * Simple Examples:\n *\n * }\n * renderSectionHeader={({section}) =>
}\n * sections={[ // homogeneous rendering between sections\n * {data: [...], title: ...},\n * {data: [...], title: ...},\n * {data: [...], title: ...},\n * ]}\n * />\n *\n * \n *\n * This is a convenience wrapper around [``](docs/virtualizedlist),\n * and thus inherits its props (as well as those of `ScrollView`) that aren't explicitly listed\n * here, along with the following caveats:\n *\n * - Internal state is not preserved when content scrolls out of the render window. Make sure all\n * your data is captured in the item data or external stores like Flux, Redux, or Relay.\n * - This is a `PureComponent` which means that it will not re-render if `props` remain shallow-\n * equal. Make sure that everything your `renderItem` function depends on is passed as a prop\n * (e.g. `extraData`) that is not `===` after updates, otherwise your UI may not update on\n * changes. This includes the `data` prop and parent component state.\n * - In order to constrain memory and enable smooth scrolling, content is rendered asynchronously\n * offscreen. This means it's possible to scroll faster than the fill rate and momentarily see\n * blank content. This is a tradeoff that can be adjusted to suit the needs of each application,\n * and we are working on improving it behind the scenes.\n * - By default, the list looks for a `key` prop on each item and uses that for the React key.\n * Alternatively, you can provide a custom `keyExtractor` prop.\n *\n */\nexport default class SectionList extends React.PureComponent {\n constructor() {\n super(...arguments);\n this._captureRef = ref => {\n this._wrapperListRef = ref;\n };\n }\n /**\n * Scrolls to the item at the specified `sectionIndex` and `itemIndex` (within the section)\n * positioned in the viewable area such that `viewPosition` 0 places it at the top (and may be\n * covered by a sticky header), 1 at the bottom, and 0.5 centered in the middle. `viewOffset` is a\n * fixed number of pixels to offset the final target position, e.g. to compensate for sticky\n * headers.\n *\n * Note: cannot scroll to locations outside the render window without specifying the\n * `getItemLayout` prop.\n */\n scrollToLocation(params) {\n if (this._wrapperListRef != null) {\n this._wrapperListRef.scrollToLocation(params);\n }\n }\n\n /**\n * Tells the list an interaction has occurred, which should trigger viewability calculations, e.g.\n * if `waitForInteractions` is true and the user has not scrolled. This is typically called by\n * taps on items or by navigation actions.\n */\n recordInteraction() {\n var listRef = this._wrapperListRef && this._wrapperListRef.getListRef();\n listRef && listRef.recordInteraction();\n }\n\n /**\n * Displays the scroll indicators momentarily.\n *\n * @platform ios\n */\n flashScrollIndicators() {\n var listRef = this._wrapperListRef && this._wrapperListRef.getListRef();\n listRef && listRef.flashScrollIndicators();\n }\n\n /**\n * Provides a handle to the underlying scroll responder.\n */\n getScrollResponder() {\n var listRef = this._wrapperListRef && this._wrapperListRef.getListRef();\n if (listRef) {\n return listRef.getScrollResponder();\n }\n }\n getScrollableNode() {\n var listRef = this._wrapperListRef && this._wrapperListRef.getListRef();\n if (listRef) {\n return listRef.getScrollableNode();\n }\n }\n render() {\n var _this$props = this.props,\n _stickySectionHeadersEnabled = _this$props.stickySectionHeadersEnabled,\n restProps = _objectWithoutPropertiesLoose(_this$props, _excluded);\n var stickySectionHeadersEnabled = _stickySectionHeadersEnabled !== null && _stickySectionHeadersEnabled !== void 0 ? _stickySectionHeadersEnabled : Platform.OS === 'ios';\n return /*#__PURE__*/React.createElement(VirtualizedSectionList, _extends({}, restProps, {\n stickySectionHeadersEnabled: stickySectionHeadersEnabled,\n ref: this._captureRef,\n getItemCount: items => items.length,\n getItem: (items, index) => items[index]\n }));\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport SectionList from '../../vendor/react-native/SectionList';\nexport default SectionList;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport invariant from 'fbjs/lib/invariant';\nclass Share {\n static share(content, options) {\n if (options === void 0) {\n options = {};\n }\n invariant(typeof content === 'object' && content !== null, 'Content to share must be a valid object');\n invariant(typeof content.url === 'string' || typeof content.message === 'string', 'At least one of URL and message is required');\n invariant(typeof options === 'object' && options !== null, 'Options must be a valid object');\n invariant(!content.title || typeof content.title === 'string', 'Invalid title: title should be a string.');\n if (window.navigator.share !== undefined) {\n return window.navigator.share({\n title: content.title,\n text: content.message,\n url: content.url\n });\n } else {\n return Promise.reject(new Error('Share is not supported in this browser'));\n }\n }\n\n /**\n * The content was successfully shared.\n */\n static get sharedAction() {\n return 'sharedAction';\n }\n\n /**\n * The dialog has been dismissed.\n * @platform ios\n */\n static get dismissedAction() {\n return 'dismissedAction';\n }\n}\nexport default Share;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar emptyFunction = () => {};\nfunction StatusBar() {\n return null;\n}\nStatusBar.setBackgroundColor = emptyFunction;\nStatusBar.setBarStyle = emptyFunction;\nStatusBar.setHidden = emptyFunction;\nStatusBar.setNetworkActivityIndicatorVisible = emptyFunction;\nStatusBar.setTranslucent = emptyFunction;\nexport default StatusBar;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport normalizeColor from './compiler/normalizeColor';\nimport normalizeValueWithProperty from './compiler/normalizeValueWithProperty';\nimport { warnOnce } from '../../modules/warnOnce';\nvar emptyObject = {};\n\n/**\n * Shadows\n */\n\nvar defaultOffset = {\n height: 0,\n width: 0\n};\nexport var createBoxShadowValue = style => {\n var shadowColor = style.shadowColor,\n shadowOffset = style.shadowOffset,\n shadowOpacity = style.shadowOpacity,\n shadowRadius = style.shadowRadius;\n var _ref = shadowOffset || defaultOffset,\n height = _ref.height,\n width = _ref.width;\n var offsetX = normalizeValueWithProperty(width);\n var offsetY = normalizeValueWithProperty(height);\n var blurRadius = normalizeValueWithProperty(shadowRadius || 0);\n var color = normalizeColor(shadowColor || 'black', shadowOpacity);\n if (color != null && offsetX != null && offsetY != null && blurRadius != null) {\n return offsetX + \" \" + offsetY + \" \" + blurRadius + \" \" + color;\n }\n};\nexport var createTextShadowValue = style => {\n var textShadowColor = style.textShadowColor,\n textShadowOffset = style.textShadowOffset,\n textShadowRadius = style.textShadowRadius;\n var _ref2 = textShadowOffset || defaultOffset,\n height = _ref2.height,\n width = _ref2.width;\n var radius = textShadowRadius || 0;\n var offsetX = normalizeValueWithProperty(width);\n var offsetY = normalizeValueWithProperty(height);\n var blurRadius = normalizeValueWithProperty(radius);\n var color = normalizeValueWithProperty(textShadowColor, 'textShadowColor');\n if (color && (height !== 0 || width !== 0 || radius !== 0) && offsetX != null && offsetY != null && blurRadius != null) {\n return offsetX + \" \" + offsetY + \" \" + blurRadius + \" \" + color;\n }\n};\n\n// { scale: 2 } => 'scale(2)'\n// { translateX: 20 } => 'translateX(20px)'\n// { matrix: [1,2,3,4,5,6] } => 'matrix(1,2,3,4,5,6)'\nvar mapTransform = transform => {\n var type = Object.keys(transform)[0];\n var value = transform[type];\n if (type === 'matrix' || type === 'matrix3d') {\n return type + \"(\" + value.join(',') + \")\";\n } else {\n var normalizedValue = normalizeValueWithProperty(value, type);\n return type + \"(\" + normalizedValue + \")\";\n }\n};\nexport var createTransformValue = value => {\n return value.map(mapTransform).join(' ');\n};\nvar PROPERTIES_STANDARD = {\n borderBottomEndRadius: 'borderEndEndRadius',\n borderBottomStartRadius: 'borderEndStartRadius',\n borderTopEndRadius: 'borderStartEndRadius',\n borderTopStartRadius: 'borderStartStartRadius',\n borderEndColor: 'borderInlineEndColor',\n borderEndStyle: 'borderInlineEndStyle',\n borderEndWidth: 'borderInlineEndWidth',\n borderStartColor: 'borderInlineStartColor',\n borderStartStyle: 'borderInlineStartStyle',\n borderStartWidth: 'borderInlineStartWidth',\n end: 'insetInlineEnd',\n marginEnd: 'marginInlineEnd',\n marginHorizontal: 'marginInline',\n marginStart: 'marginInlineStart',\n marginVertical: 'marginBlock',\n paddingEnd: 'paddingInlineEnd',\n paddingHorizontal: 'paddingInline',\n paddingStart: 'paddingInlineStart',\n paddingVertical: 'paddingBlock',\n start: 'insetInlineStart'\n};\nvar ignoredProps = {\n elevation: true,\n overlayColor: true,\n resizeMode: true,\n tintColor: true\n};\n\n/**\n * Preprocess styles\n */\nexport var preprocess = function preprocess(originalStyle, options) {\n if (options === void 0) {\n options = {};\n }\n var style = originalStyle || emptyObject;\n var nextStyle = {};\n\n // Convert shadow styles\n if (options.shadow === true, style.shadowColor != null || style.shadowOffset != null || style.shadowOpacity != null || style.shadowRadius != null) {\n warnOnce('shadowStyles', \"\\\"shadow*\\\" style props are deprecated. Use \\\"boxShadow\\\".\");\n var boxShadowValue = createBoxShadowValue(style);\n if (boxShadowValue != null && nextStyle.boxShadow == null) {\n var boxShadow = style.boxShadow;\n var value = boxShadow ? boxShadow + \", \" + boxShadowValue : boxShadowValue;\n nextStyle.boxShadow = value;\n }\n }\n\n // Convert text shadow styles\n if (options.textShadow === true, style.textShadowColor != null || style.textShadowOffset != null || style.textShadowRadius != null) {\n warnOnce('textShadowStyles', \"\\\"textShadow*\\\" style props are deprecated. Use \\\"textShadow\\\".\");\n var textShadowValue = createTextShadowValue(style);\n if (textShadowValue != null && nextStyle.textShadow == null) {\n var textShadow = style.textShadow;\n var _value = textShadow ? textShadow + \", \" + textShadowValue : textShadowValue;\n nextStyle.textShadow = _value;\n }\n }\n for (var originalProp in style) {\n if (\n // Ignore some React Native styles\n ignoredProps[originalProp] != null || originalProp === 'shadowColor' || originalProp === 'shadowOffset' || originalProp === 'shadowOpacity' || originalProp === 'shadowRadius' || originalProp === 'textShadowColor' || originalProp === 'textShadowOffset' || originalProp === 'textShadowRadius') {\n continue;\n }\n var originalValue = style[originalProp];\n var prop = PROPERTIES_STANDARD[originalProp] || originalProp;\n var _value2 = originalValue;\n if (!Object.prototype.hasOwnProperty.call(style, originalProp) || prop !== originalProp && style[prop] != null) {\n continue;\n }\n if (prop === 'aspectRatio' && typeof _value2 === 'number') {\n nextStyle[prop] = _value2.toString();\n } else if (prop === 'fontVariant') {\n if (Array.isArray(_value2) && _value2.length > 0) {\n warnOnce('fontVariant', '\"fontVariant\" style array value is deprecated. Use space-separated values.');\n _value2 = _value2.join(' ');\n }\n nextStyle[prop] = _value2;\n } else if (prop === 'textAlignVertical') {\n warnOnce('textAlignVertical', '\"textAlignVertical\" style is deprecated. Use \"verticalAlign\".');\n if (style.verticalAlign == null) {\n nextStyle.verticalAlign = _value2 === 'center' ? 'middle' : _value2;\n }\n } else if (prop === 'transform') {\n if (Array.isArray(_value2)) {\n _value2 = createTransformValue(_value2);\n }\n nextStyle.transform = _value2;\n } else {\n nextStyle[prop] = _value2;\n }\n }\n\n // $FlowIgnore\n return nextStyle;\n};\nexport default preprocess;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar CSS_UNIT_RE = /^[+-]?\\d*(?:\\.\\d+)?(?:[Ee][+-]?\\d+)?(%|\\w*)/;\nvar getUnit = str => str.match(CSS_UNIT_RE)[1];\nvar isNumeric = n => {\n return !isNaN(parseFloat(n)) && isFinite(n);\n};\nvar multiplyStyleLengthValue = (value, multiple) => {\n if (typeof value === 'string') {\n var number = parseFloat(value) * multiple;\n var unit = getUnit(value);\n return \"\" + number + unit;\n } else if (isNumeric(value)) {\n return value * multiple;\n }\n};\nexport default multiplyStyleLengthValue;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"aria-label\", \"accessibilityLabel\", \"activeThumbColor\", \"activeTrackColor\", \"disabled\", \"onValueChange\", \"style\", \"thumbColor\", \"trackColor\", \"value\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport createElement from '../createElement';\nimport multiplyStyleLengthValue from '../../modules/multiplyStyleLengthValue';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nvar emptyObject = {};\nvar thumbDefaultBoxShadow = '0px 1px 3px rgba(0,0,0,0.5)';\nvar thumbFocusedBoxShadow = thumbDefaultBoxShadow + \", 0 0 0 10px rgba(0,0,0,0.1)\";\nvar defaultActiveTrackColor = '#A3D3CF';\nvar defaultTrackColor = '#939393';\nvar defaultDisabledTrackColor = '#D5D5D5';\nvar defaultActiveThumbColor = '#009688';\nvar defaultThumbColor = '#FAFAFA';\nvar defaultDisabledThumbColor = '#BDBDBD';\nvar Switch = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var ariaLabel = props['aria-label'],\n accessibilityLabel = props.accessibilityLabel,\n activeThumbColor = props.activeThumbColor,\n activeTrackColor = props.activeTrackColor,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n onValueChange = props.onValueChange,\n _props$style = props.style,\n style = _props$style === void 0 ? emptyObject : _props$style,\n thumbColor = props.thumbColor,\n trackColor = props.trackColor,\n _props$value = props.value,\n value = _props$value === void 0 ? false : _props$value,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var thumbRef = React.useRef(null);\n function handleChange(event) {\n if (onValueChange != null) {\n onValueChange(event.nativeEvent.target.checked);\n }\n }\n function handleFocusState(event) {\n var isFocused = event.nativeEvent.type === 'focus';\n var boxShadow = isFocused ? thumbFocusedBoxShadow : thumbDefaultBoxShadow;\n if (thumbRef.current != null) {\n thumbRef.current.style.boxShadow = boxShadow;\n }\n }\n var _StyleSheet$flatten = StyleSheet.flatten(style),\n styleHeight = _StyleSheet$flatten.height,\n styleWidth = _StyleSheet$flatten.width;\n var height = styleHeight || '20px';\n var minWidth = multiplyStyleLengthValue(height, 2);\n var width = styleWidth > minWidth ? styleWidth : minWidth;\n var trackBorderRadius = multiplyStyleLengthValue(height, 0.5);\n var trackCurrentColor = function () {\n if (value === true) {\n if (trackColor != null && typeof trackColor === 'object') {\n return trackColor.true;\n } else {\n return activeTrackColor !== null && activeTrackColor !== void 0 ? activeTrackColor : defaultActiveTrackColor;\n }\n } else {\n if (trackColor != null && typeof trackColor === 'object') {\n return trackColor.false;\n } else {\n return trackColor !== null && trackColor !== void 0 ? trackColor : defaultTrackColor;\n }\n }\n }();\n var thumbCurrentColor = value ? activeThumbColor !== null && activeThumbColor !== void 0 ? activeThumbColor : defaultActiveThumbColor : thumbColor !== null && thumbColor !== void 0 ? thumbColor : defaultThumbColor;\n var thumbHeight = height;\n var thumbWidth = thumbHeight;\n var rootStyle = [styles.root, style, disabled && styles.cursorDefault, {\n height,\n width\n }];\n var disabledTrackColor = function () {\n if (value === true) {\n if (typeof activeTrackColor === 'string' && activeTrackColor != null || typeof trackColor === 'object' && trackColor != null && trackColor.true) {\n return trackCurrentColor;\n } else {\n return defaultDisabledTrackColor;\n }\n } else {\n if (typeof trackColor === 'string' && trackColor != null || typeof trackColor === 'object' && trackColor != null && trackColor.false) {\n return trackCurrentColor;\n } else {\n return defaultDisabledTrackColor;\n }\n }\n }();\n var disabledThumbColor = function () {\n if (value === true) {\n if (activeThumbColor == null) {\n return defaultDisabledThumbColor;\n } else {\n return thumbCurrentColor;\n }\n } else {\n if (thumbColor == null) {\n return defaultDisabledThumbColor;\n } else {\n return thumbCurrentColor;\n }\n }\n }();\n var trackStyle = [styles.track, {\n backgroundColor: disabled ? disabledTrackColor : trackCurrentColor,\n borderRadius: trackBorderRadius\n }];\n var thumbStyle = [styles.thumb, value && styles.thumbActive, {\n backgroundColor: disabled ? disabledThumbColor : thumbCurrentColor,\n height: thumbHeight,\n marginStart: value ? multiplyStyleLengthValue(thumbWidth, -1) : 0,\n width: thumbWidth\n }];\n var nativeControl = createElement('input', {\n 'aria-label': ariaLabel || accessibilityLabel,\n checked: value,\n disabled: disabled,\n onBlur: handleFocusState,\n onChange: handleChange,\n onFocus: handleFocusState,\n ref: forwardedRef,\n style: [styles.nativeControl, styles.cursorInherit],\n type: 'checkbox',\n role: 'switch'\n });\n return /*#__PURE__*/React.createElement(View, _extends({}, other, {\n style: rootStyle\n }), /*#__PURE__*/React.createElement(View, {\n style: trackStyle\n }), /*#__PURE__*/React.createElement(View, {\n ref: thumbRef,\n style: thumbStyle\n }), nativeControl);\n});\nSwitch.displayName = 'Switch';\nvar styles = StyleSheet.create({\n root: {\n cursor: 'pointer',\n userSelect: 'none'\n },\n cursorDefault: {\n cursor: 'default'\n },\n cursorInherit: {\n cursor: 'inherit'\n },\n track: _objectSpread(_objectSpread({\n forcedColorAdjust: 'none'\n }, StyleSheet.absoluteFillObject), {}, {\n height: '70%',\n margin: 'auto',\n transitionDuration: '0.1s',\n width: '100%'\n }),\n thumb: {\n forcedColorAdjust: 'none',\n alignSelf: 'flex-start',\n borderRadius: '100%',\n boxShadow: thumbDefaultBoxShadow,\n start: '0%',\n transform: 'translateZ(0)',\n transitionDuration: '0.1s'\n },\n thumbActive: {\n insetInlineStart: '100%'\n },\n nativeControl: _objectSpread(_objectSpread({}, StyleSheet.absoluteFillObject), {}, {\n height: '100%',\n margin: 0,\n appearance: 'none',\n padding: 0,\n width: '100%'\n })\n});\nexport default Switch;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"hrefAttrs\", \"numberOfLines\", \"onClick\", \"onLayout\", \"onPress\", \"onMoveShouldSetResponder\", \"onMoveShouldSetResponderCapture\", \"onResponderEnd\", \"onResponderGrant\", \"onResponderMove\", \"onResponderReject\", \"onResponderRelease\", \"onResponderStart\", \"onResponderTerminate\", \"onResponderTerminationRequest\", \"onScrollShouldSetResponder\", \"onScrollShouldSetResponderCapture\", \"onSelectionChangeShouldSetResponder\", \"onSelectionChangeShouldSetResponderCapture\", \"onStartShouldSetResponder\", \"onStartShouldSetResponderCapture\", \"selectable\"];\n/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport createElement from '../createElement';\nimport * as forwardedProps from '../../modules/forwardedProps';\nimport pick from '../../modules/pick';\nimport useElementLayout from '../../modules/useElementLayout';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport usePlatformMethods from '../../modules/usePlatformMethods';\nimport useResponderEvents from '../../modules/useResponderEvents';\nimport StyleSheet from '../StyleSheet';\nimport TextAncestorContext from './TextAncestorContext';\nimport { useLocaleContext, getLocaleDirection } from '../../modules/useLocale';\nimport { warnOnce } from '../../modules/warnOnce';\nvar forwardPropsList = Object.assign({}, forwardedProps.defaultProps, forwardedProps.accessibilityProps, forwardedProps.clickProps, forwardedProps.focusProps, forwardedProps.keyboardProps, forwardedProps.mouseProps, forwardedProps.touchProps, forwardedProps.styleProps, {\n href: true,\n lang: true,\n pointerEvents: true\n});\nvar pickProps = props => pick(props, forwardPropsList);\nvar Text = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var hrefAttrs = props.hrefAttrs,\n numberOfLines = props.numberOfLines,\n onClick = props.onClick,\n onLayout = props.onLayout,\n onPress = props.onPress,\n onMoveShouldSetResponder = props.onMoveShouldSetResponder,\n onMoveShouldSetResponderCapture = props.onMoveShouldSetResponderCapture,\n onResponderEnd = props.onResponderEnd,\n onResponderGrant = props.onResponderGrant,\n onResponderMove = props.onResponderMove,\n onResponderReject = props.onResponderReject,\n onResponderRelease = props.onResponderRelease,\n onResponderStart = props.onResponderStart,\n onResponderTerminate = props.onResponderTerminate,\n onResponderTerminationRequest = props.onResponderTerminationRequest,\n onScrollShouldSetResponder = props.onScrollShouldSetResponder,\n onScrollShouldSetResponderCapture = props.onScrollShouldSetResponderCapture,\n onSelectionChangeShouldSetResponder = props.onSelectionChangeShouldSetResponder,\n onSelectionChangeShouldSetResponderCapture = props.onSelectionChangeShouldSetResponderCapture,\n onStartShouldSetResponder = props.onStartShouldSetResponder,\n onStartShouldSetResponderCapture = props.onStartShouldSetResponderCapture,\n selectable = props.selectable,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n if (selectable != null) {\n warnOnce('selectable', 'selectable prop is deprecated. Use styles.userSelect.');\n }\n var hasTextAncestor = React.useContext(TextAncestorContext);\n var hostRef = React.useRef(null);\n var _useLocaleContext = useLocaleContext(),\n contextDirection = _useLocaleContext.direction;\n useElementLayout(hostRef, onLayout);\n useResponderEvents(hostRef, {\n onMoveShouldSetResponder,\n onMoveShouldSetResponderCapture,\n onResponderEnd,\n onResponderGrant,\n onResponderMove,\n onResponderReject,\n onResponderRelease,\n onResponderStart,\n onResponderTerminate,\n onResponderTerminationRequest,\n onScrollShouldSetResponder,\n onScrollShouldSetResponderCapture,\n onSelectionChangeShouldSetResponder,\n onSelectionChangeShouldSetResponderCapture,\n onStartShouldSetResponder,\n onStartShouldSetResponderCapture\n });\n var handleClick = React.useCallback(e => {\n if (onClick != null) {\n onClick(e);\n } else if (onPress != null) {\n e.stopPropagation();\n onPress(e);\n }\n }, [onClick, onPress]);\n var component = hasTextAncestor ? 'span' : 'div';\n var langDirection = props.lang != null ? getLocaleDirection(props.lang) : null;\n var componentDirection = props.dir || langDirection;\n var writingDirection = componentDirection || contextDirection;\n var supportedProps = pickProps(rest);\n supportedProps.dir = componentDirection;\n // 'auto' by default allows browsers to infer writing direction (root elements only)\n if (!hasTextAncestor) {\n supportedProps.dir = componentDirection != null ? componentDirection : 'auto';\n }\n if (onClick || onPress) {\n supportedProps.onClick = handleClick;\n }\n supportedProps.style = [numberOfLines != null && numberOfLines > 1 && {\n WebkitLineClamp: numberOfLines\n }, hasTextAncestor === true ? styles.textHasAncestor$raw : styles.text$raw, numberOfLines === 1 && styles.textOneLine, numberOfLines != null && numberOfLines > 1 && styles.textMultiLine, props.style, selectable === true && styles.selectable, selectable === false && styles.notSelectable, onPress && styles.pressable];\n if (props.href != null) {\n component = 'a';\n if (hrefAttrs != null) {\n var download = hrefAttrs.download,\n rel = hrefAttrs.rel,\n target = hrefAttrs.target;\n if (download != null) {\n supportedProps.download = download;\n }\n if (rel != null) {\n supportedProps.rel = rel;\n }\n if (typeof target === 'string') {\n supportedProps.target = target.charAt(0) !== '_' ? '_' + target : target;\n }\n }\n }\n var platformMethodsRef = usePlatformMethods(supportedProps);\n var setRef = useMergeRefs(hostRef, platformMethodsRef, forwardedRef);\n supportedProps.ref = setRef;\n var element = createElement(component, supportedProps, {\n writingDirection\n });\n return hasTextAncestor ? element : /*#__PURE__*/React.createElement(TextAncestorContext.Provider, {\n value: true\n }, element);\n});\nText.displayName = 'Text';\nvar textStyle = {\n backgroundColor: 'transparent',\n border: '0 solid black',\n boxSizing: 'border-box',\n color: 'black',\n display: 'inline',\n font: '14px System',\n listStyle: 'none',\n margin: 0,\n padding: 0,\n position: 'relative',\n textAlign: 'start',\n textDecoration: 'none',\n whiteSpace: 'pre-wrap',\n wordWrap: 'break-word'\n};\nvar styles = StyleSheet.create({\n text$raw: textStyle,\n textHasAncestor$raw: _objectSpread(_objectSpread({}, textStyle), {}, {\n color: 'inherit',\n font: 'inherit',\n textAlign: 'inherit',\n whiteSpace: 'inherit'\n }),\n textOneLine: {\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n wordWrap: 'normal'\n },\n // See #13\n textMultiLine: {\n display: '-webkit-box',\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n WebkitBoxOrient: 'vertical'\n },\n notSelectable: {\n userSelect: 'none'\n },\n selectable: {\n userSelect: 'text'\n },\n pressable: {\n cursor: 'pointer'\n }\n});\nexport default Text;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport createElement from '../createElement';\nimport * as forwardedProps from '../../modules/forwardedProps';\nimport pick from '../../modules/pick';\nimport useElementLayout from '../../modules/useElementLayout';\nimport useLayoutEffect from '../../modules/useLayoutEffect';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport usePlatformMethods from '../../modules/usePlatformMethods';\nimport useResponderEvents from '../../modules/useResponderEvents';\nimport { getLocaleDirection, useLocaleContext } from '../../modules/useLocale';\nimport StyleSheet from '../StyleSheet';\nimport TextInputState from '../../modules/TextInputState';\nimport { warnOnce } from '../../modules/warnOnce';\n\n/**\n * Determines whether a 'selection' prop differs from a node's existing\n * selection state.\n */\nvar isSelectionStale = (node, selection) => {\n var selectionEnd = node.selectionEnd,\n selectionStart = node.selectionStart;\n var start = selection.start,\n end = selection.end;\n return start !== selectionStart || end !== selectionEnd;\n};\n\n/**\n * Certain input types do no support 'selectSelectionRange' and will throw an\n * error.\n */\nvar setSelection = (node, selection) => {\n if (isSelectionStale(node, selection)) {\n var start = selection.start,\n end = selection.end;\n try {\n node.setSelectionRange(start, end || start);\n } catch (e) {}\n }\n};\nvar forwardPropsList = Object.assign({}, forwardedProps.defaultProps, forwardedProps.accessibilityProps, forwardedProps.clickProps, forwardedProps.focusProps, forwardedProps.keyboardProps, forwardedProps.mouseProps, forwardedProps.touchProps, forwardedProps.styleProps, {\n autoCapitalize: true,\n autoComplete: true,\n autoCorrect: true,\n autoFocus: true,\n defaultValue: true,\n disabled: true,\n lang: true,\n maxLength: true,\n onChange: true,\n onScroll: true,\n placeholder: true,\n pointerEvents: true,\n readOnly: true,\n rows: true,\n spellCheck: true,\n value: true,\n type: true\n});\nvar pickProps = props => pick(props, forwardPropsList);\n\n// If an Input Method Editor is processing key input, the 'keyCode' is 229.\n// https://www.w3.org/TR/uievents/#determine-keydown-keyup-keyCode\nfunction isEventComposing(nativeEvent) {\n return nativeEvent.isComposing || nativeEvent.keyCode === 229;\n}\nvar focusTimeout = null;\nvar TextInput = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n var _props$autoCapitalize = props.autoCapitalize,\n autoCapitalize = _props$autoCapitalize === void 0 ? 'sentences' : _props$autoCapitalize,\n autoComplete = props.autoComplete,\n autoCompleteType = props.autoCompleteType,\n _props$autoCorrect = props.autoCorrect,\n autoCorrect = _props$autoCorrect === void 0 ? true : _props$autoCorrect,\n blurOnSubmit = props.blurOnSubmit,\n caretHidden = props.caretHidden,\n clearTextOnFocus = props.clearTextOnFocus,\n dir = props.dir,\n editable = props.editable,\n enterKeyHint = props.enterKeyHint,\n inputMode = props.inputMode,\n keyboardType = props.keyboardType,\n _props$multiline = props.multiline,\n multiline = _props$multiline === void 0 ? false : _props$multiline,\n numberOfLines = props.numberOfLines,\n onBlur = props.onBlur,\n onChange = props.onChange,\n onChangeText = props.onChangeText,\n onContentSizeChange = props.onContentSizeChange,\n onFocus = props.onFocus,\n onKeyPress = props.onKeyPress,\n onLayout = props.onLayout,\n onMoveShouldSetResponder = props.onMoveShouldSetResponder,\n onMoveShouldSetResponderCapture = props.onMoveShouldSetResponderCapture,\n onResponderEnd = props.onResponderEnd,\n onResponderGrant = props.onResponderGrant,\n onResponderMove = props.onResponderMove,\n onResponderReject = props.onResponderReject,\n onResponderRelease = props.onResponderRelease,\n onResponderStart = props.onResponderStart,\n onResponderTerminate = props.onResponderTerminate,\n onResponderTerminationRequest = props.onResponderTerminationRequest,\n onScrollShouldSetResponder = props.onScrollShouldSetResponder,\n onScrollShouldSetResponderCapture = props.onScrollShouldSetResponderCapture,\n onSelectionChange = props.onSelectionChange,\n onSelectionChangeShouldSetResponder = props.onSelectionChangeShouldSetResponder,\n onSelectionChangeShouldSetResponderCapture = props.onSelectionChangeShouldSetResponderCapture,\n onStartShouldSetResponder = props.onStartShouldSetResponder,\n onStartShouldSetResponderCapture = props.onStartShouldSetResponderCapture,\n onSubmitEditing = props.onSubmitEditing,\n placeholderTextColor = props.placeholderTextColor,\n _props$readOnly = props.readOnly,\n readOnly = _props$readOnly === void 0 ? false : _props$readOnly,\n returnKeyType = props.returnKeyType,\n rows = props.rows,\n _props$secureTextEntr = props.secureTextEntry,\n secureTextEntry = _props$secureTextEntr === void 0 ? false : _props$secureTextEntr,\n selection = props.selection,\n selectTextOnFocus = props.selectTextOnFocus,\n spellCheck = props.spellCheck;\n var type;\n var _inputMode;\n if (inputMode != null) {\n _inputMode = inputMode;\n if (inputMode === 'email') {\n type = 'email';\n } else if (inputMode === 'tel') {\n type = 'tel';\n } else if (inputMode === 'search') {\n type = 'search';\n } else if (inputMode === 'url') {\n type = 'url';\n } else {\n type = 'text';\n }\n } else if (keyboardType != null) {\n warnOnce('keyboardType', 'keyboardType is deprecated. Use inputMode.');\n switch (keyboardType) {\n case 'email-address':\n type = 'email';\n break;\n case 'number-pad':\n case 'numeric':\n _inputMode = 'numeric';\n break;\n case 'decimal-pad':\n _inputMode = 'decimal';\n break;\n case 'phone-pad':\n type = 'tel';\n break;\n case 'search':\n case 'web-search':\n type = 'search';\n break;\n case 'url':\n type = 'url';\n break;\n default:\n type = 'text';\n }\n }\n if (secureTextEntry) {\n type = 'password';\n }\n var dimensions = React.useRef({\n height: null,\n width: null\n });\n var hostRef = React.useRef(null);\n var prevSelection = React.useRef(null);\n var prevSecureTextEntry = React.useRef(false);\n React.useEffect(() => {\n if (hostRef.current && prevSelection.current) {\n setSelection(hostRef.current, prevSelection.current);\n }\n prevSecureTextEntry.current = secureTextEntry;\n }, [secureTextEntry]);\n var handleContentSizeChange = React.useCallback(hostNode => {\n if (multiline && onContentSizeChange && hostNode != null) {\n var newHeight = hostNode.scrollHeight;\n var newWidth = hostNode.scrollWidth;\n if (newHeight !== dimensions.current.height || newWidth !== dimensions.current.width) {\n dimensions.current.height = newHeight;\n dimensions.current.width = newWidth;\n onContentSizeChange({\n nativeEvent: {\n contentSize: {\n height: dimensions.current.height,\n width: dimensions.current.width\n }\n }\n });\n }\n }\n }, [multiline, onContentSizeChange]);\n var imperativeRef = React.useMemo(() => hostNode => {\n // TextInput needs to add more methods to the hostNode in addition to those\n // added by `usePlatformMethods`. This is temporarily until an API like\n // `TextInput.clear(hostRef)` is added to React Native.\n if (hostNode != null) {\n hostNode.clear = function () {\n if (hostNode != null) {\n hostNode.value = '';\n }\n };\n hostNode.isFocused = function () {\n return hostNode != null && TextInputState.currentlyFocusedField() === hostNode;\n };\n handleContentSizeChange(hostNode);\n }\n }, [handleContentSizeChange]);\n function handleBlur(e) {\n TextInputState._currentlyFocusedNode = null;\n if (onBlur) {\n e.nativeEvent.text = e.target.value;\n onBlur(e);\n }\n }\n function handleChange(e) {\n var hostNode = e.target;\n var text = hostNode.value;\n e.nativeEvent.text = text;\n handleContentSizeChange(hostNode);\n if (onChange) {\n onChange(e);\n }\n if (onChangeText) {\n onChangeText(text);\n }\n }\n function handleFocus(e) {\n var hostNode = e.target;\n if (onFocus) {\n e.nativeEvent.text = hostNode.value;\n onFocus(e);\n }\n if (hostNode != null) {\n TextInputState._currentlyFocusedNode = hostNode;\n if (clearTextOnFocus) {\n hostNode.value = '';\n }\n if (selectTextOnFocus) {\n // Safari requires selection to occur in a setTimeout\n if (focusTimeout != null) {\n clearTimeout(focusTimeout);\n }\n focusTimeout = setTimeout(() => {\n if (hostNode != null) {\n hostNode.select();\n }\n }, 0);\n }\n }\n }\n function handleKeyDown(e) {\n var hostNode = e.target;\n // Prevent key events bubbling (see #612)\n e.stopPropagation();\n var blurOnSubmitDefault = !multiline;\n var shouldBlurOnSubmit = blurOnSubmit == null ? blurOnSubmitDefault : blurOnSubmit;\n var nativeEvent = e.nativeEvent;\n var isComposing = isEventComposing(nativeEvent);\n if (onKeyPress) {\n onKeyPress(e);\n }\n if (e.key === 'Enter' && !e.shiftKey &&\n // Do not call submit if composition is occuring.\n !isComposing && !e.isDefaultPrevented()) {\n if ((blurOnSubmit || !multiline) && onSubmitEditing) {\n // prevent \"Enter\" from inserting a newline or submitting a form\n e.preventDefault();\n nativeEvent.text = e.target.value;\n onSubmitEditing(e);\n }\n if (shouldBlurOnSubmit && hostNode != null) {\n setTimeout(() => hostNode.blur(), 0);\n }\n }\n }\n function handleSelectionChange(e) {\n try {\n var _e$target = e.target,\n selectionStart = _e$target.selectionStart,\n selectionEnd = _e$target.selectionEnd;\n var _selection = {\n start: selectionStart,\n end: selectionEnd\n };\n if (onSelectionChange) {\n e.nativeEvent.selection = _selection;\n e.nativeEvent.text = e.target.value;\n onSelectionChange(e);\n }\n if (prevSecureTextEntry.current === secureTextEntry) {\n prevSelection.current = _selection;\n }\n } catch (e) {}\n }\n useLayoutEffect(() => {\n var node = hostRef.current;\n if (node != null && selection != null) {\n setSelection(node, selection);\n }\n if (document.activeElement === node) {\n TextInputState._currentlyFocusedNode = node;\n }\n }, [hostRef, selection]);\n var component = multiline ? 'textarea' : 'input';\n useElementLayout(hostRef, onLayout);\n useResponderEvents(hostRef, {\n onMoveShouldSetResponder,\n onMoveShouldSetResponderCapture,\n onResponderEnd,\n onResponderGrant,\n onResponderMove,\n onResponderReject,\n onResponderRelease,\n onResponderStart,\n onResponderTerminate,\n onResponderTerminationRequest,\n onScrollShouldSetResponder,\n onScrollShouldSetResponderCapture,\n onSelectionChangeShouldSetResponder,\n onSelectionChangeShouldSetResponderCapture,\n onStartShouldSetResponder,\n onStartShouldSetResponderCapture\n });\n var _useLocaleContext = useLocaleContext(),\n contextDirection = _useLocaleContext.direction;\n var supportedProps = pickProps(props);\n supportedProps.autoCapitalize = autoCapitalize;\n supportedProps.autoComplete = autoComplete || autoCompleteType || 'on';\n supportedProps.autoCorrect = autoCorrect ? 'on' : 'off';\n // 'auto' by default allows browsers to infer writing direction\n supportedProps.dir = dir !== undefined ? dir : 'auto';\n if (returnKeyType != null) {\n warnOnce('returnKeyType', 'returnKeyType is deprecated. Use enterKeyHint.');\n }\n supportedProps.enterKeyHint = enterKeyHint || returnKeyType;\n supportedProps.inputMode = _inputMode;\n supportedProps.onBlur = handleBlur;\n supportedProps.onChange = handleChange;\n supportedProps.onFocus = handleFocus;\n supportedProps.onKeyDown = handleKeyDown;\n supportedProps.onSelect = handleSelectionChange;\n if (editable != null) {\n warnOnce('editable', 'editable is deprecated. Use readOnly.');\n }\n supportedProps.readOnly = readOnly === true || editable === false;\n if (numberOfLines != null) {\n warnOnce('numberOfLines', 'TextInput numberOfLines is deprecated. Use rows.');\n }\n supportedProps.rows = multiline ? rows != null ? rows : numberOfLines : 1;\n supportedProps.spellCheck = spellCheck != null ? spellCheck : autoCorrect;\n supportedProps.style = [{\n '--placeholderTextColor': placeholderTextColor\n }, styles.textinput$raw, styles.placeholder, props.style, caretHidden && styles.caretHidden];\n supportedProps.type = multiline ? undefined : type;\n var platformMethodsRef = usePlatformMethods(supportedProps);\n var setRef = useMergeRefs(hostRef, platformMethodsRef, imperativeRef, forwardedRef);\n supportedProps.ref = setRef;\n var langDirection = props.lang != null ? getLocaleDirection(props.lang) : null;\n var componentDirection = props.dir || langDirection;\n var writingDirection = componentDirection || contextDirection;\n var element = createElement(component, supportedProps, {\n writingDirection\n });\n return element;\n});\nTextInput.displayName = 'TextInput';\n// $FlowFixMe\nTextInput.State = TextInputState;\nvar styles = StyleSheet.create({\n textinput$raw: {\n MozAppearance: 'textfield',\n WebkitAppearance: 'none',\n backgroundColor: 'transparent',\n border: '0 solid black',\n borderRadius: 0,\n boxSizing: 'border-box',\n font: '14px System',\n margin: 0,\n padding: 0,\n resize: 'none'\n },\n placeholder: {\n placeholderTextColor: 'var(--placeholderTextColor)'\n },\n caretHidden: {\n caretColor: 'transparent'\n }\n});\nexport default TextInput;","/* eslint-disable */\n\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * From React 16.0.0\n */\n\nimport invariant from 'fbjs/lib/invariant';\nvar twoArgumentPooler = function twoArgumentPooler(a1, a2) {\n var Klass = this;\n if (Klass.instancePool.length) {\n var instance = Klass.instancePool.pop();\n Klass.call(instance, a1, a2);\n return instance;\n } else {\n return new Klass(a1, a2);\n }\n};\nvar standardReleaser = function standardReleaser(instance) {\n var Klass = this;\n instance.destructor();\n if (Klass.instancePool.length < Klass.poolSize) {\n Klass.instancePool.push(instance);\n }\n};\nvar DEFAULT_POOL_SIZE = 10;\nvar DEFAULT_POOLER = twoArgumentPooler;\n\n/**\n * Augments `CopyConstructor` to be a poolable class, augmenting only the class\n * itself (statically) not adding any prototypical fields. Any CopyConstructor\n * you give this may have a `poolSize` property, and will look for a\n * prototypical `destructor` on instances.\n *\n * @param {Function} CopyConstructor Constructor that can be used to reset.\n * @param {Function} pooler Customizable pooler.\n */\nvar addPoolingTo = function addPoolingTo(CopyConstructor, pooler) {\n // Casting as any so that flow ignores the actual implementation and trusts\n // it to match the type we declared\n var NewKlass = CopyConstructor;\n NewKlass.instancePool = [];\n NewKlass.getPooled = pooler || DEFAULT_POOLER;\n if (!NewKlass.poolSize) {\n NewKlass.poolSize = DEFAULT_POOL_SIZE;\n }\n NewKlass.release = standardReleaser;\n return NewKlass;\n};\nvar PooledClass = {\n addPoolingTo: addPoolingTo,\n twoArgumentPooler: twoArgumentPooler\n};\nexport default PooledClass;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport PooledClass from '../../vendor/react-native/PooledClass';\nvar twoArgumentPooler = PooledClass.twoArgumentPooler;\n\n/**\n * PooledClass representing the bounding rectangle of a region.\n */\nfunction BoundingDimensions(width, height) {\n this.width = width;\n this.height = height;\n}\nBoundingDimensions.prototype.destructor = function () {\n this.width = null;\n this.height = null;\n};\nBoundingDimensions.getPooledFromElement = function (element) {\n return BoundingDimensions.getPooled(element.offsetWidth, element.offsetHeight);\n};\nPooledClass.addPoolingTo(BoundingDimensions, twoArgumentPooler);\nexport default BoundingDimensions;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport PooledClass from '../../vendor/react-native/PooledClass';\nvar twoArgumentPooler = PooledClass.twoArgumentPooler;\nfunction Position(left, top) {\n this.left = left;\n this.top = top;\n}\nPosition.prototype.destructor = function () {\n this.left = null;\n this.top = null;\n};\nPooledClass.addPoolingTo(Position, twoArgumentPooler);\nexport default Position;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport AccessibilityUtil from '../../modules/AccessibilityUtil';\nimport BoundingDimensions from './BoundingDimensions';\nimport normalizeColor from '@react-native/normalize-colors';\nimport Position from './Position';\nimport React from 'react';\nimport UIManager from '../UIManager';\nimport View from '../View';\nimport { warnOnce } from '../../modules/warnOnce';\nvar extractSingleTouch = nativeEvent => {\n var touches = nativeEvent.touches;\n var changedTouches = nativeEvent.changedTouches;\n var hasTouches = touches && touches.length > 0;\n var hasChangedTouches = changedTouches && changedTouches.length > 0;\n return !hasTouches && hasChangedTouches ? changedTouches[0] : hasTouches ? touches[0] : nativeEvent;\n};\n\n/**\n * `Touchable`: Taps done right.\n *\n * You hook your `ResponderEventPlugin` events into `Touchable`. `Touchable`\n * will measure time/geometry and tells you when to give feedback to the user.\n *\n * ====================== Touchable Tutorial ===============================\n * The `Touchable` mixin helps you handle the \"press\" interaction. It analyzes\n * the geometry of elements, and observes when another responder (scroll view\n * etc) has stolen the touch lock. It notifies your component when it should\n * give feedback to the user. (bouncing/highlighting/unhighlighting).\n *\n * - When a touch was activated (typically you highlight)\n * - When a touch was deactivated (typically you unhighlight)\n * - When a touch was \"pressed\" - a touch ended while still within the geometry\n * of the element, and no other element (like scroller) has \"stolen\" touch\n * lock (\"responder\") (Typically you bounce the element).\n *\n * A good tap interaction isn't as simple as you might think. There should be a\n * slight delay before showing a highlight when starting a touch. If a\n * subsequent touch move exceeds the boundary of the element, it should\n * unhighlight, but if that same touch is brought back within the boundary, it\n * should rehighlight again. A touch can move in and out of that boundary\n * several times, each time toggling highlighting, but a \"press\" is only\n * triggered if that touch ends while within the element's boundary and no\n * scroller (or anything else) has stolen the lock on touches.\n *\n * To create a new type of component that handles interaction using the\n * `Touchable` mixin, do the following:\n *\n * - Initialize the `Touchable` state.\n *\n * getInitialState: function() {\n * return merge(this.touchableGetInitialState(), yourComponentState);\n * }\n *\n * - Add a method to get your touchable component's node.\n * getTouchableNode: function() {\n * return this.touchableRef.current\n * }\n *\n * - Choose the rendered component who's touches should start the interactive\n * sequence. On that rendered node, forward all `Touchable` responder\n * handlers. You can choose any rendered node you like. Choose a node whose\n * hit target you'd like to instigate the interaction sequence:\n *\n * // In render function:\n * return (\n * \n * \n * Even though the hit detection/interactions are triggered by the\n * wrapping (typically larger) node, we usually end up implementing\n * custom logic that highlights this inner one.\n * \n * \n * );\n *\n * - You may set up your own handlers for each of these events, so long as you\n * also invoke the `touchable*` handlers inside of your custom handler.\n *\n * - Implement the handlers on your component class in order to provide\n * feedback to the user. See documentation for each of these class methods\n * that you should implement.\n *\n * touchableHandlePress: function() {\n * this.performBounceAnimation(); // or whatever you want to do.\n * },\n * touchableHandleActivePressIn: function() {\n * this.beginHighlighting(...); // Whatever you like to convey activation\n * },\n * touchableHandleActivePressOut: function() {\n * this.endHighlighting(...); // Whatever you like to convey deactivation\n * },\n *\n * - There are more advanced methods you can implement (see documentation below):\n * touchableGetHighlightDelayMS: function() {\n * return 20;\n * }\n * // In practice, *always* use a predeclared constant (conserve memory).\n * touchableGetPressRectOffset: function() {\n * return {top: 20, left: 20, right: 20, bottom: 100};\n * }\n */\n\n/**\n * Touchable states.\n */\n\nvar States = {\n NOT_RESPONDER: 'NOT_RESPONDER',\n // Not the responder\n RESPONDER_INACTIVE_PRESS_IN: 'RESPONDER_INACTIVE_PRESS_IN',\n // Responder, inactive, in the `PressRect`\n RESPONDER_INACTIVE_PRESS_OUT: 'RESPONDER_INACTIVE_PRESS_OUT',\n // Responder, inactive, out of `PressRect`\n RESPONDER_ACTIVE_PRESS_IN: 'RESPONDER_ACTIVE_PRESS_IN',\n // Responder, active, in the `PressRect`\n RESPONDER_ACTIVE_PRESS_OUT: 'RESPONDER_ACTIVE_PRESS_OUT',\n // Responder, active, out of `PressRect`\n RESPONDER_ACTIVE_LONG_PRESS_IN: 'RESPONDER_ACTIVE_LONG_PRESS_IN',\n // Responder, active, in the `PressRect`, after long press threshold\n RESPONDER_ACTIVE_LONG_PRESS_OUT: 'RESPONDER_ACTIVE_LONG_PRESS_OUT',\n // Responder, active, out of `PressRect`, after long press threshold\n ERROR: 'ERROR'\n};\n/*\n * Quick lookup map for states that are considered to be \"active\"\n */\n\nvar baseStatesConditions = {\n NOT_RESPONDER: false,\n RESPONDER_INACTIVE_PRESS_IN: false,\n RESPONDER_INACTIVE_PRESS_OUT: false,\n RESPONDER_ACTIVE_PRESS_IN: false,\n RESPONDER_ACTIVE_PRESS_OUT: false,\n RESPONDER_ACTIVE_LONG_PRESS_IN: false,\n RESPONDER_ACTIVE_LONG_PRESS_OUT: false,\n ERROR: false\n};\nvar IsActive = _objectSpread(_objectSpread({}, baseStatesConditions), {}, {\n RESPONDER_ACTIVE_PRESS_OUT: true,\n RESPONDER_ACTIVE_PRESS_IN: true\n});\n\n/**\n * Quick lookup for states that are considered to be \"pressing\" and are\n * therefore eligible to result in a \"selection\" if the press stops.\n */\nvar IsPressingIn = _objectSpread(_objectSpread({}, baseStatesConditions), {}, {\n RESPONDER_INACTIVE_PRESS_IN: true,\n RESPONDER_ACTIVE_PRESS_IN: true,\n RESPONDER_ACTIVE_LONG_PRESS_IN: true\n});\nvar IsLongPressingIn = _objectSpread(_objectSpread({}, baseStatesConditions), {}, {\n RESPONDER_ACTIVE_LONG_PRESS_IN: true\n});\n\n/**\n * Inputs to the state machine.\n */\nvar Signals = {\n DELAY: 'DELAY',\n RESPONDER_GRANT: 'RESPONDER_GRANT',\n RESPONDER_RELEASE: 'RESPONDER_RELEASE',\n RESPONDER_TERMINATED: 'RESPONDER_TERMINATED',\n ENTER_PRESS_RECT: 'ENTER_PRESS_RECT',\n LEAVE_PRESS_RECT: 'LEAVE_PRESS_RECT',\n LONG_PRESS_DETECTED: 'LONG_PRESS_DETECTED'\n};\n/**\n * Mapping from States x Signals => States\n */\nvar Transitions = {\n NOT_RESPONDER: {\n DELAY: States.ERROR,\n RESPONDER_GRANT: States.RESPONDER_INACTIVE_PRESS_IN,\n RESPONDER_RELEASE: States.ERROR,\n RESPONDER_TERMINATED: States.ERROR,\n ENTER_PRESS_RECT: States.ERROR,\n LEAVE_PRESS_RECT: States.ERROR,\n LONG_PRESS_DETECTED: States.ERROR\n },\n RESPONDER_INACTIVE_PRESS_IN: {\n DELAY: States.RESPONDER_ACTIVE_PRESS_IN,\n RESPONDER_GRANT: States.ERROR,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_IN,\n LEAVE_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_OUT,\n LONG_PRESS_DETECTED: States.ERROR\n },\n RESPONDER_INACTIVE_PRESS_OUT: {\n DELAY: States.RESPONDER_ACTIVE_PRESS_OUT,\n RESPONDER_GRANT: States.ERROR,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_IN,\n LEAVE_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_OUT,\n LONG_PRESS_DETECTED: States.ERROR\n },\n RESPONDER_ACTIVE_PRESS_IN: {\n DELAY: States.ERROR,\n RESPONDER_GRANT: States.ERROR,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_IN,\n LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_OUT,\n LONG_PRESS_DETECTED: States.RESPONDER_ACTIVE_LONG_PRESS_IN\n },\n RESPONDER_ACTIVE_PRESS_OUT: {\n DELAY: States.ERROR,\n RESPONDER_GRANT: States.ERROR,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_IN,\n LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_OUT,\n LONG_PRESS_DETECTED: States.ERROR\n },\n RESPONDER_ACTIVE_LONG_PRESS_IN: {\n DELAY: States.ERROR,\n RESPONDER_GRANT: States.ERROR,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_IN,\n LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_OUT,\n LONG_PRESS_DETECTED: States.RESPONDER_ACTIVE_LONG_PRESS_IN\n },\n RESPONDER_ACTIVE_LONG_PRESS_OUT: {\n DELAY: States.ERROR,\n RESPONDER_GRANT: States.ERROR,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_IN,\n LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_OUT,\n LONG_PRESS_DETECTED: States.ERROR\n },\n error: {\n DELAY: States.NOT_RESPONDER,\n RESPONDER_GRANT: States.RESPONDER_INACTIVE_PRESS_IN,\n RESPONDER_RELEASE: States.NOT_RESPONDER,\n RESPONDER_TERMINATED: States.NOT_RESPONDER,\n ENTER_PRESS_RECT: States.NOT_RESPONDER,\n LEAVE_PRESS_RECT: States.NOT_RESPONDER,\n LONG_PRESS_DETECTED: States.NOT_RESPONDER\n }\n};\n\n// ==== Typical Constants for integrating into UI components ====\n// var HIT_EXPAND_PX = 20;\n// var HIT_VERT_OFFSET_PX = 10;\nvar HIGHLIGHT_DELAY_MS = 130;\nvar PRESS_EXPAND_PX = 20;\nvar LONG_PRESS_THRESHOLD = 500;\nvar LONG_PRESS_DELAY_MS = LONG_PRESS_THRESHOLD - HIGHLIGHT_DELAY_MS;\nvar LONG_PRESS_ALLOWED_MOVEMENT = 10;\n\n// Default amount \"active\" region protrudes beyond box\n\n/**\n * By convention, methods prefixed with underscores are meant to be @private,\n * and not @protected. Mixers shouldn't access them - not even to provide them\n * as callback handlers.\n *\n *\n * ========== Geometry =========\n * `Touchable` only assumes that there exists a `HitRect` node. The `PressRect`\n * is an abstract box that is extended beyond the `HitRect`.\n *\n * +--------------------------+\n * | | - \"Start\" events in `HitRect` cause `HitRect`\n * | +--------------------+ | to become the responder.\n * | | +--------------+ | | - `HitRect` is typically expanded around\n * | | | | | | the `VisualRect`, but shifted downward.\n * | | | VisualRect | | | - After pressing down, after some delay,\n * | | | | | | and before letting up, the Visual React\n * | | +--------------+ | | will become \"active\". This makes it eligible\n * | | HitRect | | for being highlighted (so long as the\n * | +--------------------+ | press remains in the `PressRect`).\n * | PressRect o |\n * +----------------------|---+\n * Out Region |\n * +-----+ This gap between the `HitRect` and\n * `PressRect` allows a touch to move far away\n * from the original hit rect, and remain\n * highlighted, and eligible for a \"Press\".\n * Customize this via\n * `touchableGetPressRectOffset()`.\n *\n *\n *\n * ======= State Machine =======\n *\n * +-------------+ <---+ RESPONDER_RELEASE\n * |NOT_RESPONDER|\n * +-------------+ <---+ RESPONDER_TERMINATED\n * +\n * | RESPONDER_GRANT (HitRect)\n * v\n * +---------------------------+ DELAY +-------------------------+ T + DELAY +------------------------------+\n * |RESPONDER_INACTIVE_PRESS_IN|+-------->|RESPONDER_ACTIVE_PRESS_IN| +------------> |RESPONDER_ACTIVE_LONG_PRESS_IN|\n * +---------------------------+ +-------------------------+ +------------------------------+\n * + ^ + ^ + ^\n * |LEAVE_ |ENTER_ |LEAVE_ |ENTER_ |LEAVE_ |ENTER_\n * |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT\n * | | | | | |\n * v + v + v +\n * +----------------------------+ DELAY +--------------------------+ +-------------------------------+\n * |RESPONDER_INACTIVE_PRESS_OUT|+------->|RESPONDER_ACTIVE_PRESS_OUT| |RESPONDER_ACTIVE_LONG_PRESS_OUT|\n * +----------------------------+ +--------------------------+ +-------------------------------+\n *\n * T + DELAY => LONG_PRESS_DELAY_MS + DELAY\n *\n * Not drawn are the side effects of each transition. The most important side\n * effect is the `touchableHandlePress` abstract method invocation that occurs\n * when a responder is released while in either of the \"Press\" states.\n *\n * The other important side effects are the highlight abstract method\n * invocations (internal callbacks) to be implemented by the mixer.\n *\n *\n * @lends Touchable.prototype\n */\nvar TouchableMixin = {\n // HACK (part 1): basic support for touchable interactions using a keyboard\n componentDidMount: function componentDidMount() {\n warnOnce('TouchableMixin', 'TouchableMixin is deprecated. Please use Pressable.');\n var touchableNode = this.getTouchableNode && this.getTouchableNode();\n if (touchableNode && touchableNode.addEventListener) {\n this._touchableBlurListener = e => {\n if (this._isTouchableKeyboardActive) {\n if (this.state.touchable.touchState && this.state.touchable.touchState !== States.NOT_RESPONDER) {\n this.touchableHandleResponderTerminate({\n nativeEvent: e\n });\n }\n this._isTouchableKeyboardActive = false;\n }\n };\n touchableNode.addEventListener('blur', this._touchableBlurListener);\n }\n },\n /**\n * Clear all timeouts on unmount\n */\n componentWillUnmount: function componentWillUnmount() {\n var touchableNode = this.getTouchableNode && this.getTouchableNode();\n if (touchableNode && touchableNode.addEventListener) {\n touchableNode.removeEventListener('blur', this._touchableBlurListener);\n }\n this.touchableDelayTimeout && clearTimeout(this.touchableDelayTimeout);\n this.longPressDelayTimeout && clearTimeout(this.longPressDelayTimeout);\n this.pressOutDelayTimeout && clearTimeout(this.pressOutDelayTimeout);\n // Clear DOM nodes\n this.pressInLocation = null;\n this.state.touchable.responderID = null;\n },\n /**\n * It's prefer that mixins determine state in this way, having the class\n * explicitly mix the state in the one and only `getInitialState` method.\n *\n * @return {object} State object to be placed inside of\n * `this.state.touchable`.\n */\n touchableGetInitialState: function touchableGetInitialState() {\n return {\n touchable: {\n touchState: undefined,\n responderID: null\n }\n };\n },\n // ==== Hooks to Gesture Responder system ====\n /**\n * Must return true if embedded in a native platform scroll view.\n */\n touchableHandleResponderTerminationRequest: function touchableHandleResponderTerminationRequest() {\n return !this.props.rejectResponderTermination;\n },\n /**\n * Must return true to start the process of `Touchable`.\n */\n touchableHandleStartShouldSetResponder: function touchableHandleStartShouldSetResponder() {\n return !this.props.disabled;\n },\n /**\n * Return true to cancel press on long press.\n */\n touchableLongPressCancelsPress: function touchableLongPressCancelsPress() {\n return true;\n },\n /**\n * Place as callback for a DOM element's `onResponderGrant` event.\n * @param {SyntheticEvent} e Synthetic event from event system.\n *\n */\n touchableHandleResponderGrant: function touchableHandleResponderGrant(e) {\n var dispatchID = e.currentTarget;\n // Since e is used in a callback invoked on another event loop\n // (as in setTimeout etc), we need to call e.persist() on the\n // event to make sure it doesn't get reused in the event object pool.\n e.persist();\n this.pressOutDelayTimeout && clearTimeout(this.pressOutDelayTimeout);\n this.pressOutDelayTimeout = null;\n this.state.touchable.touchState = States.NOT_RESPONDER;\n this.state.touchable.responderID = dispatchID;\n this._receiveSignal(Signals.RESPONDER_GRANT, e);\n var delayMS = this.touchableGetHighlightDelayMS !== undefined ? Math.max(this.touchableGetHighlightDelayMS(), 0) : HIGHLIGHT_DELAY_MS;\n delayMS = isNaN(delayMS) ? HIGHLIGHT_DELAY_MS : delayMS;\n if (delayMS !== 0) {\n this.touchableDelayTimeout = setTimeout(this._handleDelay.bind(this, e), delayMS);\n } else {\n this._handleDelay(e);\n }\n var longDelayMS = this.touchableGetLongPressDelayMS !== undefined ? Math.max(this.touchableGetLongPressDelayMS(), 10) : LONG_PRESS_DELAY_MS;\n longDelayMS = isNaN(longDelayMS) ? LONG_PRESS_DELAY_MS : longDelayMS;\n this.longPressDelayTimeout = setTimeout(this._handleLongDelay.bind(this, e), longDelayMS + delayMS);\n },\n /**\n * Place as callback for a DOM element's `onResponderRelease` event.\n */\n touchableHandleResponderRelease: function touchableHandleResponderRelease(e) {\n this.pressInLocation = null;\n this._receiveSignal(Signals.RESPONDER_RELEASE, e);\n },\n /**\n * Place as callback for a DOM element's `onResponderTerminate` event.\n */\n touchableHandleResponderTerminate: function touchableHandleResponderTerminate(e) {\n this.pressInLocation = null;\n this._receiveSignal(Signals.RESPONDER_TERMINATED, e);\n },\n /**\n * Place as callback for a DOM element's `onResponderMove` event.\n */\n touchableHandleResponderMove: function touchableHandleResponderMove(e) {\n // Measurement may not have returned yet.\n if (!this.state.touchable.positionOnActivate) {\n return;\n }\n var positionOnActivate = this.state.touchable.positionOnActivate;\n var dimensionsOnActivate = this.state.touchable.dimensionsOnActivate;\n var pressRectOffset = this.touchableGetPressRectOffset ? this.touchableGetPressRectOffset() : {\n left: PRESS_EXPAND_PX,\n right: PRESS_EXPAND_PX,\n top: PRESS_EXPAND_PX,\n bottom: PRESS_EXPAND_PX\n };\n var pressExpandLeft = pressRectOffset.left;\n var pressExpandTop = pressRectOffset.top;\n var pressExpandRight = pressRectOffset.right;\n var pressExpandBottom = pressRectOffset.bottom;\n var hitSlop = this.touchableGetHitSlop ? this.touchableGetHitSlop() : null;\n if (hitSlop) {\n pressExpandLeft += hitSlop.left || 0;\n pressExpandTop += hitSlop.top || 0;\n pressExpandRight += hitSlop.right || 0;\n pressExpandBottom += hitSlop.bottom || 0;\n }\n var touch = extractSingleTouch(e.nativeEvent);\n var pageX = touch && touch.pageX;\n var pageY = touch && touch.pageY;\n if (this.pressInLocation) {\n var movedDistance = this._getDistanceBetweenPoints(pageX, pageY, this.pressInLocation.pageX, this.pressInLocation.pageY);\n if (movedDistance > LONG_PRESS_ALLOWED_MOVEMENT) {\n this._cancelLongPressDelayTimeout();\n }\n }\n var isTouchWithinActive = pageX > positionOnActivate.left - pressExpandLeft && pageY > positionOnActivate.top - pressExpandTop && pageX < positionOnActivate.left + dimensionsOnActivate.width + pressExpandRight && pageY < positionOnActivate.top + dimensionsOnActivate.height + pressExpandBottom;\n if (isTouchWithinActive) {\n var prevState = this.state.touchable.touchState;\n this._receiveSignal(Signals.ENTER_PRESS_RECT, e);\n var curState = this.state.touchable.touchState;\n if (curState === States.RESPONDER_INACTIVE_PRESS_IN && prevState !== States.RESPONDER_INACTIVE_PRESS_IN) {\n // fix for t7967420\n this._cancelLongPressDelayTimeout();\n }\n } else {\n this._cancelLongPressDelayTimeout();\n this._receiveSignal(Signals.LEAVE_PRESS_RECT, e);\n }\n },\n /**\n * Invoked when the item receives focus. Mixers might override this to\n * visually distinguish the `VisualRect` so that the user knows that it\n * currently has the focus. Most platforms only support a single element being\n * focused at a time, in which case there may have been a previously focused\n * element that was blurred just prior to this. This can be overridden when\n * using `Touchable.Mixin.withoutDefaultFocusAndBlur`.\n */\n touchableHandleFocus: function touchableHandleFocus(e) {\n this.props.onFocus && this.props.onFocus(e);\n },\n /**\n * Invoked when the item loses focus. Mixers might override this to\n * visually distinguish the `VisualRect` so that the user knows that it\n * no longer has focus. Most platforms only support a single element being\n * focused at a time, in which case the focus may have moved to another.\n * This can be overridden when using\n * `Touchable.Mixin.withoutDefaultFocusAndBlur`.\n */\n touchableHandleBlur: function touchableHandleBlur(e) {\n this.props.onBlur && this.props.onBlur(e);\n },\n // ==== Abstract Application Callbacks ====\n\n /**\n * Invoked when the item should be highlighted. Mixers should implement this\n * to visually distinguish the `VisualRect` so that the user knows that\n * releasing a touch will result in a \"selection\" (analog to click).\n *\n * @abstract\n * touchableHandleActivePressIn: function,\n */\n\n /**\n * Invoked when the item is \"active\" (in that it is still eligible to become\n * a \"select\") but the touch has left the `PressRect`. Usually the mixer will\n * want to unhighlight the `VisualRect`. If the user (while pressing) moves\n * back into the `PressRect` `touchableHandleActivePressIn` will be invoked\n * again and the mixer should probably highlight the `VisualRect` again. This\n * event will not fire on an `touchEnd/mouseUp` event, only move events while\n * the user is depressing the mouse/touch.\n *\n * @abstract\n * touchableHandleActivePressOut: function\n */\n\n /**\n * Invoked when the item is \"selected\" - meaning the interaction ended by\n * letting up while the item was either in the state\n * `RESPONDER_ACTIVE_PRESS_IN` or `RESPONDER_INACTIVE_PRESS_IN`.\n *\n * @abstract\n * touchableHandlePress: function\n */\n\n /**\n * Invoked when the item is long pressed - meaning the interaction ended by\n * letting up while the item was in `RESPONDER_ACTIVE_LONG_PRESS_IN`. If\n * `touchableHandleLongPress` is *not* provided, `touchableHandlePress` will\n * be called as it normally is. If `touchableHandleLongPress` is provided, by\n * default any `touchableHandlePress` callback will not be invoked. To\n * override this default behavior, override `touchableLongPressCancelsPress`\n * to return false. As a result, `touchableHandlePress` will be called when\n * lifting up, even if `touchableHandleLongPress` has also been called.\n *\n * @abstract\n * touchableHandleLongPress: function\n */\n\n /**\n * Returns the number of millis to wait before triggering a highlight.\n *\n * @abstract\n * touchableGetHighlightDelayMS: function\n */\n\n /**\n * Returns the amount to extend the `HitRect` into the `PressRect`. Positive\n * numbers mean the size expands outwards.\n *\n * @abstract\n * touchableGetPressRectOffset: function\n */\n\n // ==== Internal Logic ====\n\n /**\n * Measures the `HitRect` node on activation. The Bounding rectangle is with\n * respect to viewport - not page, so adding the `pageXOffset/pageYOffset`\n * should result in points that are in the same coordinate system as an\n * event's `globalX/globalY` data values.\n *\n * - Consider caching this for the lifetime of the component, or possibly\n * being able to share this cache between any `ScrollMap` view.\n *\n * @sideeffects\n * @private\n */\n _remeasureMetricsOnActivation: function _remeasureMetricsOnActivation() {\n var tag = this.state.touchable.responderID;\n if (tag == null) {\n return;\n }\n UIManager.measure(tag, this._handleQueryLayout);\n },\n _handleQueryLayout: function _handleQueryLayout(l, t, w, h, globalX, globalY) {\n //don't do anything UIManager failed to measure node\n if (!l && !t && !w && !h && !globalX && !globalY) {\n return;\n }\n this.state.touchable.positionOnActivate && Position.release(this.state.touchable.positionOnActivate);\n this.state.touchable.dimensionsOnActivate &&\n // $FlowFixMe\n BoundingDimensions.release(this.state.touchable.dimensionsOnActivate);\n this.state.touchable.positionOnActivate = Position.getPooled(globalX, globalY);\n // $FlowFixMe\n this.state.touchable.dimensionsOnActivate = BoundingDimensions.getPooled(w, h);\n },\n _handleDelay: function _handleDelay(e) {\n this.touchableDelayTimeout = null;\n this._receiveSignal(Signals.DELAY, e);\n },\n _handleLongDelay: function _handleLongDelay(e) {\n this.longPressDelayTimeout = null;\n var curState = this.state.touchable.touchState;\n if (curState !== States.RESPONDER_ACTIVE_PRESS_IN && curState !== States.RESPONDER_ACTIVE_LONG_PRESS_IN) {\n console.error('Attempted to transition from state `' + curState + '` to `' + States.RESPONDER_ACTIVE_LONG_PRESS_IN + '`, which is not supported. This is ' + 'most likely due to `Touchable.longPressDelayTimeout` not being cancelled.');\n } else {\n this._receiveSignal(Signals.LONG_PRESS_DETECTED, e);\n }\n },\n /**\n * Receives a state machine signal, performs side effects of the transition\n * and stores the new state. Validates the transition as well.\n *\n * @param {Signals} signal State machine signal.\n * @throws Error if invalid state transition or unrecognized signal.\n * @sideeffects\n */\n _receiveSignal: function _receiveSignal(signal, e) {\n var responderID = this.state.touchable.responderID;\n var curState = this.state.touchable.touchState;\n var nextState = Transitions[curState] && Transitions[curState][signal];\n if (!responderID && signal === Signals.RESPONDER_RELEASE) {\n return;\n }\n if (!nextState) {\n throw new Error('Unrecognized signal `' + signal + '` or state `' + curState + '` for Touchable responder `' + responderID + '`');\n }\n if (nextState === States.ERROR) {\n throw new Error('Touchable cannot transition from `' + curState + '` to `' + signal + '` for responder `' + responderID + '`');\n }\n if (curState !== nextState) {\n this._performSideEffectsForTransition(curState, nextState, signal, e);\n this.state.touchable.touchState = nextState;\n }\n },\n _cancelLongPressDelayTimeout: function _cancelLongPressDelayTimeout() {\n this.longPressDelayTimeout && clearTimeout(this.longPressDelayTimeout);\n this.longPressDelayTimeout = null;\n },\n _isHighlight: function _isHighlight(state) {\n return state === States.RESPONDER_ACTIVE_PRESS_IN || state === States.RESPONDER_ACTIVE_LONG_PRESS_IN;\n },\n _savePressInLocation: function _savePressInLocation(e) {\n var touch = extractSingleTouch(e.nativeEvent);\n var pageX = touch && touch.pageX;\n var pageY = touch && touch.pageY;\n var locationX = touch && touch.locationX;\n var locationY = touch && touch.locationY;\n this.pressInLocation = {\n pageX,\n pageY,\n locationX,\n locationY\n };\n },\n _getDistanceBetweenPoints: function _getDistanceBetweenPoints(aX, aY, bX, bY) {\n var deltaX = aX - bX;\n var deltaY = aY - bY;\n return Math.sqrt(deltaX * deltaX + deltaY * deltaY);\n },\n /**\n * Will perform a transition between touchable states, and identify any\n * highlighting or unhighlighting that must be performed for this particular\n * transition.\n *\n * @param {States} curState Current Touchable state.\n * @param {States} nextState Next Touchable state.\n * @param {Signal} signal Signal that triggered the transition.\n * @param {Event} e Native event.\n * @sideeffects\n */\n _performSideEffectsForTransition: function _performSideEffectsForTransition(curState, nextState, signal, e) {\n var curIsHighlight = this._isHighlight(curState);\n var newIsHighlight = this._isHighlight(nextState);\n var isFinalSignal = signal === Signals.RESPONDER_TERMINATED || signal === Signals.RESPONDER_RELEASE;\n if (isFinalSignal) {\n this._cancelLongPressDelayTimeout();\n }\n var isInitialTransition = curState === States.NOT_RESPONDER && nextState === States.RESPONDER_INACTIVE_PRESS_IN;\n var isActiveTransition = !IsActive[curState] && IsActive[nextState];\n if (isInitialTransition || isActiveTransition) {\n this._remeasureMetricsOnActivation();\n }\n if (IsPressingIn[curState] && signal === Signals.LONG_PRESS_DETECTED) {\n this.touchableHandleLongPress && this.touchableHandleLongPress(e);\n }\n if (newIsHighlight && !curIsHighlight) {\n this._startHighlight(e);\n } else if (!newIsHighlight && curIsHighlight) {\n this._endHighlight(e);\n }\n if (IsPressingIn[curState] && signal === Signals.RESPONDER_RELEASE) {\n var hasLongPressHandler = !!this.props.onLongPress;\n var pressIsLongButStillCallOnPress = IsLongPressingIn[curState] && (\n // We *are* long pressing.. // But either has no long handler\n !hasLongPressHandler || !this.touchableLongPressCancelsPress()); // or we're told to ignore it.\n\n var shouldInvokePress = !IsLongPressingIn[curState] || pressIsLongButStillCallOnPress;\n if (shouldInvokePress && this.touchableHandlePress) {\n if (!newIsHighlight && !curIsHighlight) {\n // we never highlighted because of delay, but we should highlight now\n this._startHighlight(e);\n this._endHighlight(e);\n }\n this.touchableHandlePress(e);\n }\n }\n this.touchableDelayTimeout && clearTimeout(this.touchableDelayTimeout);\n this.touchableDelayTimeout = null;\n },\n _playTouchSound: function _playTouchSound() {\n UIManager.playTouchSound();\n },\n _startHighlight: function _startHighlight(e) {\n this._savePressInLocation(e);\n this.touchableHandleActivePressIn && this.touchableHandleActivePressIn(e);\n },\n _endHighlight: function _endHighlight(e) {\n if (this.touchableHandleActivePressOut) {\n if (this.touchableGetPressOutDelayMS && this.touchableGetPressOutDelayMS()) {\n this.pressOutDelayTimeout = setTimeout(() => {\n this.touchableHandleActivePressOut(e);\n }, this.touchableGetPressOutDelayMS());\n } else {\n this.touchableHandleActivePressOut(e);\n }\n }\n },\n // HACK (part 2): basic support for touchable interactions using a keyboard (including\n // delays and longPress)\n touchableHandleKeyEvent: function touchableHandleKeyEvent(e) {\n var type = e.type,\n key = e.key;\n if (key === 'Enter' || key === ' ') {\n if (type === 'keydown') {\n if (!this._isTouchableKeyboardActive) {\n if (!this.state.touchable.touchState || this.state.touchable.touchState === States.NOT_RESPONDER) {\n this.touchableHandleResponderGrant(e);\n this._isTouchableKeyboardActive = true;\n }\n }\n } else if (type === 'keyup') {\n if (this._isTouchableKeyboardActive) {\n if (this.state.touchable.touchState && this.state.touchable.touchState !== States.NOT_RESPONDER) {\n this.touchableHandleResponderRelease(e);\n this._isTouchableKeyboardActive = false;\n }\n }\n }\n e.stopPropagation();\n // prevent the default behaviour unless the Touchable functions as a link\n // and Enter is pressed\n if (!(key === 'Enter' && AccessibilityUtil.propsToAriaRole(this.props) === 'link')) {\n e.preventDefault();\n }\n }\n },\n withoutDefaultFocusAndBlur: {}\n};\n\n/**\n * Provide an optional version of the mixin where `touchableHandleFocus` and\n * `touchableHandleBlur` can be overridden. This allows appropriate defaults to\n * be set on TV platforms, without breaking existing implementations of\n * `Touchable`.\n */\nvar touchableHandleFocus = TouchableMixin.touchableHandleFocus,\n touchableHandleBlur = TouchableMixin.touchableHandleBlur,\n TouchableMixinWithoutDefaultFocusAndBlur = _objectWithoutPropertiesLoose(TouchableMixin, [\"touchableHandleFocus\", \"touchableHandleBlur\"]);\nTouchableMixin.withoutDefaultFocusAndBlur = TouchableMixinWithoutDefaultFocusAndBlur;\nvar Touchable = {\n Mixin: TouchableMixin,\n TOUCH_TARGET_DEBUG: false,\n // Highlights all touchable targets. Toggle with Inspector.\n /**\n * Renders a debugging overlay to visualize touch target with hitSlop (might not work on Android).\n */\n renderDebugView: _ref => {\n var color = _ref.color,\n hitSlop = _ref.hitSlop;\n if (!Touchable.TOUCH_TARGET_DEBUG) {\n return null;\n }\n if (process.env.NODE_ENV !== 'production') {\n throw Error('Touchable.TOUCH_TARGET_DEBUG should not be enabled in prod!');\n }\n var debugHitSlopStyle = {};\n hitSlop = hitSlop || {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0\n };\n for (var key in hitSlop) {\n debugHitSlopStyle[key] = -hitSlop[key];\n }\n var normalizedColor = normalizeColor(color);\n if (typeof normalizedColor !== 'number') {\n return null;\n }\n var hexColor = '#' + ('00000000' + normalizedColor.toString(16)).substr(-8);\n return /*#__PURE__*/React.createElement(View, {\n pointerEvents: \"none\",\n style: _objectSpread({\n position: 'absolute',\n borderColor: hexColor.slice(0, -2) + '55',\n // More opaque\n borderWidth: 1,\n borderStyle: 'dashed',\n backgroundColor: hexColor.slice(0, -2) + '0F'\n }, debugHitSlopStyle)\n });\n }\n};\nexport default Touchable;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"activeOpacity\", \"children\", \"delayPressIn\", \"delayPressOut\", \"delayLongPress\", \"disabled\", \"focusable\", \"onHideUnderlay\", \"onLongPress\", \"onPress\", \"onPressIn\", \"onPressOut\", \"onShowUnderlay\", \"rejectResponderTermination\", \"style\", \"testOnly_pressed\", \"underlayColor\"];\nimport * as React from 'react';\nimport { useCallback, useMemo, useState, useRef } from 'react';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport usePressEvents from '../../modules/usePressEvents';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nimport { warnOnce } from '../../modules/warnOnce';\nfunction createExtraStyles(activeOpacity, underlayColor) {\n return {\n child: {\n opacity: activeOpacity !== null && activeOpacity !== void 0 ? activeOpacity : 0.85\n },\n underlay: {\n backgroundColor: underlayColor === undefined ? 'black' : underlayColor\n }\n };\n}\nfunction hasPressHandler(props) {\n return props.onPress != null || props.onPressIn != null || props.onPressOut != null || props.onLongPress != null;\n}\n\n/**\n * A wrapper for making views respond properly to touches.\n * On press down, the opacity of the wrapped view is decreased, which allows\n * the underlay color to show through, darkening or tinting the view.\n *\n * The underlay comes from wrapping the child in a new View, which can affect\n * layout, and sometimes cause unwanted visual artifacts if not used correctly,\n * for example if the backgroundColor of the wrapped view isn't explicitly set\n * to an opaque color.\n *\n * TouchableHighlight must have one child (not zero or more than one).\n * If you wish to have several child components, wrap them in a View.\n */\nfunction TouchableHighlight(props, forwardedRef) {\n warnOnce('TouchableHighlight', 'TouchableHighlight is deprecated. Please use Pressable.');\n var activeOpacity = props.activeOpacity,\n children = props.children,\n delayPressIn = props.delayPressIn,\n delayPressOut = props.delayPressOut,\n delayLongPress = props.delayLongPress,\n disabled = props.disabled,\n focusable = props.focusable,\n onHideUnderlay = props.onHideUnderlay,\n onLongPress = props.onLongPress,\n onPress = props.onPress,\n onPressIn = props.onPressIn,\n onPressOut = props.onPressOut,\n onShowUnderlay = props.onShowUnderlay,\n rejectResponderTermination = props.rejectResponderTermination,\n style = props.style,\n testOnly_pressed = props.testOnly_pressed,\n underlayColor = props.underlayColor,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n var hostRef = useRef(null);\n var setRef = useMergeRefs(forwardedRef, hostRef);\n var _useState = useState(testOnly_pressed === true ? createExtraStyles(activeOpacity, underlayColor) : null),\n extraStyles = _useState[0],\n setExtraStyles = _useState[1];\n var showUnderlay = useCallback(() => {\n if (!hasPressHandler(props)) {\n return;\n }\n setExtraStyles(createExtraStyles(activeOpacity, underlayColor));\n if (onShowUnderlay != null) {\n onShowUnderlay();\n }\n }, [activeOpacity, onShowUnderlay, props, underlayColor]);\n var hideUnderlay = useCallback(() => {\n if (testOnly_pressed === true) {\n return;\n }\n if (hasPressHandler(props)) {\n setExtraStyles(null);\n if (onHideUnderlay != null) {\n onHideUnderlay();\n }\n }\n }, [onHideUnderlay, props, testOnly_pressed]);\n var pressConfig = useMemo(() => ({\n cancelable: !rejectResponderTermination,\n disabled,\n delayLongPress,\n delayPressStart: delayPressIn,\n delayPressEnd: delayPressOut,\n onLongPress,\n onPress,\n onPressStart(event) {\n showUnderlay();\n if (onPressIn != null) {\n onPressIn(event);\n }\n },\n onPressEnd(event) {\n hideUnderlay();\n if (onPressOut != null) {\n onPressOut(event);\n }\n }\n }), [delayLongPress, delayPressIn, delayPressOut, disabled, onLongPress, onPress, onPressIn, onPressOut, rejectResponderTermination, showUnderlay, hideUnderlay]);\n var pressEventHandlers = usePressEvents(hostRef, pressConfig);\n var child = React.Children.only(children);\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, pressEventHandlers, {\n accessibilityDisabled: disabled,\n focusable: !disabled && focusable !== false,\n pointerEvents: disabled ? 'box-none' : undefined,\n ref: setRef,\n style: [styles.root, style, !disabled && styles.actionable, extraStyles && extraStyles.underlay]\n }), /*#__PURE__*/React.cloneElement(child, {\n style: [child.props.style, extraStyles && extraStyles.child]\n }));\n}\nvar styles = StyleSheet.create({\n root: {\n userSelect: 'none'\n },\n actionable: {\n cursor: 'pointer',\n touchAction: 'manipulation'\n }\n});\nvar MemoedTouchableHighlight = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(TouchableHighlight));\nMemoedTouchableHighlight.displayName = 'TouchableHighlight';\nexport default MemoedTouchableHighlight;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport UnimplementedView from '../../modules/UnimplementedView';\nexport default UnimplementedView;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"activeOpacity\", \"delayPressIn\", \"delayPressOut\", \"delayLongPress\", \"disabled\", \"focusable\", \"onLongPress\", \"onPress\", \"onPressIn\", \"onPressOut\", \"rejectResponderTermination\", \"style\"];\nimport * as React from 'react';\nimport { useCallback, useMemo, useState, useRef } from 'react';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport usePressEvents from '../../modules/usePressEvents';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nimport { warnOnce } from '../../modules/warnOnce';\n/**\n * A wrapper for making views respond properly to touches.\n * On press down, the opacity of the wrapped view is decreased, dimming it.\n */\nfunction TouchableOpacity(props, forwardedRef) {\n warnOnce('TouchableOpacity', 'TouchableOpacity is deprecated. Please use Pressable.');\n var activeOpacity = props.activeOpacity,\n delayPressIn = props.delayPressIn,\n delayPressOut = props.delayPressOut,\n delayLongPress = props.delayLongPress,\n disabled = props.disabled,\n focusable = props.focusable,\n onLongPress = props.onLongPress,\n onPress = props.onPress,\n onPressIn = props.onPressIn,\n onPressOut = props.onPressOut,\n rejectResponderTermination = props.rejectResponderTermination,\n style = props.style,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n var hostRef = useRef(null);\n var setRef = useMergeRefs(forwardedRef, hostRef);\n var _useState = useState('0s'),\n duration = _useState[0],\n setDuration = _useState[1];\n var _useState2 = useState(null),\n opacityOverride = _useState2[0],\n setOpacityOverride = _useState2[1];\n var setOpacityTo = useCallback((value, duration) => {\n setOpacityOverride(value);\n setDuration(duration ? duration / 1000 + \"s\" : '0s');\n }, [setOpacityOverride, setDuration]);\n var setOpacityActive = useCallback(duration => {\n setOpacityTo(activeOpacity !== null && activeOpacity !== void 0 ? activeOpacity : 0.2, duration);\n }, [activeOpacity, setOpacityTo]);\n var setOpacityInactive = useCallback(duration => {\n setOpacityTo(null, duration);\n }, [setOpacityTo]);\n var pressConfig = useMemo(() => ({\n cancelable: !rejectResponderTermination,\n disabled,\n delayLongPress,\n delayPressStart: delayPressIn,\n delayPressEnd: delayPressOut,\n onLongPress,\n onPress,\n onPressStart(event) {\n var isGrant = event.dispatchConfig != null ? event.dispatchConfig.registrationName === 'onResponderGrant' : event.type === 'keydown';\n setOpacityActive(isGrant ? 0 : 150);\n if (onPressIn != null) {\n onPressIn(event);\n }\n },\n onPressEnd(event) {\n setOpacityInactive(250);\n if (onPressOut != null) {\n onPressOut(event);\n }\n }\n }), [delayLongPress, delayPressIn, delayPressOut, disabled, onLongPress, onPress, onPressIn, onPressOut, rejectResponderTermination, setOpacityActive, setOpacityInactive]);\n var pressEventHandlers = usePressEvents(hostRef, pressConfig);\n return /*#__PURE__*/React.createElement(View, _extends({}, rest, pressEventHandlers, {\n accessibilityDisabled: disabled,\n focusable: !disabled && focusable !== false,\n pointerEvents: disabled ? 'box-none' : undefined,\n ref: setRef,\n style: [styles.root, !disabled && styles.actionable, style, opacityOverride != null && {\n opacity: opacityOverride\n }, {\n transitionDuration: duration\n }]\n }));\n}\nvar styles = StyleSheet.create({\n root: {\n transitionProperty: 'opacity',\n transitionDuration: '0.15s',\n userSelect: 'none'\n },\n actionable: {\n cursor: 'pointer',\n touchAction: 'manipulation'\n }\n});\nvar MemoedTouchableOpacity = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(TouchableOpacity));\nMemoedTouchableOpacity.displayName = 'TouchableOpacity';\nexport default MemoedTouchableOpacity;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport * as React from 'react';\nimport { useMemo, useRef } from 'react';\nimport pick from '../../modules/pick';\nimport useMergeRefs from '../../modules/useMergeRefs';\nimport usePressEvents from '../../modules/usePressEvents';\nimport { warnOnce } from '../../modules/warnOnce';\nvar forwardPropsList = {\n accessibilityDisabled: true,\n accessibilityLabel: true,\n accessibilityLiveRegion: true,\n accessibilityRole: true,\n accessibilityState: true,\n accessibilityValue: true,\n children: true,\n disabled: true,\n focusable: true,\n nativeID: true,\n onBlur: true,\n onFocus: true,\n onLayout: true,\n testID: true\n};\nvar pickProps = props => pick(props, forwardPropsList);\nfunction TouchableWithoutFeedback(props, forwardedRef) {\n warnOnce('TouchableWithoutFeedback', 'TouchableWithoutFeedback is deprecated. Please use Pressable.');\n var delayPressIn = props.delayPressIn,\n delayPressOut = props.delayPressOut,\n delayLongPress = props.delayLongPress,\n disabled = props.disabled,\n focusable = props.focusable,\n onLongPress = props.onLongPress,\n onPress = props.onPress,\n onPressIn = props.onPressIn,\n onPressOut = props.onPressOut,\n rejectResponderTermination = props.rejectResponderTermination;\n var hostRef = useRef(null);\n var pressConfig = useMemo(() => ({\n cancelable: !rejectResponderTermination,\n disabled,\n delayLongPress,\n delayPressStart: delayPressIn,\n delayPressEnd: delayPressOut,\n onLongPress,\n onPress,\n onPressStart: onPressIn,\n onPressEnd: onPressOut\n }), [disabled, delayPressIn, delayPressOut, delayLongPress, onLongPress, onPress, onPressIn, onPressOut, rejectResponderTermination]);\n var pressEventHandlers = usePressEvents(hostRef, pressConfig);\n var element = React.Children.only(props.children);\n var children = [element.props.children];\n var supportedProps = pickProps(props);\n supportedProps.accessibilityDisabled = disabled;\n supportedProps.focusable = !disabled && focusable !== false;\n supportedProps.ref = useMergeRefs(forwardedRef, hostRef, element.ref);\n var elementProps = Object.assign(supportedProps, pressEventHandlers);\n return /*#__PURE__*/React.cloneElement(element, elementProps, ...children);\n}\nvar MemoedTouchableWithoutFeedback = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(TouchableWithoutFeedback));\nMemoedTouchableWithoutFeedback.displayName = 'TouchableWithoutFeedback';\nexport default MemoedTouchableWithoutFeedback;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nvar vibrate = pattern => {\n if ('vibrate' in window.navigator) {\n window.navigator.vibrate(pattern);\n }\n};\nvar Vibration = {\n cancel() {\n vibrate(0);\n },\n vibrate(pattern) {\n if (pattern === void 0) {\n pattern = 400;\n }\n vibrate(pattern);\n }\n};\nexport default Vibration;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport VirtualizedList from '../../vendor/react-native/VirtualizedList';\nexport default VirtualizedList;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport React from 'react';\nimport UnimplementedView from '../../modules/UnimplementedView';\nfunction YellowBox(props) {\n return /*#__PURE__*/React.createElement(UnimplementedView, props);\n}\nYellowBox.ignoreWarnings = () => {};\nexport default YellowBox;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { findDOMNode } from 'react-dom';\n\n/**\n * @deprecated imperatively finding the DOM element of a react component has been deprecated in React 18.\n * You should use ref properties on the component instead.\n */\nvar findNodeHandle = component => {\n var node;\n try {\n node = findDOMNode(component);\n } catch (e) {}\n return node;\n};\nexport default findNodeHandle;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { hydrate as domLegacyHydrate, render as domLegacyRender } from 'react-dom';\nimport { createRoot as domCreateRoot, hydrateRoot as domHydrateRoot } from 'react-dom/client';\nimport unmountComponentAtNode from '../unmountComponentAtNode';\nimport { createSheet } from '../StyleSheet/dom';\nexport function hydrate(element, root) {\n createSheet(root);\n return domHydrateRoot(root, element);\n}\nexport function render(element, root) {\n createSheet(root);\n var reactRoot = domCreateRoot(root);\n reactRoot.render(element);\n return reactRoot;\n}\nexport function hydrateLegacy(element, root, callback) {\n createSheet(root);\n domLegacyHydrate(element, root, callback);\n return {\n unmount: function unmount() {\n return unmountComponentAtNode(root);\n }\n };\n}\nexport default function renderLegacy(element, root, callback) {\n createSheet(root);\n domLegacyRender(element, root, callback);\n return {\n unmount: function unmount() {\n return unmountComponentAtNode(root);\n }\n };\n}","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { unmountComponentAtNode } from 'react-dom';\nexport default unmountComponentAtNode;","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport * as React from 'react';\nimport Appearance from '../Appearance';\nexport default function useColorScheme() {\n var _React$useState = React.useState(Appearance.getColorScheme()),\n colorScheme = _React$useState[0],\n setColorScheme = _React$useState[1];\n React.useEffect(() => {\n function listener(appearance) {\n setColorScheme(appearance.colorScheme);\n }\n var _Appearance$addChange = Appearance.addChangeListener(listener),\n remove = _Appearance$addChange.remove;\n return remove;\n });\n return colorScheme;\n}","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport { useLocaleContext } from '../../modules/useLocale';\nexport default useLocaleContext;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\nimport Dimensions from '../Dimensions';\nimport { useEffect, useState } from 'react';\nexport default function useWindowDimensions() {\n var _useState = useState(() => Dimensions.get('window')),\n dims = _useState[0],\n setDims = _useState[1];\n useEffect(() => {\n function handleChange(_ref) {\n var window = _ref.window;\n if (window != null) {\n setDims(window);\n }\n }\n Dimensions.addEventListener('change', handleChange);\n // We might have missed an update between calling `get` in render and\n // `addEventListener` in this handler, so we set it here. If there was\n // no change, React will filter out this update as a no-op.\n setDims(Dimensions.get('window'));\n return () => {\n Dimensions.removeEventListener('change', handleChange);\n };\n }, []);\n return dims;\n}","/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport UIManager from '../../exports/UIManager';\n\n/**\n * This class is responsible for coordinating the \"focused\"\n * state for TextInputs. All calls relating to the keyboard\n * should be funneled through here\n */\nvar TextInputState = {\n /**\n * Internal state\n */\n _currentlyFocusedNode: null,\n /**\n * Returns the ID of the currently focused text field, if one exists\n * If no text field is focused it returns null\n */\n currentlyFocusedField() {\n if (document.activeElement !== this._currentlyFocusedNode) {\n this._currentlyFocusedNode = null;\n }\n return this._currentlyFocusedNode;\n },\n /**\n * @param {Object} TextInputID id of the text field to focus\n * Focuses the specified text field\n * noop if the text field was already focused\n */\n focusTextInput(textFieldNode) {\n if (textFieldNode !== null) {\n this._currentlyFocusedNode = textFieldNode;\n if (document.activeElement !== textFieldNode) {\n UIManager.focus(textFieldNode);\n }\n }\n },\n /**\n * @param {Object} textFieldNode id of the text field to focus\n * Unfocuses the specified text field\n * noop if it wasn't focused\n */\n blurTextInput(textFieldNode) {\n if (textFieldNode !== null) {\n this._currentlyFocusedNode = null;\n if (document.activeElement === textFieldNode) {\n UIManager.blur(textFieldNode);\n }\n }\n }\n};\nexport default TextInputState;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport View from '../../exports/View';\nimport React from 'react';\n\n/**\n * Common implementation for a simple stubbed view.\n */\nclass UnimplementedView extends React.Component {\n render() {\n return /*#__PURE__*/React.createElement(View, {\n style: [unimplementedViewStyles, this.props.style]\n }, this.props.children);\n }\n}\nvar unimplementedViewStyles = process.env.NODE_ENV !== 'production' ? {\n alignSelf: 'flex-start',\n borderColor: 'red',\n borderWidth: 1\n} : {};\nexport default UnimplementedView;","/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nimport TextInputState from '../TextInputState';\nvar dismissKeyboard = () => {\n TextInputState.blurTextInput(TextInputState.currentlyFocusedField());\n};\nexport default dismissKeyboard;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nvar DELAY = 'DELAY';\nvar ERROR = 'ERROR';\nvar LONG_PRESS_DETECTED = 'LONG_PRESS_DETECTED';\nvar NOT_RESPONDER = 'NOT_RESPONDER';\nvar RESPONDER_ACTIVE_LONG_PRESS_START = 'RESPONDER_ACTIVE_LONG_PRESS_START';\nvar RESPONDER_ACTIVE_PRESS_START = 'RESPONDER_ACTIVE_PRESS_START';\nvar RESPONDER_INACTIVE_PRESS_START = 'RESPONDER_INACTIVE_PRESS_START';\nvar RESPONDER_GRANT = 'RESPONDER_GRANT';\nvar RESPONDER_RELEASE = 'RESPONDER_RELEASE';\nvar RESPONDER_TERMINATED = 'RESPONDER_TERMINATED';\nvar Transitions = Object.freeze({\n NOT_RESPONDER: {\n DELAY: ERROR,\n RESPONDER_GRANT: RESPONDER_INACTIVE_PRESS_START,\n RESPONDER_RELEASE: ERROR,\n RESPONDER_TERMINATED: ERROR,\n LONG_PRESS_DETECTED: ERROR\n },\n RESPONDER_INACTIVE_PRESS_START: {\n DELAY: RESPONDER_ACTIVE_PRESS_START,\n RESPONDER_GRANT: ERROR,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: ERROR\n },\n RESPONDER_ACTIVE_PRESS_START: {\n DELAY: ERROR,\n RESPONDER_GRANT: ERROR,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: RESPONDER_ACTIVE_LONG_PRESS_START\n },\n RESPONDER_ACTIVE_LONG_PRESS_START: {\n DELAY: ERROR,\n RESPONDER_GRANT: ERROR,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: RESPONDER_ACTIVE_LONG_PRESS_START\n },\n ERROR: {\n DELAY: NOT_RESPONDER,\n RESPONDER_GRANT: RESPONDER_INACTIVE_PRESS_START,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: NOT_RESPONDER\n }\n});\nvar getElementRole = element => element.getAttribute('role');\nvar getElementType = element => element.tagName.toLowerCase();\nvar isActiveSignal = signal => signal === RESPONDER_ACTIVE_PRESS_START || signal === RESPONDER_ACTIVE_LONG_PRESS_START;\nvar isButtonRole = element => getElementRole(element) === 'button';\nvar isPressStartSignal = signal => signal === RESPONDER_INACTIVE_PRESS_START || signal === RESPONDER_ACTIVE_PRESS_START || signal === RESPONDER_ACTIVE_LONG_PRESS_START;\nvar isTerminalSignal = signal => signal === RESPONDER_TERMINATED || signal === RESPONDER_RELEASE;\nvar isValidKeyPress = event => {\n var key = event.key,\n target = event.target;\n var isSpacebar = key === ' ' || key === 'Spacebar';\n var isButtonish = getElementType(target) === 'button' || isButtonRole(target);\n return key === 'Enter' || isSpacebar && isButtonish;\n};\nvar DEFAULT_LONG_PRESS_DELAY_MS = 450; // 500 - 50\nvar DEFAULT_PRESS_DELAY_MS = 50;\n\n/**\n * =========================== PressResponder Tutorial ===========================\n *\n * The `PressResponder` class helps you create press interactions by analyzing the\n * geometry of elements and observing when another responder (e.g. ScrollView)\n * has stolen the touch lock. It offers hooks for your component to provide\n * interaction feedback to the user:\n *\n * - When a press has activated (e.g. highlight an element)\n * - When a press has deactivated (e.g. un-highlight an element)\n * - When a press sould trigger an action, meaning it activated and deactivated\n * while within the geometry of the element without the lock being stolen.\n *\n * A high quality interaction isn't as simple as you might think. There should\n * be a slight delay before activation. Moving your finger beyond an element's\n * bounds should trigger deactivation, but moving the same finger back within an\n * element's bounds should trigger reactivation.\n *\n * In order to use `PressResponder`, do the following:\n *\n * const pressResponder = new PressResponder(config);\n *\n * 2. Choose the rendered component who should collect the press events. On that\n * element, spread `pressability.getEventHandlers()` into its props.\n *\n * return (\n * \n * );\n *\n * 3. Reset `PressResponder` when your component unmounts.\n *\n * componentWillUnmount() {\n * this.state.pressResponder.reset();\n * }\n *\n * ==================== Implementation Details ====================\n *\n * `PressResponder` only assumes that there exists a `HitRect` node. The `PressRect`\n * is an abstract box that is extended beyond the `HitRect`.\n *\n * # Geometry\n *\n * ┌────────────────────────┐\n * │ ┌──────────────────┐ │ - Presses start anywhere within `HitRect`.\n * │ │ ┌────────────┐ │ │\n * │ │ │ VisualRect │ │ │\n * │ │ └────────────┘ │ │ - When pressed down for sufficient amount of time\n * │ │ HitRect │ │ before letting up, `VisualRect` activates.\n * │ └──────────────────┘ │\n * │ Out Region o │\n * └────────────────────│───┘\n * └────── When the press is released outside the `HitRect`,\n * the responder is NOT eligible for a \"press\".\n *\n * # State Machine\n *\n * ┌───────────────┐ ◀──── RESPONDER_RELEASE\n * │ NOT_RESPONDER │\n * └───┬───────────┘ ◀──── RESPONDER_TERMINATED\n * │\n * │ RESPONDER_GRANT (HitRect)\n * │\n * ▼\n * ┌─────────────────────┐ ┌───────────────────┐ ┌───────────────────┐\n * │ RESPONDER_INACTIVE_ │ DELAY │ RESPONDER_ACTIVE_ │ T + DELAY │ RESPONDER_ACTIVE_ │\n * │ PRESS_START ├────────▶ │ PRESS_START ├────────────▶ │ LONG_PRESS_START │\n * └─────────────────────┘ └───────────────────┘ └───────────────────┘\n *\n * T + DELAY => LONG_PRESS_DELAY + DELAY\n *\n * Not drawn are the side effects of each transition. The most important side\n * effect is the invocation of `onLongPress`. Only when the browser produces a\n * `click` event is `onPress` invoked.\n */\nexport default class PressResponder {\n constructor(config) {\n this._eventHandlers = null;\n this._isPointerTouch = false;\n this._longPressDelayTimeout = null;\n this._longPressDispatched = false;\n this._pressDelayTimeout = null;\n this._pressOutDelayTimeout = null;\n this._touchState = NOT_RESPONDER;\n this._responderElement = null;\n this.configure(config);\n }\n configure(config) {\n this._config = config;\n }\n\n /**\n * Resets any pending timers. This should be called on unmount.\n */\n reset() {\n this._cancelLongPressDelayTimeout();\n this._cancelPressDelayTimeout();\n this._cancelPressOutDelayTimeout();\n }\n\n /**\n * Returns a set of props to spread into the interactive element.\n */\n getEventHandlers() {\n if (this._eventHandlers == null) {\n this._eventHandlers = this._createEventHandlers();\n }\n return this._eventHandlers;\n }\n _createEventHandlers() {\n var start = (event, shouldDelay) => {\n event.persist();\n this._cancelPressOutDelayTimeout();\n this._longPressDispatched = false;\n this._selectionTerminated = false;\n this._touchState = NOT_RESPONDER;\n this._isPointerTouch = event.nativeEvent.type === 'touchstart';\n this._receiveSignal(RESPONDER_GRANT, event);\n var delayPressStart = normalizeDelay(this._config.delayPressStart, 0, DEFAULT_PRESS_DELAY_MS);\n if (shouldDelay !== false && delayPressStart > 0) {\n this._pressDelayTimeout = setTimeout(() => {\n this._receiveSignal(DELAY, event);\n }, delayPressStart);\n } else {\n this._receiveSignal(DELAY, event);\n }\n var delayLongPress = normalizeDelay(this._config.delayLongPress, 10, DEFAULT_LONG_PRESS_DELAY_MS);\n this._longPressDelayTimeout = setTimeout(() => {\n this._handleLongPress(event);\n }, delayLongPress + delayPressStart);\n };\n var end = event => {\n this._receiveSignal(RESPONDER_RELEASE, event);\n };\n var keyupHandler = event => {\n var onPress = this._config.onPress;\n var target = event.target;\n if (this._touchState !== NOT_RESPONDER && isValidKeyPress(event)) {\n end(event);\n document.removeEventListener('keyup', keyupHandler);\n var role = target.getAttribute('role');\n var elementType = getElementType(target);\n var isNativeInteractiveElement = role === 'link' || elementType === 'a' || elementType === 'button' || elementType === 'input' || elementType === 'select' || elementType === 'textarea';\n var isActiveElement = this._responderElement === target;\n if (onPress != null && !isNativeInteractiveElement && isActiveElement) {\n onPress(event);\n }\n this._responderElement = null;\n }\n };\n return {\n onStartShouldSetResponder: event => {\n var disabled = this._config.disabled;\n if (disabled && isButtonRole(event.currentTarget)) {\n event.stopPropagation();\n }\n if (disabled == null) {\n return true;\n }\n return !disabled;\n },\n onKeyDown: event => {\n var disabled = this._config.disabled;\n var key = event.key,\n target = event.target;\n if (!disabled && isValidKeyPress(event)) {\n if (this._touchState === NOT_RESPONDER) {\n start(event, false);\n this._responderElement = target;\n // Listen to 'keyup' on document to account for situations where\n // focus is moved to another element during 'keydown'.\n document.addEventListener('keyup', keyupHandler);\n }\n var isSpacebarKey = key === ' ' || key === 'Spacebar';\n var role = getElementRole(target);\n var isButtonLikeRole = role === 'button' || role === 'menuitem';\n if (isSpacebarKey && isButtonLikeRole && getElementType(target) !== 'button') {\n // Prevent spacebar scrolling the window if using non-native button\n event.preventDefault();\n }\n event.stopPropagation();\n }\n },\n onResponderGrant: event => start(event),\n onResponderMove: event => {\n if (this._config.onPressMove != null) {\n this._config.onPressMove(event);\n }\n var touch = getTouchFromResponderEvent(event);\n if (this._touchActivatePosition != null) {\n var deltaX = this._touchActivatePosition.pageX - touch.pageX;\n var deltaY = this._touchActivatePosition.pageY - touch.pageY;\n if (Math.hypot(deltaX, deltaY) > 10) {\n this._cancelLongPressDelayTimeout();\n }\n }\n },\n onResponderRelease: event => end(event),\n onResponderTerminate: event => {\n if (event.nativeEvent.type === 'selectionchange') {\n this._selectionTerminated = true;\n }\n this._receiveSignal(RESPONDER_TERMINATED, event);\n },\n onResponderTerminationRequest: event => {\n var _this$_config = this._config,\n cancelable = _this$_config.cancelable,\n disabled = _this$_config.disabled,\n onLongPress = _this$_config.onLongPress;\n // If `onLongPress` is provided, don't terminate on `contextmenu` as default\n // behavior will be prevented for non-mouse pointers.\n if (!disabled && onLongPress != null && this._isPointerTouch && event.nativeEvent.type === 'contextmenu') {\n return false;\n }\n if (cancelable == null) {\n return true;\n }\n return cancelable;\n },\n // NOTE: this diverges from react-native in 3 significant ways:\n // * The `onPress` callback is not connected to the responder system (the native\n // `click` event must be used but is dispatched in many scenarios where no pointers\n // are on the screen.) Therefore, it's possible for `onPress` to be called without\n // `onPress{Start,End}` being called first.\n // * The `onPress` callback is only be called on the first ancestor of the native\n // `click` target that is using the PressResponder.\n // * The event's `nativeEvent` is a `MouseEvent` not a `TouchEvent`.\n onClick: event => {\n var _this$_config2 = this._config,\n disabled = _this$_config2.disabled,\n onPress = _this$_config2.onPress;\n if (!disabled) {\n // If long press dispatched, cancel default click behavior.\n // If the responder terminated because text was selected during the gesture,\n // cancel the default click behavior.\n event.stopPropagation();\n if (this._longPressDispatched || this._selectionTerminated) {\n event.preventDefault();\n } else if (onPress != null && event.altKey === false) {\n onPress(event);\n }\n } else {\n if (isButtonRole(event.currentTarget)) {\n event.stopPropagation();\n }\n }\n },\n // If `onLongPress` is provided and a touch pointer is being used, prevent the\n // default context menu from opening.\n onContextMenu: event => {\n var _this$_config3 = this._config,\n disabled = _this$_config3.disabled,\n onLongPress = _this$_config3.onLongPress;\n if (!disabled) {\n if (onLongPress != null && this._isPointerTouch && !event.defaultPrevented) {\n event.preventDefault();\n event.stopPropagation();\n }\n } else {\n if (isButtonRole(event.currentTarget)) {\n event.stopPropagation();\n }\n }\n }\n };\n }\n\n /**\n * Receives a state machine signal, performs side effects of the transition\n * and stores the new state. Validates the transition as well.\n */\n _receiveSignal(signal, event) {\n var prevState = this._touchState;\n var nextState = null;\n if (Transitions[prevState] != null) {\n nextState = Transitions[prevState][signal];\n }\n if (this._touchState === NOT_RESPONDER && signal === RESPONDER_RELEASE) {\n return;\n }\n if (nextState == null || nextState === ERROR) {\n console.error(\"PressResponder: Invalid signal \" + signal + \" for state \" + prevState + \" on responder\");\n } else if (prevState !== nextState) {\n this._performTransitionSideEffects(prevState, nextState, signal, event);\n this._touchState = nextState;\n }\n }\n\n /**\n * Performs a transition between touchable states and identify any activations\n * or deactivations (and callback invocations).\n */\n _performTransitionSideEffects(prevState, nextState, signal, event) {\n if (isTerminalSignal(signal)) {\n // Pressable suppression of contextmenu on windows.\n // On Windows, the contextmenu is displayed after pointerup.\n // https://github.com/necolas/react-native-web/issues/2296\n setTimeout(() => {\n this._isPointerTouch = false;\n }, 0);\n this._touchActivatePosition = null;\n this._cancelLongPressDelayTimeout();\n }\n if (isPressStartSignal(prevState) && signal === LONG_PRESS_DETECTED) {\n var onLongPress = this._config.onLongPress;\n // Long press is not supported for keyboards because 'click' can be dispatched\n // immediately (and multiple times) after 'keydown'.\n if (onLongPress != null && event.nativeEvent.key == null) {\n onLongPress(event);\n this._longPressDispatched = true;\n }\n }\n var isPrevActive = isActiveSignal(prevState);\n var isNextActive = isActiveSignal(nextState);\n if (!isPrevActive && isNextActive) {\n this._activate(event);\n } else if (isPrevActive && !isNextActive) {\n this._deactivate(event);\n }\n if (isPressStartSignal(prevState) && signal === RESPONDER_RELEASE) {\n var _this$_config4 = this._config,\n _onLongPress = _this$_config4.onLongPress,\n onPress = _this$_config4.onPress;\n if (onPress != null) {\n var isPressCanceledByLongPress = _onLongPress != null && prevState === RESPONDER_ACTIVE_LONG_PRESS_START;\n if (!isPressCanceledByLongPress) {\n // If we never activated (due to delays), activate and deactivate now.\n if (!isNextActive && !isPrevActive) {\n this._activate(event);\n this._deactivate(event);\n }\n }\n }\n }\n this._cancelPressDelayTimeout();\n }\n _activate(event) {\n var _this$_config5 = this._config,\n onPressChange = _this$_config5.onPressChange,\n onPressStart = _this$_config5.onPressStart;\n var touch = getTouchFromResponderEvent(event);\n this._touchActivatePosition = {\n pageX: touch.pageX,\n pageY: touch.pageY\n };\n if (onPressStart != null) {\n onPressStart(event);\n }\n if (onPressChange != null) {\n onPressChange(true);\n }\n }\n _deactivate(event) {\n var _this$_config6 = this._config,\n onPressChange = _this$_config6.onPressChange,\n onPressEnd = _this$_config6.onPressEnd;\n function end() {\n if (onPressEnd != null) {\n onPressEnd(event);\n }\n if (onPressChange != null) {\n onPressChange(false);\n }\n }\n var delayPressEnd = normalizeDelay(this._config.delayPressEnd);\n if (delayPressEnd > 0) {\n this._pressOutDelayTimeout = setTimeout(() => {\n end();\n }, delayPressEnd);\n } else {\n end();\n }\n }\n _handleLongPress(event) {\n if (this._touchState === RESPONDER_ACTIVE_PRESS_START || this._touchState === RESPONDER_ACTIVE_LONG_PRESS_START) {\n this._receiveSignal(LONG_PRESS_DETECTED, event);\n }\n }\n _cancelLongPressDelayTimeout() {\n if (this._longPressDelayTimeout != null) {\n clearTimeout(this._longPressDelayTimeout);\n this._longPressDelayTimeout = null;\n }\n }\n _cancelPressDelayTimeout() {\n if (this._pressDelayTimeout != null) {\n clearTimeout(this._pressDelayTimeout);\n this._pressDelayTimeout = null;\n }\n }\n _cancelPressOutDelayTimeout() {\n if (this._pressOutDelayTimeout != null) {\n clearTimeout(this._pressOutDelayTimeout);\n this._pressOutDelayTimeout = null;\n }\n }\n}\nfunction normalizeDelay(delay, min, fallback) {\n if (min === void 0) {\n min = 0;\n }\n if (fallback === void 0) {\n fallback = 0;\n }\n return Math.max(min, delay !== null && delay !== void 0 ? delay : fallback);\n}\nfunction getTouchFromResponderEvent(event) {\n var _event$nativeEvent = event.nativeEvent,\n changedTouches = _event$nativeEvent.changedTouches,\n touches = _event$nativeEvent.touches;\n if (touches != null && touches.length > 0) {\n return touches[0];\n }\n if (changedTouches != null && changedTouches.length > 0) {\n return changedTouches[0];\n }\n return event.nativeEvent;\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport PressResponder from './PressResponder';\nimport { useDebugValue, useEffect, useRef } from 'react';\nexport default function usePressEvents(hostRef, config) {\n var pressResponderRef = useRef(null);\n if (pressResponderRef.current == null) {\n pressResponderRef.current = new PressResponder(config);\n }\n var pressResponder = pressResponderRef.current;\n\n // Re-configure to use the current node and configuration.\n useEffect(() => {\n pressResponder.configure(config);\n }, [config, pressResponder]);\n\n // Reset the `pressResponder` when cleanup needs to occur. This is\n // a separate effect because we do not want to rest the responder when `config` changes.\n useEffect(() => {\n return () => {\n pressResponder.reset();\n };\n }, [pressResponder]);\n useDebugValue(config);\n return pressResponder.getEventHandlers();\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport Platform from '../../../exports/Platform';\nimport RCTDeviceEventEmitter from './RCTDeviceEventEmitter';\nimport invariant from 'fbjs/lib/invariant';\n/**\n * `NativeEventEmitter` is intended for use by Native Modules to emit events to\n * JavaScript listeners. If a `NativeModule` is supplied to the constructor, it\n * will be notified (via `addListener` and `removeListeners`) when the listener\n * count changes to manage \"native memory\".\n *\n * Currently, all native events are fired via a global `RCTDeviceEventEmitter`.\n * This means event names must be globally unique, and it means that call sites\n * can theoretically listen to `RCTDeviceEventEmitter` (although discouraged).\n */\nexport default class NativeEventEmitter {\n constructor(nativeModule) {\n if (Platform.OS === 'ios') {\n invariant(nativeModule != null, '`new NativeEventEmitter()` requires a non-null argument.');\n this._nativeModule = nativeModule;\n }\n }\n addListener(eventType, listener, context) {\n var _this$_nativeModule;\n (_this$_nativeModule = this._nativeModule) == null ? void 0 : _this$_nativeModule.addListener(eventType);\n var subscription = RCTDeviceEventEmitter.addListener(eventType, listener, context);\n return {\n remove: () => {\n if (subscription != null) {\n var _this$_nativeModule2;\n (_this$_nativeModule2 = this._nativeModule) == null ? void 0 : _this$_nativeModule2.removeListeners(1);\n // $FlowFixMe[incompatible-use]\n subscription.remove();\n subscription = null;\n }\n }\n };\n }\n\n /**\n * @deprecated Use `remove` on the EventSubscription from `addListener`.\n */\n removeListener(eventType, listener) {\n var _this$_nativeModule3;\n (_this$_nativeModule3 = this._nativeModule) == null ? void 0 : _this$_nativeModule3.removeListeners(1);\n // NOTE: This will report a deprecation notice via `console.error`.\n // $FlowFixMe[prop-missing] - `removeListener` exists but is deprecated.\n RCTDeviceEventEmitter.removeListener(eventType, listener);\n }\n emit(eventType) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n // Generally, `RCTDeviceEventEmitter` is directly invoked. But this is\n // included for completeness.\n RCTDeviceEventEmitter.emit(eventType, ...args);\n }\n removeAllListeners(eventType) {\n var _this$_nativeModule4;\n invariant(eventType != null, '`NativeEventEmitter.removeAllListener()` requires a non-null argument.');\n (_this$_nativeModule4 = this._nativeModule) == null ? void 0 : _this$_nativeModule4.removeListeners(this.listenerCount(eventType));\n RCTDeviceEventEmitter.removeAllListeners(eventType);\n }\n listenerCount(eventType) {\n return RCTDeviceEventEmitter.listenerCount(eventType);\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport EventEmitter from '../vendor/emitter/EventEmitter';\n\n// FIXME: use typed events\n\n/**\n * Global EventEmitter used by the native platform to emit events to JavaScript.\n * Events are identified by globally unique event names.\n *\n * NativeModules that emit events should instead subclass `NativeEventEmitter`.\n */\nexport default new EventEmitter();","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\nfunction clamp(min, value, max) {\n if (value < min) {\n return min;\n }\n if (value > max) {\n return max;\n }\n return value;\n}\nmodule.exports = clamp;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\n/**\n * Used to find the indices of the frames that overlap the given offsets. Useful for finding the\n * items that bound different windows of content, such as the visible area or the buffered overscan\n * area.\n */\nexport function elementsThatOverlapOffsets(offsets, props, getFrameMetrics, zoomScale) {\n if (zoomScale === void 0) {\n zoomScale = 1;\n }\n var itemCount = props.getItemCount(props.data);\n var result = [];\n for (var offsetIndex = 0; offsetIndex < offsets.length; offsetIndex++) {\n var currentOffset = offsets[offsetIndex];\n var left = 0;\n var right = itemCount - 1;\n while (left <= right) {\n // eslint-disable-next-line no-bitwise\n var mid = left + (right - left >>> 1);\n var frame = getFrameMetrics(mid, props);\n var scaledOffsetStart = frame.offset * zoomScale;\n var scaledOffsetEnd = (frame.offset + frame.length) * zoomScale;\n\n // We want the first frame that contains the offset, with inclusive bounds. Thus, for the\n // first frame the scaledOffsetStart is inclusive, while for other frames it is exclusive.\n if (mid === 0 && currentOffset < scaledOffsetStart || mid !== 0 && currentOffset <= scaledOffsetStart) {\n right = mid - 1;\n } else if (currentOffset > scaledOffsetEnd) {\n left = mid + 1;\n } else {\n result[offsetIndex] = mid;\n break;\n }\n }\n }\n return result;\n}\n\n/**\n * Computes the number of elements in the `next` range that are new compared to the `prev` range.\n * Handy for calculating how many new items will be rendered when the render window changes so we\n * can restrict the number of new items render at once so that content can appear on the screen\n * faster.\n */\nexport function newRangeCount(prev, next) {\n return next.last - next.first + 1 - Math.max(0, 1 + Math.min(next.last, prev.last) - Math.max(next.first, prev.first));\n}\n\n/**\n * Custom logic for determining which items should be rendered given the current frame and scroll\n * metrics, as well as the previous render state. The algorithm may evolve over time, but generally\n * prioritizes the visible area first, then expands that with overscan regions ahead and behind,\n * biased in the direction of scroll.\n */\nexport function computeWindowedRenderLimits(props, maxToRenderPerBatch, windowSize, prev, getFrameMetricsApprox, scrollMetrics) {\n var itemCount = props.getItemCount(props.data);\n if (itemCount === 0) {\n return {\n first: 0,\n last: -1\n };\n }\n var offset = scrollMetrics.offset,\n velocity = scrollMetrics.velocity,\n visibleLength = scrollMetrics.visibleLength,\n _scrollMetrics$zoomSc = scrollMetrics.zoomScale,\n zoomScale = _scrollMetrics$zoomSc === void 0 ? 1 : _scrollMetrics$zoomSc;\n\n // Start with visible area, then compute maximum overscan region by expanding from there, biased\n // in the direction of scroll. Total overscan area is capped, which should cap memory consumption\n // too.\n var visibleBegin = Math.max(0, offset);\n var visibleEnd = visibleBegin + visibleLength;\n var overscanLength = (windowSize - 1) * visibleLength;\n\n // Considering velocity seems to introduce more churn than it's worth.\n var leadFactor = 0.5; // Math.max(0, Math.min(1, velocity / 25 + 0.5));\n\n var fillPreference = velocity > 1 ? 'after' : velocity < -1 ? 'before' : 'none';\n var overscanBegin = Math.max(0, visibleBegin - (1 - leadFactor) * overscanLength);\n var overscanEnd = Math.max(0, visibleEnd + leadFactor * overscanLength);\n var lastItemOffset = getFrameMetricsApprox(itemCount - 1, props).offset * zoomScale;\n if (lastItemOffset < overscanBegin) {\n // Entire list is before our overscan window\n return {\n first: Math.max(0, itemCount - 1 - maxToRenderPerBatch),\n last: itemCount - 1\n };\n }\n\n // Find the indices that correspond to the items at the render boundaries we're targeting.\n var _elementsThatOverlapO = elementsThatOverlapOffsets([overscanBegin, visibleBegin, visibleEnd, overscanEnd], props, getFrameMetricsApprox, zoomScale),\n overscanFirst = _elementsThatOverlapO[0],\n first = _elementsThatOverlapO[1],\n last = _elementsThatOverlapO[2],\n overscanLast = _elementsThatOverlapO[3];\n overscanFirst = overscanFirst == null ? 0 : overscanFirst;\n first = first == null ? Math.max(0, overscanFirst) : first;\n overscanLast = overscanLast == null ? itemCount - 1 : overscanLast;\n last = last == null ? Math.min(overscanLast, first + maxToRenderPerBatch - 1) : last;\n var visible = {\n first,\n last\n };\n\n // We want to limit the number of new cells we're rendering per batch so that we can fill the\n // content on the screen quickly. If we rendered the entire overscan window at once, the user\n // could be staring at white space for a long time waiting for a bunch of offscreen content to\n // render.\n var newCellCount = newRangeCount(prev, visible);\n while (true) {\n if (first <= overscanFirst && last >= overscanLast) {\n // If we fill the entire overscan range, we're done.\n break;\n }\n var maxNewCells = newCellCount >= maxToRenderPerBatch;\n var firstWillAddMore = first <= prev.first || first > prev.last;\n var firstShouldIncrement = first > overscanFirst && (!maxNewCells || !firstWillAddMore);\n var lastWillAddMore = last >= prev.last || last < prev.first;\n var lastShouldIncrement = last < overscanLast && (!maxNewCells || !lastWillAddMore);\n if (maxNewCells && !firstShouldIncrement && !lastShouldIncrement) {\n // We only want to stop if we've hit maxNewCells AND we cannot increment first or last\n // without rendering new items. This let's us preserve as many already rendered items as\n // possible, reducing render churn and keeping the rendered overscan range as large as\n // possible.\n break;\n }\n if (firstShouldIncrement && !(fillPreference === 'after' && lastShouldIncrement && lastWillAddMore)) {\n if (firstWillAddMore) {\n newCellCount++;\n }\n first--;\n }\n if (lastShouldIncrement && !(fillPreference === 'before' && firstShouldIncrement && firstWillAddMore)) {\n if (lastWillAddMore) {\n newCellCount++;\n }\n last++;\n }\n }\n if (!(last >= first && first >= 0 && last < itemCount && first >= overscanFirst && last <= overscanLast && first <= visible.first && last >= visible.last)) {\n throw new Error('Bad window calculation ' + JSON.stringify({\n first,\n last,\n itemCount,\n overscanFirst,\n overscanLast,\n visible\n }));\n }\n return {\n first,\n last\n };\n}\nexport function keyExtractor(item, index) {\n if (typeof item === 'object' && (item == null ? void 0 : item.key) != null) {\n return item.key;\n }\n if (typeof item === 'object' && (item == null ? void 0 : item.id) != null) {\n return item.id;\n }\n return String(index);\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\nimport InteractionManager from '../../../exports/InteractionManager';\n\n/**\n * A simple class for batching up invocations of a low-pri callback. A timeout is set to run the\n * callback once after a delay, no matter how many times it's scheduled. Once the delay is reached,\n * InteractionManager.runAfterInteractions is used to invoke the callback after any hi-pri\n * interactions are done running.\n *\n * Make sure to cleanup with dispose(). Example:\n *\n * class Widget extends React.Component {\n * _batchedSave: new Batchinator(() => this._saveState, 1000);\n * _saveSate() {\n * // save this.state to disk\n * }\n * componentDidUpdate() {\n * this._batchedSave.schedule();\n * }\n * componentWillUnmount() {\n * this._batchedSave.dispose();\n * }\n * ...\n * }\n */\nclass Batchinator {\n constructor(callback, delayMS) {\n this._delay = delayMS;\n this._callback = callback;\n }\n /*\n * Cleanup any pending tasks.\n *\n * By default, if there is a pending task the callback is run immediately. Set the option abort to\n * true to not call the callback if it was pending.\n */\n dispose(options) {\n if (options === void 0) {\n options = {\n abort: false\n };\n }\n if (this._taskHandle) {\n this._taskHandle.cancel();\n if (!options.abort) {\n this._callback();\n }\n this._taskHandle = null;\n }\n }\n schedule() {\n if (this._taskHandle) {\n return;\n }\n var timeoutHandle = setTimeout(() => {\n this._taskHandle = InteractionManager.runAfterInteractions(() => {\n // Note that we clear the handle before invoking the callback so that if the callback calls\n // schedule again, it will actually schedule another task.\n this._taskHandle = null;\n this._callback();\n });\n }, this._delay);\n this._taskHandle = {\n cancel: () => clearTimeout(timeoutHandle)\n };\n }\n}\nexport default Batchinator;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @format\n * \n */\n\n'use strict';\n\n/**\n * Intentional info-level logging for clear separation from ad-hoc console debug logging.\n */\nfunction infoLog() {\n return console.log(...arguments);\n}\nexport default infoLog;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport invariant from 'fbjs/lib/invariant';\nexport class CellRenderMask {\n constructor(numCells) {\n invariant(numCells >= 0, 'CellRenderMask must contain a non-negative number os cells');\n this._numCells = numCells;\n if (numCells === 0) {\n this._regions = [];\n } else {\n this._regions = [{\n first: 0,\n last: numCells - 1,\n isSpacer: true\n }];\n }\n }\n enumerateRegions() {\n return this._regions;\n }\n addCells(cells) {\n invariant(cells.first >= 0 && cells.first < this._numCells && cells.last >= -1 && cells.last < this._numCells && cells.last >= cells.first - 1, 'CellRenderMask.addCells called with invalid cell range');\n\n // VirtualizedList uses inclusive ranges, where zero-count states are\n // possible. E.g. [0, -1] for no cells, starting at 0.\n if (cells.last < cells.first) {\n return;\n }\n var _this$_findRegion = this._findRegion(cells.first),\n firstIntersect = _this$_findRegion[0],\n firstIntersectIdx = _this$_findRegion[1];\n var _this$_findRegion2 = this._findRegion(cells.last),\n lastIntersect = _this$_findRegion2[0],\n lastIntersectIdx = _this$_findRegion2[1];\n\n // Fast-path if the cells to add are already all present in the mask. We\n // will otherwise need to do some mutation.\n if (firstIntersectIdx === lastIntersectIdx && !firstIntersect.isSpacer) {\n return;\n }\n\n // We need to replace the existing covered regions with 1-3 new regions\n // depending whether we need to split spacers out of overlapping regions.\n var newLeadRegion = [];\n var newTailRegion = [];\n var newMainRegion = _objectSpread(_objectSpread({}, cells), {}, {\n isSpacer: false\n });\n if (firstIntersect.first < newMainRegion.first) {\n if (firstIntersect.isSpacer) {\n newLeadRegion.push({\n first: firstIntersect.first,\n last: newMainRegion.first - 1,\n isSpacer: true\n });\n } else {\n newMainRegion.first = firstIntersect.first;\n }\n }\n if (lastIntersect.last > newMainRegion.last) {\n if (lastIntersect.isSpacer) {\n newTailRegion.push({\n first: newMainRegion.last + 1,\n last: lastIntersect.last,\n isSpacer: true\n });\n } else {\n newMainRegion.last = lastIntersect.last;\n }\n }\n var replacementRegions = [...newLeadRegion, newMainRegion, ...newTailRegion];\n var numRegionsToDelete = lastIntersectIdx - firstIntersectIdx + 1;\n this._regions.splice(firstIntersectIdx, numRegionsToDelete, ...replacementRegions);\n }\n numCells() {\n return this._numCells;\n }\n equals(other) {\n return this._numCells === other._numCells && this._regions.length === other._regions.length && this._regions.every((region, i) => region.first === other._regions[i].first && region.last === other._regions[i].last && region.isSpacer === other._regions[i].isSpacer);\n }\n _findRegion(cellIdx) {\n var firstIdx = 0;\n var lastIdx = this._regions.length - 1;\n while (firstIdx <= lastIdx) {\n var middleIdx = Math.floor((firstIdx + lastIdx) / 2);\n var middleRegion = this._regions[middleIdx];\n if (cellIdx >= middleRegion.first && cellIdx <= middleRegion.last) {\n return [middleRegion, middleIdx];\n } else if (cellIdx < middleRegion.first) {\n lastIdx = middleIdx - 1;\n } else if (cellIdx > middleRegion.last) {\n firstIdx = middleIdx + 1;\n }\n }\n invariant(false, \"A region was not found containing cellIdx \" + cellIdx);\n }\n}","import _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport invariant from 'fbjs/lib/invariant';\nexport default class ChildListCollection {\n constructor() {\n this._cellKeyToChildren = new Map();\n this._childrenToCellKey = new Map();\n }\n add(list, cellKey) {\n var _this$_cellKeyToChild;\n invariant(!this._childrenToCellKey.has(list), 'Trying to add already present child list');\n var cellLists = (_this$_cellKeyToChild = this._cellKeyToChildren.get(cellKey)) !== null && _this$_cellKeyToChild !== void 0 ? _this$_cellKeyToChild : new Set();\n cellLists.add(list);\n this._cellKeyToChildren.set(cellKey, cellLists);\n this._childrenToCellKey.set(list, cellKey);\n }\n remove(list) {\n var cellKey = this._childrenToCellKey.get(list);\n invariant(cellKey != null, 'Trying to remove non-present child list');\n this._childrenToCellKey.delete(list);\n var cellLists = this._cellKeyToChildren.get(cellKey);\n invariant(cellLists, '_cellKeyToChildren should contain cellKey');\n cellLists.delete(list);\n if (cellLists.size === 0) {\n this._cellKeyToChildren.delete(cellKey);\n }\n }\n forEach(fn) {\n for (var _iterator = _createForOfIteratorHelperLoose(this._cellKeyToChildren.values()), _step; !(_step = _iterator()).done;) {\n var listSet = _step.value;\n for (var _iterator2 = _createForOfIteratorHelperLoose(listSet), _step2; !(_step2 = _iterator2()).done;) {\n var list = _step2.value;\n fn(list);\n }\n }\n }\n forEachInCell(cellKey, fn) {\n var _this$_cellKeyToChild2;\n var listSet = (_this$_cellKeyToChild2 = this._cellKeyToChildren.get(cellKey)) !== null && _this$_cellKeyToChild2 !== void 0 ? _this$_cellKeyToChild2 : [];\n for (var _iterator3 = _createForOfIteratorHelperLoose(listSet), _step3; !(_step3 = _iterator3()).done;) {\n var list = _step3.value;\n fn(list);\n }\n }\n anyInCell(cellKey, fn) {\n var _this$_cellKeyToChild3;\n var listSet = (_this$_cellKeyToChild3 = this._cellKeyToChildren.get(cellKey)) !== null && _this$_cellKeyToChild3 !== void 0 ? _this$_cellKeyToChild3 : [];\n for (var _iterator4 = _createForOfIteratorHelperLoose(listSet), _step4; !(_step4 = _iterator4()).done;) {\n var list = _step4.value;\n if (fn(list)) {\n return true;\n }\n }\n return false;\n }\n size() {\n return this._childrenToCellKey.size;\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nclass Info {\n constructor() {\n this.any_blank_count = 0;\n this.any_blank_ms = 0;\n this.any_blank_speed_sum = 0;\n this.mostly_blank_count = 0;\n this.mostly_blank_ms = 0;\n this.pixels_blank = 0;\n this.pixels_sampled = 0;\n this.pixels_scrolled = 0;\n this.total_time_spent = 0;\n this.sample_count = 0;\n }\n}\nvar DEBUG = false;\nvar _listeners = [];\nvar _minSampleCount = 10;\nvar _sampleRate = DEBUG ? 1 : null;\n\n/**\n * A helper class for detecting when the maximem fill rate of `VirtualizedList` is exceeded.\n * By default the sampling rate is set to zero and this will do nothing. If you want to collect\n * samples (e.g. to log them), make sure to call `FillRateHelper.setSampleRate(0.0-1.0)`.\n *\n * Listeners and sample rate are global for all `VirtualizedList`s - typical usage will combine with\n * `SceneTracker.getActiveScene` to determine the context of the events.\n */\nclass FillRateHelper {\n static addListener(callback) {\n if (_sampleRate === null) {\n console.warn('Call `FillRateHelper.setSampleRate` before `addListener`.');\n }\n _listeners.push(callback);\n return {\n remove: () => {\n _listeners = _listeners.filter(listener => callback !== listener);\n }\n };\n }\n static setSampleRate(sampleRate) {\n _sampleRate = sampleRate;\n }\n static setMinSampleCount(minSampleCount) {\n _minSampleCount = minSampleCount;\n }\n constructor(getFrameMetrics) {\n this._anyBlankStartTime = null;\n this._enabled = false;\n this._info = new Info();\n this._mostlyBlankStartTime = null;\n this._samplesStartTime = null;\n this._getFrameMetrics = getFrameMetrics;\n this._enabled = (_sampleRate || 0) > Math.random();\n this._resetData();\n }\n activate() {\n if (this._enabled && this._samplesStartTime == null) {\n DEBUG && console.debug('FillRateHelper: activate');\n this._samplesStartTime = global.performance.now();\n }\n }\n deactivateAndFlush() {\n if (!this._enabled) {\n return;\n }\n var start = this._samplesStartTime; // const for flow\n if (start == null) {\n DEBUG && console.debug('FillRateHelper: bail on deactivate with no start time');\n return;\n }\n if (this._info.sample_count < _minSampleCount) {\n // Don't bother with under-sampled events.\n this._resetData();\n return;\n }\n var total_time_spent = global.performance.now() - start;\n var info = _objectSpread(_objectSpread({}, this._info), {}, {\n total_time_spent\n });\n if (DEBUG) {\n var derived = {\n avg_blankness: this._info.pixels_blank / this._info.pixels_sampled,\n avg_speed: this._info.pixels_scrolled / (total_time_spent / 1000),\n avg_speed_when_any_blank: this._info.any_blank_speed_sum / this._info.any_blank_count,\n any_blank_per_min: this._info.any_blank_count / (total_time_spent / 1000 / 60),\n any_blank_time_frac: this._info.any_blank_ms / total_time_spent,\n mostly_blank_per_min: this._info.mostly_blank_count / (total_time_spent / 1000 / 60),\n mostly_blank_time_frac: this._info.mostly_blank_ms / total_time_spent\n };\n for (var key in derived) {\n // $FlowFixMe[prop-missing]\n derived[key] = Math.round(1000 * derived[key]) / 1000;\n }\n console.debug('FillRateHelper deactivateAndFlush: ', {\n derived,\n info\n });\n }\n _listeners.forEach(listener => listener(info));\n this._resetData();\n }\n computeBlankness(props, cellsAroundViewport, scrollMetrics) {\n if (!this._enabled || props.getItemCount(props.data) === 0 || cellsAroundViewport.last < cellsAroundViewport.first || this._samplesStartTime == null) {\n return 0;\n }\n var dOffset = scrollMetrics.dOffset,\n offset = scrollMetrics.offset,\n velocity = scrollMetrics.velocity,\n visibleLength = scrollMetrics.visibleLength;\n\n // Denominator metrics that we track for all events - most of the time there is no blankness and\n // we want to capture that.\n this._info.sample_count++;\n this._info.pixels_sampled += Math.round(visibleLength);\n this._info.pixels_scrolled += Math.round(Math.abs(dOffset));\n var scrollSpeed = Math.round(Math.abs(velocity) * 1000); // px / sec\n\n // Whether blank now or not, record the elapsed time blank if we were blank last time.\n var now = global.performance.now();\n if (this._anyBlankStartTime != null) {\n this._info.any_blank_ms += now - this._anyBlankStartTime;\n }\n this._anyBlankStartTime = null;\n if (this._mostlyBlankStartTime != null) {\n this._info.mostly_blank_ms += now - this._mostlyBlankStartTime;\n }\n this._mostlyBlankStartTime = null;\n var blankTop = 0;\n var first = cellsAroundViewport.first;\n var firstFrame = this._getFrameMetrics(first, props);\n while (first <= cellsAroundViewport.last && (!firstFrame || !firstFrame.inLayout)) {\n firstFrame = this._getFrameMetrics(first, props);\n first++;\n }\n // Only count blankTop if we aren't rendering the first item, otherwise we will count the header\n // as blank.\n if (firstFrame && first > 0) {\n blankTop = Math.min(visibleLength, Math.max(0, firstFrame.offset - offset));\n }\n var blankBottom = 0;\n var last = cellsAroundViewport.last;\n var lastFrame = this._getFrameMetrics(last, props);\n while (last >= cellsAroundViewport.first && (!lastFrame || !lastFrame.inLayout)) {\n lastFrame = this._getFrameMetrics(last, props);\n last--;\n }\n // Only count blankBottom if we aren't rendering the last item, otherwise we will count the\n // footer as blank.\n if (lastFrame && last < props.getItemCount(props.data) - 1) {\n var bottomEdge = lastFrame.offset + lastFrame.length;\n blankBottom = Math.min(visibleLength, Math.max(0, offset + visibleLength - bottomEdge));\n }\n var pixels_blank = Math.round(blankTop + blankBottom);\n var blankness = pixels_blank / visibleLength;\n if (blankness > 0) {\n this._anyBlankStartTime = now;\n this._info.any_blank_speed_sum += scrollSpeed;\n this._info.any_blank_count++;\n this._info.pixels_blank += pixels_blank;\n if (blankness > 0.5) {\n this._mostlyBlankStartTime = now;\n this._info.mostly_blank_count++;\n }\n } else if (scrollSpeed < 0.01 || Math.abs(dOffset) < 1) {\n this.deactivateAndFlush();\n }\n return blankness;\n }\n enabled() {\n return this._enabled;\n }\n _resetData() {\n this._anyBlankStartTime = null;\n this._info = new Info();\n this._mostlyBlankStartTime = null;\n this._samplesStartTime = null;\n }\n}\nexport default FillRateHelper;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport invariant from 'fbjs/lib/invariant';\nimport * as React from 'react';\n\n/**\n * `setState` is called asynchronously, and should not rely on the value of\n * `this.props` or `this.state`:\n * https://reactjs.org/docs/state-and-lifecycle.html#state-updates-may-be-asynchronous\n *\n * SafePureComponent adds runtime enforcement, to catch cases where these\n * variables are read in a state updater function, instead of the ones passed\n * in.\n */\nexport default class StateSafePureComponent extends React.PureComponent {\n constructor(props) {\n super(props);\n this._inAsyncStateUpdate = false;\n this._installSetStateHooks();\n }\n setState(partialState, callback) {\n if (typeof partialState === 'function') {\n super.setState((state, props) => {\n this._inAsyncStateUpdate = true;\n var ret;\n try {\n ret = partialState(state, props);\n } catch (err) {\n throw err;\n } finally {\n this._inAsyncStateUpdate = false;\n }\n return ret;\n }, callback);\n } else {\n super.setState(partialState, callback);\n }\n }\n _installSetStateHooks() {\n var that = this;\n var props = this.props,\n state = this.state;\n Object.defineProperty(this, 'props', {\n get() {\n invariant(!that._inAsyncStateUpdate, '\"this.props\" should not be accessed during state updates');\n return props;\n },\n set(newProps) {\n props = newProps;\n }\n });\n Object.defineProperty(this, 'state', {\n get() {\n invariant(!that._inAsyncStateUpdate, '\"this.state\" should not be acceessed during state updates');\n return state;\n },\n set(newState) {\n state = newState;\n }\n });\n }\n}","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n'use strict';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\nimport invariant from 'fbjs/lib/invariant';\n/**\n * A Utility class for calculating viewable items based on current metrics like scroll position and\n * layout.\n *\n * An item is said to be in a \"viewable\" state when any of the following\n * is true for longer than `minimumViewTime` milliseconds (after an interaction if `waitForInteraction`\n * is true):\n *\n * - Occupying >= `viewAreaCoveragePercentThreshold` of the view area XOR fraction of the item\n * visible in the view area >= `itemVisiblePercentThreshold`.\n * - Entirely visible on screen\n */\nclass ViewabilityHelper {\n constructor(config) {\n if (config === void 0) {\n config = {\n viewAreaCoveragePercentThreshold: 0\n };\n }\n this._hasInteracted = false;\n this._timers = new Set();\n this._viewableIndices = [];\n this._viewableItems = new Map();\n this._config = config;\n }\n\n /**\n * Cleanup, e.g. on unmount. Clears any pending timers.\n */\n dispose() {\n /* $FlowFixMe[incompatible-call] (>=0.63.0 site=react_native_fb) This\n * comment suppresses an error found when Flow v0.63 was deployed. To see\n * the error delete this comment and run Flow. */\n this._timers.forEach(clearTimeout);\n }\n\n /**\n * Determines which items are viewable based on the current metrics and config.\n */\n computeViewableItems(props, scrollOffset, viewportHeight, getFrameMetrics,\n // Optional optimization to reduce the scan size\n renderRange) {\n var itemCount = props.getItemCount(props.data);\n var _this$_config = this._config,\n itemVisiblePercentThreshold = _this$_config.itemVisiblePercentThreshold,\n viewAreaCoveragePercentThreshold = _this$_config.viewAreaCoveragePercentThreshold;\n var viewAreaMode = viewAreaCoveragePercentThreshold != null;\n var viewablePercentThreshold = viewAreaMode ? viewAreaCoveragePercentThreshold : itemVisiblePercentThreshold;\n invariant(viewablePercentThreshold != null && itemVisiblePercentThreshold != null !== (viewAreaCoveragePercentThreshold != null), 'Must set exactly one of itemVisiblePercentThreshold or viewAreaCoveragePercentThreshold');\n var viewableIndices = [];\n if (itemCount === 0) {\n return viewableIndices;\n }\n var firstVisible = -1;\n var _ref = renderRange || {\n first: 0,\n last: itemCount - 1\n },\n first = _ref.first,\n last = _ref.last;\n if (last >= itemCount) {\n console.warn('Invalid render range computing viewability ' + JSON.stringify({\n renderRange,\n itemCount\n }));\n return [];\n }\n for (var idx = first; idx <= last; idx++) {\n var metrics = getFrameMetrics(idx, props);\n if (!metrics) {\n continue;\n }\n var top = metrics.offset - scrollOffset;\n var bottom = top + metrics.length;\n if (top < viewportHeight && bottom > 0) {\n firstVisible = idx;\n if (_isViewable(viewAreaMode, viewablePercentThreshold, top, bottom, viewportHeight, metrics.length)) {\n viewableIndices.push(idx);\n }\n } else if (firstVisible >= 0) {\n break;\n }\n }\n return viewableIndices;\n }\n\n /**\n * Figures out which items are viewable and how that has changed from before and calls\n * `onViewableItemsChanged` as appropriate.\n */\n onUpdate(props, scrollOffset, viewportHeight, getFrameMetrics, createViewToken, onViewableItemsChanged,\n // Optional optimization to reduce the scan size\n renderRange) {\n var itemCount = props.getItemCount(props.data);\n if (this._config.waitForInteraction && !this._hasInteracted || itemCount === 0 || !getFrameMetrics(0, props)) {\n return;\n }\n var viewableIndices = [];\n if (itemCount) {\n viewableIndices = this.computeViewableItems(props, scrollOffset, viewportHeight, getFrameMetrics, renderRange);\n }\n if (this._viewableIndices.length === viewableIndices.length && this._viewableIndices.every((v, ii) => v === viewableIndices[ii])) {\n // We might get a lot of scroll events where visibility doesn't change and we don't want to do\n // extra work in those cases.\n return;\n }\n this._viewableIndices = viewableIndices;\n if (this._config.minimumViewTime) {\n var handle = setTimeout(() => {\n /* $FlowFixMe[incompatible-call] (>=0.63.0 site=react_native_fb) This\n * comment suppresses an error found when Flow v0.63 was deployed. To\n * see the error delete this comment and run Flow. */\n this._timers.delete(handle);\n this._onUpdateSync(props, viewableIndices, onViewableItemsChanged, createViewToken);\n }, this._config.minimumViewTime);\n /* $FlowFixMe[incompatible-call] (>=0.63.0 site=react_native_fb) This\n * comment suppresses an error found when Flow v0.63 was deployed. To see\n * the error delete this comment and run Flow. */\n this._timers.add(handle);\n } else {\n this._onUpdateSync(props, viewableIndices, onViewableItemsChanged, createViewToken);\n }\n }\n\n /**\n * clean-up cached _viewableIndices to evaluate changed items on next update\n */\n resetViewableIndices() {\n this._viewableIndices = [];\n }\n\n /**\n * Records that an interaction has happened even if there has been no scroll.\n */\n recordInteraction() {\n this._hasInteracted = true;\n }\n _onUpdateSync(props, viewableIndicesToCheck, onViewableItemsChanged, createViewToken) {\n // Filter out indices that have gone out of view since this call was scheduled.\n viewableIndicesToCheck = viewableIndicesToCheck.filter(ii => this._viewableIndices.includes(ii));\n var prevItems = this._viewableItems;\n var nextItems = new Map(viewableIndicesToCheck.map(ii => {\n var viewable = createViewToken(ii, true, props);\n return [viewable.key, viewable];\n }));\n var changed = [];\n for (var _iterator = _createForOfIteratorHelperLoose(nextItems), _step; !(_step = _iterator()).done;) {\n var _step$value = _step.value,\n key = _step$value[0],\n viewable = _step$value[1];\n if (!prevItems.has(key)) {\n changed.push(viewable);\n }\n }\n for (var _iterator2 = _createForOfIteratorHelperLoose(prevItems), _step2; !(_step2 = _iterator2()).done;) {\n var _step2$value = _step2.value,\n _key = _step2$value[0],\n _viewable = _step2$value[1];\n if (!nextItems.has(_key)) {\n changed.push(_objectSpread(_objectSpread({}, _viewable), {}, {\n isViewable: false\n }));\n }\n }\n if (changed.length > 0) {\n this._viewableItems = nextItems;\n onViewableItemsChanged({\n viewableItems: Array.from(nextItems.values()),\n changed,\n viewabilityConfig: this._config\n });\n }\n }\n}\nfunction _isViewable(viewAreaMode, viewablePercentThreshold, top, bottom, viewportHeight, itemLength) {\n if (_isEntirelyVisible(top, bottom, viewportHeight)) {\n return true;\n } else {\n var pixels = _getPixelsVisible(top, bottom, viewportHeight);\n var percent = 100 * (viewAreaMode ? pixels / viewportHeight : pixels / itemLength);\n return percent >= viewablePercentThreshold;\n }\n}\nfunction _getPixelsVisible(top, bottom, viewportHeight) {\n var visibleHeight = Math.min(bottom, viewportHeight) - Math.max(top, 0);\n return Math.max(0, visibleHeight);\n}\nfunction _isEntirelyVisible(top, bottom, viewportHeight) {\n return top >= 0 && bottom <= viewportHeight && bottom > top;\n}\nexport default ViewabilityHelper;","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nvar __DEV__ = process.env.NODE_ENV !== 'production';\nexport var VirtualizedListContext = /*#__PURE__*/React.createContext(null);\nif (__DEV__) {\n VirtualizedListContext.displayName = 'VirtualizedListContext';\n}\n\n/**\n * Resets the context. Intended for use by portal-like components (e.g. Modal).\n */\nexport function VirtualizedListContextResetter(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(VirtualizedListContext.Provider, {\n value: null\n }, children);\n}\n\n/**\n * Sets the context with memoization. Intended to be used by `VirtualizedList`.\n */\nexport function VirtualizedListContextProvider(_ref2) {\n var children = _ref2.children,\n value = _ref2.value;\n // Avoid setting a newly created context object if the values are identical.\n var context = useMemo(() => ({\n cellKey: null,\n getScrollMetrics: value.getScrollMetrics,\n horizontal: value.horizontal,\n getOutermostParentListRef: value.getOutermostParentListRef,\n registerAsNestedChild: value.registerAsNestedChild,\n unregisterAsNestedChild: value.unregisterAsNestedChild\n }), [value.getScrollMetrics, value.horizontal, value.getOutermostParentListRef, value.registerAsNestedChild, value.unregisterAsNestedChild]);\n return /*#__PURE__*/React.createElement(VirtualizedListContext.Provider, {\n value: context\n }, children);\n}\n\n/**\n * Sets the `cellKey`. Intended to be used by `VirtualizedList` for each cell.\n */\nexport function VirtualizedListCellContextProvider(_ref3) {\n var cellKey = _ref3.cellKey,\n children = _ref3.children;\n // Avoid setting a newly created context object if the values are identical.\n var currContext = useContext(VirtualizedListContext);\n var context = useMemo(() => currContext == null ? null : _objectSpread(_objectSpread({}, currContext), {}, {\n cellKey\n }), [currContext, cellKey]);\n return /*#__PURE__*/React.createElement(VirtualizedListContext.Provider, {\n value: context\n }, children);\n}","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport View from '../../../exports/View';\nimport StyleSheet from '../../../exports/StyleSheet';\nimport { VirtualizedListCellContextProvider } from './VirtualizedListContext.js';\nimport invariant from 'fbjs/lib/invariant';\nimport * as React from 'react';\nexport default class CellRenderer extends React.Component {\n constructor() {\n super(...arguments);\n this.state = {\n separatorProps: {\n highlighted: false,\n leadingItem: this.props.item\n }\n };\n this._separators = {\n highlight: () => {\n var _this$props = this.props,\n cellKey = _this$props.cellKey,\n prevCellKey = _this$props.prevCellKey;\n this.props.onUpdateSeparators([cellKey, prevCellKey], {\n highlighted: true\n });\n },\n unhighlight: () => {\n var _this$props2 = this.props,\n cellKey = _this$props2.cellKey,\n prevCellKey = _this$props2.prevCellKey;\n this.props.onUpdateSeparators([cellKey, prevCellKey], {\n highlighted: false\n });\n },\n updateProps: (select, newProps) => {\n var _this$props3 = this.props,\n cellKey = _this$props3.cellKey,\n prevCellKey = _this$props3.prevCellKey;\n this.props.onUpdateSeparators([select === 'leading' ? prevCellKey : cellKey], newProps);\n }\n };\n this._onLayout = nativeEvent => {\n this.props.onCellLayout && this.props.onCellLayout(nativeEvent, this.props.cellKey, this.props.index);\n };\n }\n static getDerivedStateFromProps(props, prevState) {\n return {\n separatorProps: _objectSpread(_objectSpread({}, prevState.separatorProps), {}, {\n leadingItem: props.item\n })\n };\n }\n\n // TODO: consider factoring separator stuff out of VirtualizedList into FlatList since it's not\n // reused by SectionList and we can keep VirtualizedList simpler.\n // $FlowFixMe[missing-local-annot]\n\n updateSeparatorProps(newProps) {\n this.setState(state => ({\n separatorProps: _objectSpread(_objectSpread({}, state.separatorProps), newProps)\n }));\n }\n componentWillUnmount() {\n this.props.onUnmount(this.props.cellKey);\n }\n _renderElement(renderItem, ListItemComponent, item, index) {\n if (renderItem && ListItemComponent) {\n console.warn('VirtualizedList: Both ListItemComponent and renderItem props are present. ListItemComponent will take' + ' precedence over renderItem.');\n }\n if (ListItemComponent) {\n /* $FlowFixMe[not-a-component] (>=0.108.0 site=react_native_fb) This\n * comment suppresses an error found when Flow v0.108 was deployed. To\n * see the error, delete this comment and run Flow. */\n /* $FlowFixMe[incompatible-type-arg] (>=0.108.0 site=react_native_fb)\n * This comment suppresses an error found when Flow v0.108 was deployed.\n * To see the error, delete this comment and run Flow. */\n return /*#__PURE__*/React.createElement(ListItemComponent, {\n item,\n index,\n separators: this._separators\n });\n }\n if (renderItem) {\n return renderItem({\n item,\n index,\n separators: this._separators\n });\n }\n invariant(false, 'VirtualizedList: Either ListItemComponent or renderItem props are required but none were found.');\n }\n render() {\n var _this$props4 = this.props,\n CellRendererComponent = _this$props4.CellRendererComponent,\n ItemSeparatorComponent = _this$props4.ItemSeparatorComponent,\n ListItemComponent = _this$props4.ListItemComponent,\n cellKey = _this$props4.cellKey,\n horizontal = _this$props4.horizontal,\n item = _this$props4.item,\n index = _this$props4.index,\n inversionStyle = _this$props4.inversionStyle,\n onCellFocusCapture = _this$props4.onCellFocusCapture,\n onCellLayout = _this$props4.onCellLayout,\n renderItem = _this$props4.renderItem;\n var element = this._renderElement(renderItem, ListItemComponent, item, index);\n\n // NOTE: that when this is a sticky header, `onLayout` will get automatically extracted and\n // called explicitly by `ScrollViewStickyHeader`.\n var itemSeparator = /*#__PURE__*/React.isValidElement(ItemSeparatorComponent) ?\n // $FlowFixMe[incompatible-type]\n ItemSeparatorComponent :\n // $FlowFixMe[incompatible-type]\n ItemSeparatorComponent && /*#__PURE__*/React.createElement(ItemSeparatorComponent, this.state.separatorProps);\n var cellStyle = inversionStyle ? horizontal ? [styles.rowReverse, inversionStyle] : [styles.columnReverse, inversionStyle] : horizontal ? [styles.row, inversionStyle] : inversionStyle;\n var result = !CellRendererComponent ? /*#__PURE__*/React.createElement(View, _extends({\n style: cellStyle,\n onFocusCapture: onCellFocusCapture\n }, onCellLayout && {\n onLayout: this._onLayout\n }), element, itemSeparator) : /*#__PURE__*/React.createElement(CellRendererComponent, _extends({\n cellKey: cellKey,\n index: index,\n item: item,\n style: cellStyle,\n onFocusCapture: onCellFocusCapture\n }, onCellLayout && {\n onLayout: this._onLayout\n }), element, itemSeparator);\n return /*#__PURE__*/React.createElement(VirtualizedListCellContextProvider, {\n cellKey: this.props.cellKey\n }, result);\n }\n}\nvar styles = StyleSheet.create({\n row: {\n flexDirection: 'row'\n },\n rowReverse: {\n flexDirection: 'row-reverse'\n },\n columnReverse: {\n flexDirection: 'column-reverse'\n }\n});","import _createForOfIteratorHelperLoose from \"@babel/runtime/helpers/createForOfIteratorHelperLoose\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\n/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\nimport RefreshControl from '../../../exports/RefreshControl';\nimport ScrollView from '../../../exports/ScrollView';\nimport View from '../../../exports/View';\nimport StyleSheet from '../../../exports/StyleSheet';\nimport findNodeHandle from '../../../exports/findNodeHandle';\nimport Batchinator from '../Batchinator';\nimport clamp from '../Utilities/clamp';\nimport infoLog from '../infoLog';\nimport { CellRenderMask } from './CellRenderMask';\nimport ChildListCollection from './ChildListCollection';\nimport FillRateHelper from '../FillRateHelper';\nimport StateSafePureComponent from './StateSafePureComponent';\nimport ViewabilityHelper from '../ViewabilityHelper';\nimport CellRenderer from './VirtualizedListCellRenderer';\nimport { VirtualizedListCellContextProvider, VirtualizedListContext, VirtualizedListContextProvider } from './VirtualizedListContext.js';\nimport { computeWindowedRenderLimits, keyExtractor as defaultKeyExtractor } from '../VirtualizeUtils';\nimport invariant from 'fbjs/lib/invariant';\nimport nullthrows from 'nullthrows';\nimport * as React from 'react';\nvar __DEV__ = process.env.NODE_ENV !== 'production';\nvar ON_EDGE_REACHED_EPSILON = 0.001;\nvar _usedIndexForKey = false;\nvar _keylessItemComponentName = '';\n/**\n * Default Props Helper Functions\n * Use the following helper functions for default values\n */\n\n// horizontalOrDefault(this.props.horizontal)\nfunction horizontalOrDefault(horizontal) {\n return horizontal !== null && horizontal !== void 0 ? horizontal : false;\n}\n\n// initialNumToRenderOrDefault(this.props.initialNumToRender)\nfunction initialNumToRenderOrDefault(initialNumToRender) {\n return initialNumToRender !== null && initialNumToRender !== void 0 ? initialNumToRender : 10;\n}\n\n// maxToRenderPerBatchOrDefault(this.props.maxToRenderPerBatch)\nfunction maxToRenderPerBatchOrDefault(maxToRenderPerBatch) {\n return maxToRenderPerBatch !== null && maxToRenderPerBatch !== void 0 ? maxToRenderPerBatch : 10;\n}\n\n// onStartReachedThresholdOrDefault(this.props.onStartReachedThreshold)\nfunction onStartReachedThresholdOrDefault(onStartReachedThreshold) {\n return onStartReachedThreshold !== null && onStartReachedThreshold !== void 0 ? onStartReachedThreshold : 2;\n}\n\n// onEndReachedThresholdOrDefault(this.props.onEndReachedThreshold)\nfunction onEndReachedThresholdOrDefault(onEndReachedThreshold) {\n return onEndReachedThreshold !== null && onEndReachedThreshold !== void 0 ? onEndReachedThreshold : 2;\n}\n\n// getScrollingThreshold(visibleLength, onEndReachedThreshold)\nfunction getScrollingThreshold(threshold, visibleLength) {\n return threshold * visibleLength / 2;\n}\n\n// scrollEventThrottleOrDefault(this.props.scrollEventThrottle)\nfunction scrollEventThrottleOrDefault(scrollEventThrottle) {\n return scrollEventThrottle !== null && scrollEventThrottle !== void 0 ? scrollEventThrottle : 50;\n}\n\n// windowSizeOrDefault(this.props.windowSize)\nfunction windowSizeOrDefault(windowSize) {\n return windowSize !== null && windowSize !== void 0 ? windowSize : 21;\n}\nfunction findLastWhere(arr, predicate) {\n for (var i = arr.length - 1; i >= 0; i--) {\n if (predicate(arr[i])) {\n return arr[i];\n }\n }\n return null;\n}\n\n/**\n * Base implementation for the more convenient [``](https://reactnative.dev/docs/flatlist)\n * and [``](https://reactnative.dev/docs/sectionlist) components, which are also better\n * documented. In general, this should only really be used if you need more flexibility than\n * `FlatList` provides, e.g. for use with immutable data instead of plain arrays.\n *\n * Virtualization massively improves memory consumption and performance of large lists by\n * maintaining a finite render window of active items and replacing all items outside of the render\n * window with appropriately sized blank space. The window adapts to scrolling behavior, and items\n * are rendered incrementally with low-pri (after any running interactions) if they are far from the\n * visible area, or with hi-pri otherwise to minimize the potential of seeing blank space.\n *\n * Some caveats:\n *\n * - Internal state is not preserved when content scrolls out of the render window. Make sure all\n * your data is captured in the item data or external stores like Flux, Redux, or Relay.\n * - This is a `PureComponent` which means that it will not re-render if `props` remain shallow-\n * equal. Make sure that everything your `renderItem` function depends on is passed as a prop\n * (e.g. `extraData`) that is not `===` after updates, otherwise your UI may not update on\n * changes. This includes the `data` prop and parent component state.\n * - In order to constrain memory and enable smooth scrolling, content is rendered asynchronously\n * offscreen. This means it's possible to scroll faster than the fill rate ands momentarily see\n * blank content. This is a tradeoff that can be adjusted to suit the needs of each application,\n * and we are working on improving it behind the scenes.\n * - By default, the list looks for a `key` or `id` prop on each item and uses that for the React key.\n * Alternatively, you can provide a custom `keyExtractor` prop.\n * - As an effort to remove defaultProps, use helper functions when referencing certain props\n *\n */\nclass VirtualizedList extends StateSafePureComponent {\n // scrollToEnd may be janky without getItemLayout prop\n scrollToEnd(params) {\n var animated = params ? params.animated : true;\n var veryLast = this.props.getItemCount(this.props.data) - 1;\n if (veryLast < 0) {\n return;\n }\n var frame = this.__getFrameMetricsApprox(veryLast, this.props);\n var offset = Math.max(0, frame.offset + frame.length + this._footerLength - this._scrollMetrics.visibleLength);\n if (this._scrollRef == null) {\n return;\n }\n if (this._scrollRef.scrollTo == null) {\n console.warn('No scrollTo method provided. This may be because you have two nested ' + 'VirtualizedLists with the same orientation, or because you are ' + 'using a custom component that does not implement scrollTo.');\n return;\n }\n this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {\n x: offset,\n animated\n } : {\n y: offset,\n animated\n });\n }\n\n // scrollToIndex may be janky without getItemLayout prop\n scrollToIndex(params) {\n var _this$props = this.props,\n data = _this$props.data,\n horizontal = _this$props.horizontal,\n getItemCount = _this$props.getItemCount,\n getItemLayout = _this$props.getItemLayout,\n onScrollToIndexFailed = _this$props.onScrollToIndexFailed;\n var animated = params.animated,\n index = params.index,\n viewOffset = params.viewOffset,\n viewPosition = params.viewPosition;\n invariant(index >= 0, \"scrollToIndex out of range: requested index \" + index + \" but minimum is 0\");\n invariant(getItemCount(data) >= 1, \"scrollToIndex out of range: item length \" + getItemCount(data) + \" but minimum is 1\");\n invariant(index < getItemCount(data), \"scrollToIndex out of range: requested index \" + index + \" is out of 0 to \" + (getItemCount(data) - 1));\n if (!getItemLayout && index > this._highestMeasuredFrameIndex) {\n invariant(!!onScrollToIndexFailed, 'scrollToIndex should be used in conjunction with getItemLayout or onScrollToIndexFailed, ' + 'otherwise there is no way to know the location of offscreen indices or handle failures.');\n onScrollToIndexFailed({\n averageItemLength: this._averageCellLength,\n highestMeasuredFrameIndex: this._highestMeasuredFrameIndex,\n index\n });\n return;\n }\n var frame = this.__getFrameMetricsApprox(Math.floor(index), this.props);\n var offset = Math.max(0, this._getOffsetApprox(index, this.props) - (viewPosition || 0) * (this._scrollMetrics.visibleLength - frame.length)) - (viewOffset || 0);\n if (this._scrollRef == null) {\n return;\n }\n if (this._scrollRef.scrollTo == null) {\n console.warn('No scrollTo method provided. This may be because you have two nested ' + 'VirtualizedLists with the same orientation, or because you are ' + 'using a custom component that does not implement scrollTo.');\n return;\n }\n this._scrollRef.scrollTo(horizontal ? {\n x: offset,\n animated\n } : {\n y: offset,\n animated\n });\n }\n\n // scrollToItem may be janky without getItemLayout prop. Required linear scan through items -\n // use scrollToIndex instead if possible.\n scrollToItem(params) {\n var item = params.item;\n var _this$props2 = this.props,\n data = _this$props2.data,\n getItem = _this$props2.getItem,\n getItemCount = _this$props2.getItemCount;\n var itemCount = getItemCount(data);\n for (var _index = 0; _index < itemCount; _index++) {\n if (getItem(data, _index) === item) {\n this.scrollToIndex(_objectSpread(_objectSpread({}, params), {}, {\n index: _index\n }));\n break;\n }\n }\n }\n\n /**\n * Scroll to a specific content pixel offset in the list.\n *\n * Param `offset` expects the offset to scroll to.\n * In case of `horizontal` is true, the offset is the x-value,\n * in any other case the offset is the y-value.\n *\n * Param `animated` (`true` by default) defines whether the list\n * should do an animation while scrolling.\n */\n scrollToOffset(params) {\n var animated = params.animated,\n offset = params.offset;\n if (this._scrollRef == null) {\n return;\n }\n if (this._scrollRef.scrollTo == null) {\n console.warn('No scrollTo method provided. This may be because you have two nested ' + 'VirtualizedLists with the same orientation, or because you are ' + 'using a custom component that does not implement scrollTo.');\n return;\n }\n this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {\n x: offset,\n animated\n } : {\n y: offset,\n animated\n });\n }\n recordInteraction() {\n this._nestedChildLists.forEach(childList => {\n childList.recordInteraction();\n });\n this._viewabilityTuples.forEach(t => {\n t.viewabilityHelper.recordInteraction();\n });\n this._updateViewableItems(this.props, this.state.cellsAroundViewport);\n }\n flashScrollIndicators() {\n if (this._scrollRef == null) {\n return;\n }\n this._scrollRef.flashScrollIndicators();\n }\n\n /**\n * Provides a handle to the underlying scroll responder.\n * Note that `this._scrollRef` might not be a `ScrollView`, so we\n * need to check that it responds to `getScrollResponder` before calling it.\n */\n getScrollResponder() {\n if (this._scrollRef && this._scrollRef.getScrollResponder) {\n return this._scrollRef.getScrollResponder();\n }\n }\n getScrollableNode() {\n if (this._scrollRef && this._scrollRef.getScrollableNode) {\n return this._scrollRef.getScrollableNode();\n } else {\n return this._scrollRef;\n }\n }\n getScrollRef() {\n if (this._scrollRef && this._scrollRef.getScrollRef) {\n return this._scrollRef.getScrollRef();\n } else {\n return this._scrollRef;\n }\n }\n _getCellKey() {\n var _this$context;\n return ((_this$context = this.context) == null ? void 0 : _this$context.cellKey) || 'rootList';\n }\n\n // $FlowFixMe[missing-local-annot]\n\n hasMore() {\n return this._hasMore;\n }\n\n // $FlowFixMe[missing-local-annot]\n\n constructor(_props) {\n var _this$props$updateCel;\n super(_props);\n this._getScrollMetrics = () => {\n return this._scrollMetrics;\n };\n this._getOutermostParentListRef = () => {\n if (this._isNestedWithSameOrientation()) {\n return this.context.getOutermostParentListRef();\n } else {\n return this;\n }\n };\n this._registerAsNestedChild = childList => {\n this._nestedChildLists.add(childList.ref, childList.cellKey);\n if (this._hasInteracted) {\n childList.ref.recordInteraction();\n }\n };\n this._unregisterAsNestedChild = childList => {\n this._nestedChildLists.remove(childList.ref);\n };\n this._onUpdateSeparators = (keys, newProps) => {\n keys.forEach(key => {\n var ref = key != null && this._cellRefs[key];\n ref && ref.updateSeparatorProps(newProps);\n });\n };\n this._getSpacerKey = isVertical => isVertical ? 'height' : 'width';\n this._averageCellLength = 0;\n this._cellRefs = {};\n this._frames = {};\n this._footerLength = 0;\n this._hasTriggeredInitialScrollToIndex = false;\n this._hasInteracted = false;\n this._hasMore = false;\n this._hasWarned = {};\n this._headerLength = 0;\n this._hiPriInProgress = false;\n this._highestMeasuredFrameIndex = 0;\n this._indicesToKeys = new Map();\n this._lastFocusedCellKey = null;\n this._nestedChildLists = new ChildListCollection();\n this._offsetFromParentVirtualizedList = 0;\n this._prevParentOffset = 0;\n this._scrollMetrics = {\n contentLength: 0,\n dOffset: 0,\n dt: 10,\n offset: 0,\n timestamp: 0,\n velocity: 0,\n visibleLength: 0,\n zoomScale: 1\n };\n this._scrollRef = null;\n this._sentStartForContentLength = 0;\n this._sentEndForContentLength = 0;\n this._totalCellLength = 0;\n this._totalCellsMeasured = 0;\n this._viewabilityTuples = [];\n this._captureScrollRef = ref => {\n this._scrollRef = ref;\n };\n this._defaultRenderScrollComponent = props => {\n var onRefresh = props.onRefresh;\n if (this._isNestedWithSameOrientation()) {\n // $FlowFixMe[prop-missing] - Typing ReactNativeComponent revealed errors\n return /*#__PURE__*/React.createElement(View, props);\n } else if (onRefresh) {\n var _props$refreshing;\n invariant(typeof props.refreshing === 'boolean', '`refreshing` prop must be set as a boolean in order to use `onRefresh`, but got `' + JSON.stringify((_props$refreshing = props.refreshing) !== null && _props$refreshing !== void 0 ? _props$refreshing : 'undefined') + '`');\n return (\n /*#__PURE__*/\n // $FlowFixMe[prop-missing] Invalid prop usage\n // $FlowFixMe[incompatible-use]\n React.createElement(ScrollView, _extends({}, props, {\n refreshControl: props.refreshControl == null ? /*#__PURE__*/React.createElement(RefreshControl\n // $FlowFixMe[incompatible-type]\n , {\n refreshing: props.refreshing,\n onRefresh: onRefresh,\n progressViewOffset: props.progressViewOffset\n }) : props.refreshControl\n }))\n );\n } else {\n // $FlowFixMe[prop-missing] Invalid prop usage\n // $FlowFixMe[incompatible-use]\n return /*#__PURE__*/React.createElement(ScrollView, props);\n }\n };\n this._onCellLayout = (e, cellKey, index) => {\n var layout = e.nativeEvent.layout;\n var next = {\n offset: this._selectOffset(layout),\n length: this._selectLength(layout),\n index,\n inLayout: true\n };\n var curr = this._frames[cellKey];\n if (!curr || next.offset !== curr.offset || next.length !== curr.length || index !== curr.index) {\n this._totalCellLength += next.length - (curr ? curr.length : 0);\n this._totalCellsMeasured += curr ? 0 : 1;\n this._averageCellLength = this._totalCellLength / this._totalCellsMeasured;\n this._frames[cellKey] = next;\n this._highestMeasuredFrameIndex = Math.max(this._highestMeasuredFrameIndex, index);\n this._scheduleCellsToRenderUpdate();\n } else {\n this._frames[cellKey].inLayout = true;\n }\n this._triggerRemeasureForChildListsInCell(cellKey);\n this._computeBlankness();\n this._updateViewableItems(this.props, this.state.cellsAroundViewport);\n };\n this._onCellUnmount = cellKey => {\n delete this._cellRefs[cellKey];\n var curr = this._frames[cellKey];\n if (curr) {\n this._frames[cellKey] = _objectSpread(_objectSpread({}, curr), {}, {\n inLayout: false\n });\n }\n };\n this._onLayout = e => {\n if (this._isNestedWithSameOrientation()) {\n // Need to adjust our scroll metrics to be relative to our containing\n // VirtualizedList before we can make claims about list item viewability\n this.measureLayoutRelativeToContainingList();\n } else {\n this._scrollMetrics.visibleLength = this._selectLength(e.nativeEvent.layout);\n }\n this.props.onLayout && this.props.onLayout(e);\n this._scheduleCellsToRenderUpdate();\n this._maybeCallOnEdgeReached();\n };\n this._onLayoutEmpty = e => {\n this.props.onLayout && this.props.onLayout(e);\n };\n this._onLayoutFooter = e => {\n this._triggerRemeasureForChildListsInCell(this._getFooterCellKey());\n this._footerLength = this._selectLength(e.nativeEvent.layout);\n };\n this._onLayoutHeader = e => {\n this._headerLength = this._selectLength(e.nativeEvent.layout);\n };\n this._onContentSizeChange = (width, height) => {\n if (width > 0 && height > 0 && this.props.initialScrollIndex != null && this.props.initialScrollIndex > 0 && !this._hasTriggeredInitialScrollToIndex) {\n if (this.props.contentOffset == null) {\n if (this.props.initialScrollIndex < this.props.getItemCount(this.props.data)) {\n this.scrollToIndex({\n animated: false,\n index: nullthrows(this.props.initialScrollIndex)\n });\n } else {\n this.scrollToEnd({\n animated: false\n });\n }\n }\n this._hasTriggeredInitialScrollToIndex = true;\n }\n if (this.props.onContentSizeChange) {\n this.props.onContentSizeChange(width, height);\n }\n this._scrollMetrics.contentLength = this._selectLength({\n height,\n width\n });\n this._scheduleCellsToRenderUpdate();\n this._maybeCallOnEdgeReached();\n };\n this._convertParentScrollMetrics = metrics => {\n // Offset of the top of the nested list relative to the top of its parent's viewport\n var offset = metrics.offset - this._offsetFromParentVirtualizedList;\n // Child's visible length is the same as its parent's\n var visibleLength = metrics.visibleLength;\n var dOffset = offset - this._scrollMetrics.offset;\n var contentLength = this._scrollMetrics.contentLength;\n return {\n visibleLength,\n contentLength,\n offset,\n dOffset\n };\n };\n this._onScroll = e => {\n this._nestedChildLists.forEach(childList => {\n childList._onScroll(e);\n });\n if (this.props.onScroll) {\n this.props.onScroll(e);\n }\n var timestamp = e.timeStamp;\n var visibleLength = this._selectLength(e.nativeEvent.layoutMeasurement);\n var contentLength = this._selectLength(e.nativeEvent.contentSize);\n var offset = this._selectOffset(e.nativeEvent.contentOffset);\n var dOffset = offset - this._scrollMetrics.offset;\n if (this._isNestedWithSameOrientation()) {\n if (this._scrollMetrics.contentLength === 0) {\n // Ignore scroll events until onLayout has been called and we\n // know our offset from our offset from our parent\n return;\n }\n var _this$_convertParentS = this._convertParentScrollMetrics({\n visibleLength,\n offset\n });\n visibleLength = _this$_convertParentS.visibleLength;\n contentLength = _this$_convertParentS.contentLength;\n offset = _this$_convertParentS.offset;\n dOffset = _this$_convertParentS.dOffset;\n }\n var dt = this._scrollMetrics.timestamp ? Math.max(1, timestamp - this._scrollMetrics.timestamp) : 1;\n var velocity = dOffset / dt;\n if (dt > 500 && this._scrollMetrics.dt > 500 && contentLength > 5 * visibleLength && !this._hasWarned.perf) {\n infoLog('VirtualizedList: You have a large list that is slow to update - make sure your ' + 'renderItem function renders components that follow React performance best practices ' + 'like PureComponent, shouldComponentUpdate, etc.', {\n dt,\n prevDt: this._scrollMetrics.dt,\n contentLength\n });\n this._hasWarned.perf = true;\n }\n\n // For invalid negative values (w/ RTL), set this to 1.\n var zoomScale = e.nativeEvent.zoomScale < 0 ? 1 : e.nativeEvent.zoomScale;\n this._scrollMetrics = {\n contentLength,\n dt,\n dOffset,\n offset,\n timestamp,\n velocity,\n visibleLength,\n zoomScale\n };\n this._updateViewableItems(this.props, this.state.cellsAroundViewport);\n if (!this.props) {\n return;\n }\n this._maybeCallOnEdgeReached();\n if (velocity !== 0) {\n this._fillRateHelper.activate();\n }\n this._computeBlankness();\n this._scheduleCellsToRenderUpdate();\n };\n this._onScrollBeginDrag = e => {\n this._nestedChildLists.forEach(childList => {\n childList._onScrollBeginDrag(e);\n });\n this._viewabilityTuples.forEach(tuple => {\n tuple.viewabilityHelper.recordInteraction();\n });\n this._hasInteracted = true;\n this.props.onScrollBeginDrag && this.props.onScrollBeginDrag(e);\n };\n this._onScrollEndDrag = e => {\n this._nestedChildLists.forEach(childList => {\n childList._onScrollEndDrag(e);\n });\n var velocity = e.nativeEvent.velocity;\n if (velocity) {\n this._scrollMetrics.velocity = this._selectOffset(velocity);\n }\n this._computeBlankness();\n this.props.onScrollEndDrag && this.props.onScrollEndDrag(e);\n };\n this._onMomentumScrollBegin = e => {\n this._nestedChildLists.forEach(childList => {\n childList._onMomentumScrollBegin(e);\n });\n this.props.onMomentumScrollBegin && this.props.onMomentumScrollBegin(e);\n };\n this._onMomentumScrollEnd = e => {\n this._nestedChildLists.forEach(childList => {\n childList._onMomentumScrollEnd(e);\n });\n this._scrollMetrics.velocity = 0;\n this._computeBlankness();\n this.props.onMomentumScrollEnd && this.props.onMomentumScrollEnd(e);\n };\n this._updateCellsToRender = () => {\n this._updateViewableItems(this.props, this.state.cellsAroundViewport);\n this.setState((state, props) => {\n var cellsAroundViewport = this._adjustCellsAroundViewport(props, state.cellsAroundViewport);\n var renderMask = VirtualizedList._createRenderMask(props, cellsAroundViewport, this._getNonViewportRenderRegions(props));\n if (cellsAroundViewport.first === state.cellsAroundViewport.first && cellsAroundViewport.last === state.cellsAroundViewport.last && renderMask.equals(state.renderMask)) {\n return null;\n }\n return {\n cellsAroundViewport,\n renderMask\n };\n });\n };\n this._createViewToken = (index, isViewable, props\n // $FlowFixMe[missing-local-annot]\n ) => {\n var data = props.data,\n getItem = props.getItem;\n var item = getItem(data, index);\n return {\n index,\n item,\n key: this._keyExtractor(item, index, props),\n isViewable\n };\n };\n this._getOffsetApprox = (index, props) => {\n if (Number.isInteger(index)) {\n return this.__getFrameMetricsApprox(index, props).offset;\n } else {\n var frameMetrics = this.__getFrameMetricsApprox(Math.floor(index), props);\n var remainder = index - Math.floor(index);\n return frameMetrics.offset + remainder * frameMetrics.length;\n }\n };\n this.__getFrameMetricsApprox = (index, props) => {\n var frame = this._getFrameMetrics(index, props);\n if (frame && frame.index === index) {\n // check for invalid frames due to row re-ordering\n return frame;\n } else {\n var data = props.data,\n getItemCount = props.getItemCount,\n getItemLayout = props.getItemLayout;\n invariant(index >= 0 && index < getItemCount(data), 'Tried to get frame for out of range index ' + index);\n invariant(!getItemLayout, 'Should not have to estimate frames when a measurement metrics function is provided');\n return {\n length: this._averageCellLength,\n offset: this._averageCellLength * index\n };\n }\n };\n this._getFrameMetrics = (index, props) => {\n var data = props.data,\n getItem = props.getItem,\n getItemCount = props.getItemCount,\n getItemLayout = props.getItemLayout;\n invariant(index >= 0 && index < getItemCount(data), 'Tried to get frame for out of range index ' + index);\n var item = getItem(data, index);\n var frame = this._frames[this._keyExtractor(item, index, props)];\n if (!frame || frame.index !== index) {\n if (getItemLayout) {\n /* $FlowFixMe[prop-missing] (>=0.63.0 site=react_native_fb) This comment\n * suppresses an error found when Flow v0.63 was deployed. To see the error\n * delete this comment and run Flow. */\n return getItemLayout(data, index);\n }\n }\n return frame;\n };\n this._getNonViewportRenderRegions = props => {\n // Keep a viewport's worth of content around the last focused cell to allow\n // random navigation around it without any blanking. E.g. tabbing from one\n // focused item out of viewport to another.\n if (!(this._lastFocusedCellKey && this._cellRefs[this._lastFocusedCellKey])) {\n return [];\n }\n var lastFocusedCellRenderer = this._cellRefs[this._lastFocusedCellKey];\n var focusedCellIndex = lastFocusedCellRenderer.props.index;\n var itemCount = props.getItemCount(props.data);\n\n // The last cell we rendered may be at a new index. Bail if we don't know\n // where it is.\n if (focusedCellIndex >= itemCount || this._keyExtractor(props.getItem(props.data, focusedCellIndex), focusedCellIndex, props) !== this._lastFocusedCellKey) {\n return [];\n }\n var first = focusedCellIndex;\n var heightOfCellsBeforeFocused = 0;\n for (var i = first - 1; i >= 0 && heightOfCellsBeforeFocused < this._scrollMetrics.visibleLength; i--) {\n first--;\n heightOfCellsBeforeFocused += this.__getFrameMetricsApprox(i, props).length;\n }\n var last = focusedCellIndex;\n var heightOfCellsAfterFocused = 0;\n for (var _i = last + 1; _i < itemCount && heightOfCellsAfterFocused < this._scrollMetrics.visibleLength; _i++) {\n last++;\n heightOfCellsAfterFocused += this.__getFrameMetricsApprox(_i, props).length;\n }\n return [{\n first,\n last\n }];\n };\n this._checkProps(_props);\n this._fillRateHelper = new FillRateHelper(this._getFrameMetrics);\n this._updateCellsToRenderBatcher = new Batchinator(this._updateCellsToRender, (_this$props$updateCel = this.props.updateCellsBatchingPeriod) !== null && _this$props$updateCel !== void 0 ? _this$props$updateCel : 50);\n if (this.props.viewabilityConfigCallbackPairs) {\n this._viewabilityTuples = this.props.viewabilityConfigCallbackPairs.map(pair => ({\n viewabilityHelper: new ViewabilityHelper(pair.viewabilityConfig),\n onViewableItemsChanged: pair.onViewableItemsChanged\n }));\n } else {\n var _this$props3 = this.props,\n onViewableItemsChanged = _this$props3.onViewableItemsChanged,\n viewabilityConfig = _this$props3.viewabilityConfig;\n if (onViewableItemsChanged) {\n this._viewabilityTuples.push({\n viewabilityHelper: new ViewabilityHelper(viewabilityConfig),\n onViewableItemsChanged: onViewableItemsChanged\n });\n }\n }\n var initialRenderRegion = VirtualizedList._initialRenderRegion(_props);\n this.state = {\n cellsAroundViewport: initialRenderRegion,\n renderMask: VirtualizedList._createRenderMask(_props, initialRenderRegion)\n };\n\n // REACT-NATIVE-WEB patch to preserve during future RN merges: Support inverted wheel scroller.\n // For issue https://github.com/necolas/react-native-web/issues/995\n this.invertedWheelEventHandler = ev => {\n var scrollOffset = this.props.horizontal ? ev.target.scrollLeft : ev.target.scrollTop;\n var scrollLength = this.props.horizontal ? ev.target.scrollWidth : ev.target.scrollHeight;\n var clientLength = this.props.horizontal ? ev.target.clientWidth : ev.target.clientHeight;\n var isEventTargetScrollable = scrollLength > clientLength;\n var delta = this.props.horizontal ? ev.deltaX || ev.wheelDeltaX : ev.deltaY || ev.wheelDeltaY;\n var leftoverDelta = delta;\n if (isEventTargetScrollable) {\n leftoverDelta = delta < 0 ? Math.min(delta + scrollOffset, 0) : Math.max(delta - (scrollLength - clientLength - scrollOffset), 0);\n }\n var targetDelta = delta - leftoverDelta;\n if (this.props.inverted && this._scrollRef && this._scrollRef.getScrollableNode) {\n var node = this._scrollRef.getScrollableNode();\n if (this.props.horizontal) {\n ev.target.scrollLeft += targetDelta;\n var nextScrollLeft = node.scrollLeft - leftoverDelta;\n node.scrollLeft = !this.props.getItemLayout ? Math.min(nextScrollLeft, this._totalCellLength) : nextScrollLeft;\n } else {\n ev.target.scrollTop += targetDelta;\n var nextScrollTop = node.scrollTop - leftoverDelta;\n node.scrollTop = !this.props.getItemLayout ? Math.min(nextScrollTop, this._totalCellLength) : nextScrollTop;\n }\n ev.preventDefault();\n }\n };\n }\n _checkProps(props) {\n var onScroll = props.onScroll,\n windowSize = props.windowSize,\n getItemCount = props.getItemCount,\n data = props.data,\n initialScrollIndex = props.initialScrollIndex;\n invariant(\n // $FlowFixMe[prop-missing]\n !onScroll || !onScroll.__isNative, 'Components based on VirtualizedList must be wrapped with Animated.createAnimatedComponent ' + 'to support native onScroll events with useNativeDriver');\n invariant(windowSizeOrDefault(windowSize) > 0, 'VirtualizedList: The windowSize prop must be present and set to a value greater than 0.');\n invariant(getItemCount, 'VirtualizedList: The \"getItemCount\" prop must be provided');\n var itemCount = getItemCount(data);\n if (initialScrollIndex != null && !this._hasTriggeredInitialScrollToIndex && (initialScrollIndex < 0 || itemCount > 0 && initialScrollIndex >= itemCount) && !this._hasWarned.initialScrollIndex) {\n console.warn(\"initialScrollIndex \\\"\" + initialScrollIndex + \"\\\" is not valid (list has \" + itemCount + \" items)\");\n this._hasWarned.initialScrollIndex = true;\n }\n if (__DEV__ && !this._hasWarned.flexWrap) {\n // $FlowFixMe[underconstrained-implicit-instantiation]\n var flatStyles = StyleSheet.flatten(this.props.contentContainerStyle);\n if (flatStyles != null && flatStyles.flexWrap === 'wrap') {\n console.warn('`flexWrap: `wrap`` is not supported with the `VirtualizedList` components.' + 'Consider using `numColumns` with `FlatList` instead.');\n this._hasWarned.flexWrap = true;\n }\n }\n }\n static _createRenderMask(props, cellsAroundViewport, additionalRegions) {\n var itemCount = props.getItemCount(props.data);\n invariant(cellsAroundViewport.first >= 0 && cellsAroundViewport.last >= cellsAroundViewport.first - 1 && cellsAroundViewport.last < itemCount, \"Invalid cells around viewport \\\"[\" + cellsAroundViewport.first + \", \" + cellsAroundViewport.last + \"]\\\" was passed to VirtualizedList._createRenderMask\");\n var renderMask = new CellRenderMask(itemCount);\n if (itemCount > 0) {\n var allRegions = [cellsAroundViewport, ...(additionalRegions !== null && additionalRegions !== void 0 ? additionalRegions : [])];\n for (var _i2 = 0, _allRegions = allRegions; _i2 < _allRegions.length; _i2++) {\n var region = _allRegions[_i2];\n renderMask.addCells(region);\n }\n\n // The initially rendered cells are retained as part of the\n // \"scroll-to-top\" optimization\n if (props.initialScrollIndex == null || props.initialScrollIndex <= 0) {\n var initialRegion = VirtualizedList._initialRenderRegion(props);\n renderMask.addCells(initialRegion);\n }\n\n // The layout coordinates of sticker headers may be off-screen while the\n // actual header is on-screen. Keep the most recent before the viewport\n // rendered, even if its layout coordinates are not in viewport.\n var stickyIndicesSet = new Set(props.stickyHeaderIndices);\n VirtualizedList._ensureClosestStickyHeader(props, stickyIndicesSet, renderMask, cellsAroundViewport.first);\n }\n return renderMask;\n }\n static _initialRenderRegion(props) {\n var _props$initialScrollI;\n var itemCount = props.getItemCount(props.data);\n var firstCellIndex = Math.max(0, Math.min(itemCount - 1, Math.floor((_props$initialScrollI = props.initialScrollIndex) !== null && _props$initialScrollI !== void 0 ? _props$initialScrollI : 0)));\n var lastCellIndex = Math.min(itemCount, firstCellIndex + initialNumToRenderOrDefault(props.initialNumToRender)) - 1;\n return {\n first: firstCellIndex,\n last: lastCellIndex\n };\n }\n static _ensureClosestStickyHeader(props, stickyIndicesSet, renderMask, cellIdx) {\n var stickyOffset = props.ListHeaderComponent ? 1 : 0;\n for (var itemIdx = cellIdx - 1; itemIdx >= 0; itemIdx--) {\n if (stickyIndicesSet.has(itemIdx + stickyOffset)) {\n renderMask.addCells({\n first: itemIdx,\n last: itemIdx\n });\n break;\n }\n }\n }\n _adjustCellsAroundViewport(props, cellsAroundViewport) {\n var data = props.data,\n getItemCount = props.getItemCount;\n var onEndReachedThreshold = onEndReachedThresholdOrDefault(props.onEndReachedThreshold);\n var _this$_scrollMetrics = this._scrollMetrics,\n contentLength = _this$_scrollMetrics.contentLength,\n offset = _this$_scrollMetrics.offset,\n visibleLength = _this$_scrollMetrics.visibleLength;\n var distanceFromEnd = contentLength - visibleLength - offset;\n\n // Wait until the scroll view metrics have been set up. And until then,\n // we will trust the initialNumToRender suggestion\n if (visibleLength <= 0 || contentLength <= 0) {\n return cellsAroundViewport.last >= getItemCount(data) ? VirtualizedList._constrainToItemCount(cellsAroundViewport, props) : cellsAroundViewport;\n }\n var newCellsAroundViewport;\n if (props.disableVirtualization) {\n var renderAhead = distanceFromEnd < onEndReachedThreshold * visibleLength ? maxToRenderPerBatchOrDefault(props.maxToRenderPerBatch) : 0;\n newCellsAroundViewport = {\n first: 0,\n last: Math.min(cellsAroundViewport.last + renderAhead, getItemCount(data) - 1)\n };\n } else {\n // If we have a non-zero initialScrollIndex and run this before we've scrolled,\n // we'll wipe out the initialNumToRender rendered elements starting at initialScrollIndex.\n // So let's wait until we've scrolled the view to the right place. And until then,\n // we will trust the initialScrollIndex suggestion.\n\n // Thus, we want to recalculate the windowed render limits if any of the following hold:\n // - initialScrollIndex is undefined or is 0\n // - initialScrollIndex > 0 AND scrolling is complete\n // - initialScrollIndex > 0 AND the end of the list is visible (this handles the case\n // where the list is shorter than the visible area)\n if (props.initialScrollIndex && !this._scrollMetrics.offset && Math.abs(distanceFromEnd) >= Number.EPSILON) {\n return cellsAroundViewport.last >= getItemCount(data) ? VirtualizedList._constrainToItemCount(cellsAroundViewport, props) : cellsAroundViewport;\n }\n newCellsAroundViewport = computeWindowedRenderLimits(props, maxToRenderPerBatchOrDefault(props.maxToRenderPerBatch), windowSizeOrDefault(props.windowSize), cellsAroundViewport, this.__getFrameMetricsApprox, this._scrollMetrics);\n invariant(newCellsAroundViewport.last < getItemCount(data), 'computeWindowedRenderLimits() should return range in-bounds');\n }\n if (this._nestedChildLists.size() > 0) {\n // If some cell in the new state has a child list in it, we should only render\n // up through that item, so that we give that list a chance to render.\n // Otherwise there's churn from multiple child lists mounting and un-mounting\n // their items.\n\n // Will this prevent rendering if the nested list doesn't realize the end?\n var childIdx = this._findFirstChildWithMore(newCellsAroundViewport.first, newCellsAroundViewport.last);\n newCellsAroundViewport.last = childIdx !== null && childIdx !== void 0 ? childIdx : newCellsAroundViewport.last;\n }\n return newCellsAroundViewport;\n }\n _findFirstChildWithMore(first, last) {\n for (var ii = first; ii <= last; ii++) {\n var cellKeyForIndex = this._indicesToKeys.get(ii);\n if (cellKeyForIndex != null && this._nestedChildLists.anyInCell(cellKeyForIndex, childList => childList.hasMore())) {\n return ii;\n }\n }\n return null;\n }\n componentDidMount() {\n if (this._isNestedWithSameOrientation()) {\n this.context.registerAsNestedChild({\n ref: this,\n cellKey: this.context.cellKey\n });\n }\n\n // REACT-NATIVE-WEB patch to preserve during future RN merges: Support inverted wheel scroller.\n this.setupWebWheelHandler();\n }\n componentWillUnmount() {\n if (this._isNestedWithSameOrientation()) {\n this.context.unregisterAsNestedChild({\n ref: this\n });\n }\n this._updateCellsToRenderBatcher.dispose({\n abort: true\n });\n this._viewabilityTuples.forEach(tuple => {\n tuple.viewabilityHelper.dispose();\n });\n this._fillRateHelper.deactivateAndFlush();\n\n // REACT-NATIVE-WEB patch to preserve during future RN merges: Support inverted wheel scroller.\n this.teardownWebWheelHandler();\n }\n\n // REACT-NATIVE-WEB patch to preserve during future RN merges: Support inverted wheel scroller.\n setupWebWheelHandler() {\n if (this._scrollRef && this._scrollRef.getScrollableNode) {\n this._scrollRef.getScrollableNode().addEventListener('wheel', this.invertedWheelEventHandler, {\n passive: true\n });\n } else {\n setTimeout(() => this.setupWebWheelHandler(), 50);\n return;\n }\n }\n\n // REACT-NATIVE-WEB patch to preserve during future RN merges: Support inverted wheel scroller.\n teardownWebWheelHandler() {\n if (this._scrollRef && this._scrollRef.getScrollableNode) {\n this._scrollRef.getScrollableNode().removeEventListener('wheel', this.invertedWheelEventHandler);\n }\n }\n static getDerivedStateFromProps(newProps, prevState) {\n // first and last could be stale (e.g. if a new, shorter items props is passed in), so we make\n // sure we're rendering a reasonable range here.\n var itemCount = newProps.getItemCount(newProps.data);\n if (itemCount === prevState.renderMask.numCells()) {\n return prevState;\n }\n var constrainedCells = VirtualizedList._constrainToItemCount(prevState.cellsAroundViewport, newProps);\n return {\n cellsAroundViewport: constrainedCells,\n renderMask: VirtualizedList._createRenderMask(newProps, constrainedCells)\n };\n }\n _pushCells(cells, stickyHeaderIndices, stickyIndicesFromProps, first, last, inversionStyle) {\n var _this = this;\n var _this$props4 = this.props,\n CellRendererComponent = _this$props4.CellRendererComponent,\n ItemSeparatorComponent = _this$props4.ItemSeparatorComponent,\n ListHeaderComponent = _this$props4.ListHeaderComponent,\n ListItemComponent = _this$props4.ListItemComponent,\n data = _this$props4.data,\n debug = _this$props4.debug,\n getItem = _this$props4.getItem,\n getItemCount = _this$props4.getItemCount,\n getItemLayout = _this$props4.getItemLayout,\n horizontal = _this$props4.horizontal,\n renderItem = _this$props4.renderItem;\n var stickyOffset = ListHeaderComponent ? 1 : 0;\n var end = getItemCount(data) - 1;\n var prevCellKey;\n last = Math.min(end, last);\n var _loop = function _loop() {\n var item = getItem(data, ii);\n var key = _this._keyExtractor(item, ii, _this.props);\n _this._indicesToKeys.set(ii, key);\n if (stickyIndicesFromProps.has(ii + stickyOffset)) {\n stickyHeaderIndices.push(cells.length);\n }\n var shouldListenForLayout = getItemLayout == null || debug || _this._fillRateHelper.enabled();\n cells.push( /*#__PURE__*/React.createElement(CellRenderer, _extends({\n CellRendererComponent: CellRendererComponent,\n ItemSeparatorComponent: ii < end ? ItemSeparatorComponent : undefined,\n ListItemComponent: ListItemComponent,\n cellKey: key,\n horizontal: horizontal,\n index: ii,\n inversionStyle: inversionStyle,\n item: item,\n key: key,\n prevCellKey: prevCellKey,\n onUpdateSeparators: _this._onUpdateSeparators,\n onCellFocusCapture: e => _this._onCellFocusCapture(key),\n onUnmount: _this._onCellUnmount,\n ref: _ref => {\n _this._cellRefs[key] = _ref;\n },\n renderItem: renderItem\n }, shouldListenForLayout && {\n onCellLayout: _this._onCellLayout\n })));\n prevCellKey = key;\n };\n for (var ii = first; ii <= last; ii++) {\n _loop();\n }\n }\n static _constrainToItemCount(cells, props) {\n var itemCount = props.getItemCount(props.data);\n var last = Math.min(itemCount - 1, cells.last);\n var maxToRenderPerBatch = maxToRenderPerBatchOrDefault(props.maxToRenderPerBatch);\n return {\n first: clamp(0, itemCount - 1 - maxToRenderPerBatch, cells.first),\n last\n };\n }\n _isNestedWithSameOrientation() {\n var nestedContext = this.context;\n return !!(nestedContext && !!nestedContext.horizontal === horizontalOrDefault(this.props.horizontal));\n }\n _keyExtractor(item, index, props\n // $FlowFixMe[missing-local-annot]\n ) {\n if (props.keyExtractor != null) {\n return props.keyExtractor(item, index);\n }\n var key = defaultKeyExtractor(item, index);\n if (key === String(index)) {\n _usedIndexForKey = true;\n if (item.type && item.type.displayName) {\n _keylessItemComponentName = item.type.displayName;\n }\n }\n return key;\n }\n render() {\n this._checkProps(this.props);\n var _this$props5 = this.props,\n ListEmptyComponent = _this$props5.ListEmptyComponent,\n ListFooterComponent = _this$props5.ListFooterComponent,\n ListHeaderComponent = _this$props5.ListHeaderComponent;\n var _this$props6 = this.props,\n data = _this$props6.data,\n horizontal = _this$props6.horizontal;\n var inversionStyle = this.props.inverted ? horizontalOrDefault(this.props.horizontal) ? styles.horizontallyInverted : styles.verticallyInverted : null;\n var cells = [];\n var stickyIndicesFromProps = new Set(this.props.stickyHeaderIndices);\n var stickyHeaderIndices = [];\n\n // 1. Add cell for ListHeaderComponent\n if (ListHeaderComponent) {\n if (stickyIndicesFromProps.has(0)) {\n stickyHeaderIndices.push(0);\n }\n var _element = /*#__PURE__*/React.isValidElement(ListHeaderComponent) ? ListHeaderComponent :\n /*#__PURE__*/\n // $FlowFixMe[not-a-component]\n // $FlowFixMe[incompatible-type-arg]\n React.createElement(ListHeaderComponent, null);\n cells.push( /*#__PURE__*/React.createElement(VirtualizedListCellContextProvider, {\n cellKey: this._getCellKey() + '-header',\n key: \"$header\"\n }, /*#__PURE__*/React.createElement(View, {\n onLayout: this._onLayoutHeader,\n style: [inversionStyle, this.props.ListHeaderComponentStyle]\n },\n // $FlowFixMe[incompatible-type] - Typing ReactNativeComponent revealed errors\n _element)));\n }\n\n // 2a. Add a cell for ListEmptyComponent if applicable\n var itemCount = this.props.getItemCount(data);\n if (itemCount === 0 && ListEmptyComponent) {\n var _element2 = /*#__PURE__*/React.isValidElement(ListEmptyComponent) ? ListEmptyComponent :\n /*#__PURE__*/\n // $FlowFixMe[not-a-component]\n // $FlowFixMe[incompatible-type-arg]\n React.createElement(ListEmptyComponent, null);\n cells.push( /*#__PURE__*/React.createElement(VirtualizedListCellContextProvider, {\n cellKey: this._getCellKey() + '-empty',\n key: \"$empty\"\n }, /*#__PURE__*/React.cloneElement(_element2, {\n onLayout: event => {\n this._onLayoutEmpty(event);\n if (_element2.props.onLayout) {\n _element2.props.onLayout(event);\n }\n },\n style: [inversionStyle, _element2.props.style]\n })));\n }\n\n // 2b. Add cells and spacers for each item\n if (itemCount > 0) {\n _usedIndexForKey = false;\n _keylessItemComponentName = '';\n var spacerKey = this._getSpacerKey(!horizontal);\n var renderRegions = this.state.renderMask.enumerateRegions();\n var lastSpacer = findLastWhere(renderRegions, r => r.isSpacer);\n for (var _iterator = _createForOfIteratorHelperLoose(renderRegions), _step; !(_step = _iterator()).done;) {\n var section = _step.value;\n if (section.isSpacer) {\n // Legacy behavior is to avoid spacers when virtualization is\n // disabled (including head spacers on initial render).\n if (this.props.disableVirtualization) {\n continue;\n }\n\n // Without getItemLayout, we limit our tail spacer to the _highestMeasuredFrameIndex to\n // prevent the user for hyperscrolling into un-measured area because otherwise content will\n // likely jump around as it renders in above the viewport.\n var isLastSpacer = section === lastSpacer;\n var constrainToMeasured = isLastSpacer && !this.props.getItemLayout;\n var last = constrainToMeasured ? clamp(section.first - 1, section.last, this._highestMeasuredFrameIndex) : section.last;\n var firstMetrics = this.__getFrameMetricsApprox(section.first, this.props);\n var lastMetrics = this.__getFrameMetricsApprox(last, this.props);\n var spacerSize = lastMetrics.offset + lastMetrics.length - firstMetrics.offset;\n cells.push( /*#__PURE__*/React.createElement(View, {\n key: \"$spacer-\" + section.first,\n style: {\n [spacerKey]: spacerSize\n }\n }));\n } else {\n this._pushCells(cells, stickyHeaderIndices, stickyIndicesFromProps, section.first, section.last, inversionStyle);\n }\n }\n if (!this._hasWarned.keys && _usedIndexForKey) {\n console.warn('VirtualizedList: missing keys for items, make sure to specify a key or id property on each ' + 'item or provide a custom keyExtractor.', _keylessItemComponentName);\n this._hasWarned.keys = true;\n }\n }\n\n // 3. Add cell for ListFooterComponent\n if (ListFooterComponent) {\n var _element3 = /*#__PURE__*/React.isValidElement(ListFooterComponent) ? ListFooterComponent :\n /*#__PURE__*/\n // $FlowFixMe[not-a-component]\n // $FlowFixMe[incompatible-type-arg]\n React.createElement(ListFooterComponent, null);\n cells.push( /*#__PURE__*/React.createElement(VirtualizedListCellContextProvider, {\n cellKey: this._getFooterCellKey(),\n key: \"$footer\"\n }, /*#__PURE__*/React.createElement(View, {\n onLayout: this._onLayoutFooter,\n style: [inversionStyle, this.props.ListFooterComponentStyle]\n },\n // $FlowFixMe[incompatible-type] - Typing ReactNativeComponent revealed errors\n _element3)));\n }\n\n // 4. Render the ScrollView\n var scrollProps = _objectSpread(_objectSpread({}, this.props), {}, {\n onContentSizeChange: this._onContentSizeChange,\n onLayout: this._onLayout,\n onScroll: this._onScroll,\n onScrollBeginDrag: this._onScrollBeginDrag,\n onScrollEndDrag: this._onScrollEndDrag,\n onMomentumScrollBegin: this._onMomentumScrollBegin,\n onMomentumScrollEnd: this._onMomentumScrollEnd,\n scrollEventThrottle: scrollEventThrottleOrDefault(this.props.scrollEventThrottle),\n // TODO: Android support\n invertStickyHeaders: this.props.invertStickyHeaders !== undefined ? this.props.invertStickyHeaders : this.props.inverted,\n stickyHeaderIndices,\n style: inversionStyle ? [inversionStyle, this.props.style] : this.props.style\n });\n this._hasMore = this.state.cellsAroundViewport.last < itemCount - 1;\n var innerRet = /*#__PURE__*/React.createElement(VirtualizedListContextProvider, {\n value: {\n cellKey: null,\n getScrollMetrics: this._getScrollMetrics,\n horizontal: horizontalOrDefault(this.props.horizontal),\n getOutermostParentListRef: this._getOutermostParentListRef,\n registerAsNestedChild: this._registerAsNestedChild,\n unregisterAsNestedChild: this._unregisterAsNestedChild\n }\n }, /*#__PURE__*/React.cloneElement((this.props.renderScrollComponent || this._defaultRenderScrollComponent)(scrollProps), {\n ref: this._captureScrollRef\n }, cells));\n var ret = innerRet;\n /* https://github.com/necolas/react-native-web/issues/2239: Re-enable when ScrollView.Context.Consumer is available.\n if (__DEV__) {\n ret = (\n \n {scrollContext => {\n if (\n scrollContext != null &&\n !scrollContext.horizontal ===\n !horizontalOrDefault(this.props.horizontal) &&\n !this._hasWarned.nesting &&\n this.context == null &&\n this.props.scrollEnabled !== false\n ) {\n // TODO (T46547044): use React.warn once 16.9 is sync'd: https://github.com/facebook/react/pull/15170\n console.error(\n 'VirtualizedLists should never be nested inside plain ScrollViews with the same ' +\n 'orientation because it can break windowing and other functionality - use another ' +\n 'VirtualizedList-backed container instead.',\n );\n this._hasWarned.nesting = true;\n }\n return innerRet;\n }}\n \n );\n }*/\n if (this.props.debug) {\n return /*#__PURE__*/React.createElement(View, {\n style: styles.debug\n }, ret, this._renderDebugOverlay());\n } else {\n return ret;\n }\n }\n componentDidUpdate(prevProps) {\n var _this$props7 = this.props,\n data = _this$props7.data,\n extraData = _this$props7.extraData;\n if (data !== prevProps.data || extraData !== prevProps.extraData) {\n // clear the viewableIndices cache to also trigger\n // the onViewableItemsChanged callback with the new data\n this._viewabilityTuples.forEach(tuple => {\n tuple.viewabilityHelper.resetViewableIndices();\n });\n }\n // The `this._hiPriInProgress` is guaranteeing a hiPri cell update will only happen\n // once per fiber update. The `_scheduleCellsToRenderUpdate` will set it to true\n // if a hiPri update needs to perform. If `componentDidUpdate` is triggered with\n // `this._hiPriInProgress=true`, means it's triggered by the hiPri update. The\n // `_scheduleCellsToRenderUpdate` will check this condition and not perform\n // another hiPri update.\n var hiPriInProgress = this._hiPriInProgress;\n this._scheduleCellsToRenderUpdate();\n // Make sure setting `this._hiPriInProgress` back to false after `componentDidUpdate`\n // is triggered with `this._hiPriInProgress = true`\n if (hiPriInProgress) {\n this._hiPriInProgress = false;\n }\n }\n _computeBlankness() {\n this._fillRateHelper.computeBlankness(this.props, this.state.cellsAroundViewport, this._scrollMetrics);\n }\n\n /* $FlowFixMe[missing-local-annot] The type annotation(s) required by Flow's\n * LTI update could not be added via codemod */\n\n _onCellFocusCapture(cellKey) {\n this._lastFocusedCellKey = cellKey;\n this._updateCellsToRender();\n }\n _triggerRemeasureForChildListsInCell(cellKey) {\n this._nestedChildLists.forEachInCell(cellKey, childList => {\n childList.measureLayoutRelativeToContainingList();\n });\n }\n measureLayoutRelativeToContainingList() {\n // TODO (T35574538): findNodeHandle sometimes crashes with \"Unable to find\n // node on an unmounted component\" during scrolling\n try {\n if (!this._scrollRef) {\n return;\n }\n // We are assuming that getOutermostParentListRef().getScrollRef()\n // is a non-null reference to a ScrollView\n this._scrollRef.measureLayout(this.context.getOutermostParentListRef().getScrollRef(), (x, y, width, height) => {\n this._offsetFromParentVirtualizedList = this._selectOffset({\n x,\n y\n });\n this._scrollMetrics.contentLength = this._selectLength({\n width,\n height\n });\n var scrollMetrics = this._convertParentScrollMetrics(this.context.getScrollMetrics());\n var metricsChanged = this._scrollMetrics.visibleLength !== scrollMetrics.visibleLength || this._scrollMetrics.offset !== scrollMetrics.offset;\n if (metricsChanged) {\n this._scrollMetrics.visibleLength = scrollMetrics.visibleLength;\n this._scrollMetrics.offset = scrollMetrics.offset;\n\n // If metrics of the scrollView changed, then we triggered remeasure for child list\n // to ensure VirtualizedList has the right information.\n this._nestedChildLists.forEach(childList => {\n childList.measureLayoutRelativeToContainingList();\n });\n }\n }, error => {\n console.warn(\"VirtualizedList: Encountered an error while measuring a list's\" + ' offset from its containing VirtualizedList.');\n });\n } catch (error) {\n console.warn('measureLayoutRelativeToContainingList threw an error', error.stack);\n }\n }\n _getFooterCellKey() {\n return this._getCellKey() + '-footer';\n }\n // $FlowFixMe[missing-local-annot]\n _renderDebugOverlay() {\n var normalize = this._scrollMetrics.visibleLength / (this._scrollMetrics.contentLength || 1);\n var framesInLayout = [];\n var itemCount = this.props.getItemCount(this.props.data);\n for (var ii = 0; ii < itemCount; ii++) {\n var frame = this.__getFrameMetricsApprox(ii, this.props);\n /* $FlowFixMe[prop-missing] (>=0.68.0 site=react_native_fb) This comment\n * suppresses an error found when Flow v0.68 was deployed. To see the\n * error delete this comment and run Flow. */\n if (frame.inLayout) {\n framesInLayout.push(frame);\n }\n }\n var windowTop = this.__getFrameMetricsApprox(this.state.cellsAroundViewport.first, this.props).offset;\n var frameLast = this.__getFrameMetricsApprox(this.state.cellsAroundViewport.last, this.props);\n var windowLen = frameLast.offset + frameLast.length - windowTop;\n var visTop = this._scrollMetrics.offset;\n var visLen = this._scrollMetrics.visibleLength;\n return /*#__PURE__*/React.createElement(View, {\n style: [styles.debugOverlayBase, styles.debugOverlay]\n }, framesInLayout.map((f, ii) => /*#__PURE__*/React.createElement(View, {\n key: 'f' + ii,\n style: [styles.debugOverlayBase, styles.debugOverlayFrame, {\n top: f.offset * normalize,\n height: f.length * normalize\n }]\n })), /*#__PURE__*/React.createElement(View, {\n style: [styles.debugOverlayBase, styles.debugOverlayFrameLast, {\n top: windowTop * normalize,\n height: windowLen * normalize\n }]\n }), /*#__PURE__*/React.createElement(View, {\n style: [styles.debugOverlayBase, styles.debugOverlayFrameVis, {\n top: visTop * normalize,\n height: visLen * normalize\n }]\n }));\n }\n _selectLength(metrics) {\n return !horizontalOrDefault(this.props.horizontal) ? metrics.height : metrics.width;\n }\n _selectOffset(metrics) {\n return !horizontalOrDefault(this.props.horizontal) ? metrics.y : metrics.x;\n }\n _maybeCallOnEdgeReached() {\n var _this$props8 = this.props,\n data = _this$props8.data,\n getItemCount = _this$props8.getItemCount,\n onStartReached = _this$props8.onStartReached,\n onStartReachedThreshold = _this$props8.onStartReachedThreshold,\n onEndReached = _this$props8.onEndReached,\n onEndReachedThreshold = _this$props8.onEndReachedThreshold,\n initialScrollIndex = _this$props8.initialScrollIndex;\n var _this$_scrollMetrics2 = this._scrollMetrics,\n contentLength = _this$_scrollMetrics2.contentLength,\n visibleLength = _this$_scrollMetrics2.visibleLength,\n offset = _this$_scrollMetrics2.offset;\n var distanceFromStart = offset;\n var distanceFromEnd = contentLength - visibleLength - offset;\n\n // Especially when oERT is zero it's necessary to 'floor' very small distance values to be 0\n // since debouncing causes us to not fire this event for every single \"pixel\" we scroll and can thus\n // be at the edge of the list with a distance approximating 0 but not quite there.\n if (distanceFromStart < ON_EDGE_REACHED_EPSILON) {\n distanceFromStart = 0;\n }\n if (distanceFromEnd < ON_EDGE_REACHED_EPSILON) {\n distanceFromEnd = 0;\n }\n\n // TODO: T121172172 Look into why we're \"defaulting\" to a threshold of 2px\n // when oERT is not present (different from 2 viewports used elsewhere)\n var DEFAULT_THRESHOLD_PX = 2;\n var startThreshold = onStartReachedThreshold != null ? onStartReachedThreshold * visibleLength : DEFAULT_THRESHOLD_PX;\n var endThreshold = onEndReachedThreshold != null ? onEndReachedThreshold * visibleLength : DEFAULT_THRESHOLD_PX;\n var isWithinStartThreshold = distanceFromStart <= startThreshold;\n var isWithinEndThreshold = distanceFromEnd <= endThreshold;\n\n // First check if the user just scrolled within the end threshold\n // and call onEndReached only once for a given content length,\n // and only if onStartReached is not being executed\n if (onEndReached && this.state.cellsAroundViewport.last === getItemCount(data) - 1 && isWithinEndThreshold && this._scrollMetrics.contentLength !== this._sentEndForContentLength) {\n this._sentEndForContentLength = this._scrollMetrics.contentLength;\n onEndReached({\n distanceFromEnd\n });\n }\n\n // Next check if the user just scrolled within the start threshold\n // and call onStartReached only once for a given content length,\n // and only if onEndReached is not being executed\n else if (onStartReached != null && this.state.cellsAroundViewport.first === 0 && isWithinStartThreshold && this._scrollMetrics.contentLength !== this._sentStartForContentLength) {\n // On initial mount when using initialScrollIndex the offset will be 0 initially\n // and will trigger an unexpected onStartReached. To avoid this we can use\n // timestamp to differentiate between the initial scroll metrics and when we actually\n // received the first scroll event.\n if (!initialScrollIndex || this._scrollMetrics.timestamp !== 0) {\n this._sentStartForContentLength = this._scrollMetrics.contentLength;\n onStartReached({\n distanceFromStart\n });\n }\n }\n\n // If the user scrolls away from the start or end and back again,\n // cause onStartReached or onEndReached to be triggered again\n else {\n this._sentStartForContentLength = isWithinStartThreshold ? this._sentStartForContentLength : 0;\n this._sentEndForContentLength = isWithinEndThreshold ? this._sentEndForContentLength : 0;\n }\n }\n _scheduleCellsToRenderUpdate() {\n var _this$state$cellsArou = this.state.cellsAroundViewport,\n first = _this$state$cellsArou.first,\n last = _this$state$cellsArou.last;\n var _this$_scrollMetrics3 = this._scrollMetrics,\n offset = _this$_scrollMetrics3.offset,\n visibleLength = _this$_scrollMetrics3.visibleLength,\n velocity = _this$_scrollMetrics3.velocity;\n var itemCount = this.props.getItemCount(this.props.data);\n var hiPri = false;\n var onStartReachedThreshold = onStartReachedThresholdOrDefault(this.props.onStartReachedThreshold);\n var onEndReachedThreshold = onEndReachedThresholdOrDefault(this.props.onEndReachedThreshold);\n // Mark as high priority if we're close to the start of the first item\n // But only if there are items before the first rendered item\n if (first > 0) {\n var distTop = offset - this.__getFrameMetricsApprox(first, this.props).offset;\n hiPri = distTop < 0 || velocity < -2 && distTop < getScrollingThreshold(onStartReachedThreshold, visibleLength);\n }\n // Mark as high priority if we're close to the end of the last item\n // But only if there are items after the last rendered item\n if (!hiPri && last >= 0 && last < itemCount - 1) {\n var distBottom = this.__getFrameMetricsApprox(last, this.props).offset - (offset + visibleLength);\n hiPri = distBottom < 0 || velocity > 2 && distBottom < getScrollingThreshold(onEndReachedThreshold, visibleLength);\n }\n // Only trigger high-priority updates if we've actually rendered cells,\n // and with that size estimate, accurately compute how many cells we should render.\n // Otherwise, it would just render as many cells as it can (of zero dimension),\n // each time through attempting to render more (limited by maxToRenderPerBatch),\n // starving the renderer from actually laying out the objects and computing _averageCellLength.\n // If this is triggered in an `componentDidUpdate` followed by a hiPri cellToRenderUpdate\n // We shouldn't do another hipri cellToRenderUpdate\n if (hiPri && (this._averageCellLength || this.props.getItemLayout) && !this._hiPriInProgress) {\n this._hiPriInProgress = true;\n // Don't worry about interactions when scrolling quickly; focus on filling content as fast\n // as possible.\n this._updateCellsToRenderBatcher.dispose({\n abort: true\n });\n this._updateCellsToRender();\n return;\n } else {\n this._updateCellsToRenderBatcher.schedule();\n }\n }\n _updateViewableItems(props, cellsAroundViewport) {\n this._viewabilityTuples.forEach(tuple => {\n tuple.viewabilityHelper.onUpdate(props, this._scrollMetrics.offset, this._scrollMetrics.visibleLength, this._getFrameMetrics, this._createViewToken, tuple.onViewableItemsChanged, cellsAroundViewport);\n });\n }\n}\nVirtualizedList.contextType = VirtualizedListContext;\nvar styles = StyleSheet.create({\n verticallyInverted: {\n transform: 'scaleY(-1)'\n },\n horizontallyInverted: {\n transform: 'scaleX(-1)'\n },\n debug: {\n flex: 1\n },\n debugOverlayBase: {\n position: 'absolute',\n top: 0,\n right: 0\n },\n debugOverlay: {\n bottom: 0,\n width: 20,\n borderColor: 'blue',\n borderWidth: 1\n },\n debugOverlayFrame: {\n left: 0,\n backgroundColor: 'orange'\n },\n debugOverlayFrameLast: {\n left: 0,\n borderColor: 'green',\n borderWidth: 2\n },\n debugOverlayFrameVis: {\n left: 0,\n borderColor: 'red',\n borderWidth: 2\n }\n});\nexport default VirtualizedList;","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n * @format\n */\n\n/**\n * EventEmitter manages listeners and publishes events to them.\n *\n * EventEmitter accepts a single type parameter that defines the valid events\n * and associated listener argument(s).\n *\n * @example\n *\n * const emitter = new EventEmitter<{\n * success: [number, string],\n * error: [Error],\n * }>();\n *\n * emitter.on('success', (statusCode, responseText) => {...});\n * emitter.emit('success', 200, '...');\n *\n * emitter.on('error', error => {...});\n * emitter.emit('error', new Error('Resource not found'));\n *\n */\nexport default class EventEmitter {\n constructor() {\n this._registry = {};\n }\n /**\n * Registers a listener that is called when the supplied event is emitted.\n * Returns a subscription that has a `remove` method to undo registration.\n */\n addListener(eventType, listener, context) {\n var registrations = allocate(this._registry, eventType);\n var registration = {\n context,\n listener,\n remove() {\n registrations.delete(registration);\n }\n };\n registrations.add(registration);\n return registration;\n }\n\n /**\n * Emits the supplied event. Additional arguments supplied to `emit` will be\n * passed through to each of the registered listeners.\n *\n * If a listener modifies the listeners registered for the same event, those\n * changes will not be reflected in the current invocation of `emit`.\n */\n emit(eventType) {\n var registrations = this._registry[eventType];\n if (registrations != null) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n for (var _i = 0, _arr = [...registrations]; _i < _arr.length; _i++) {\n var registration = _arr[_i];\n registration.listener.apply(registration.context, args);\n }\n }\n }\n\n /**\n * Removes all registered listeners.\n */\n removeAllListeners(eventType) {\n if (eventType == null) {\n this._registry = {};\n } else {\n delete this._registry[eventType];\n }\n }\n\n /**\n * Returns the number of registered listeners for the supplied event.\n */\n listenerCount(eventType) {\n var registrations = this._registry[eventType];\n return registrations == null ? 0 : registrations.size;\n }\n}\nfunction allocate(registry, eventType) {\n var registrations = registry[eventType];\n if (registrations == null) {\n registrations = new Set();\n registry[eventType] = registrations;\n }\n return registrations;\n}","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import {digg} from \"diggerize\"\nimport * as inflection from \"inflection\"\nimport modelClassRequire from \"../model-class-require.mjs\"\n\nexport default class ApiMakerBaseModelReflection {\n constructor(reflectionData) {\n this.reflectionData = reflectionData\n }\n\n foreignKey = () => digg(this, \"reflectionData\", \"foreignKey\")\n macro = () => digg(this, \"reflectionData\", \"macro\")\n modelClass = () => modelClassRequire(inflection.singularize(inflection.camelize(digg(this, \"reflectionData\", \"resource_name\"))))\n name = () => inflection.camelize(digg(this, \"reflectionData\", \"name\"), true)\n through = () => digg(this, \"reflectionData\", \"through\")\n}\n","import cloneDeep from \"clone-deep\"\nimport CommandsPool from \"./commands-pool.mjs\"\nimport {digg} from \"diggerize\"\nimport * as inflection from \"inflection\"\nimport {incorporate} from \"incorporator\"\nimport modelClassRequire from \"./model-class-require.mjs\"\nimport Result from \"./result.mjs\"\n\nexport default class ApiMakerCollection {\n static apiMakerType = \"Collection\"\n\n constructor (args, queryArgs = {}) {\n this.queryArgs = queryArgs\n this.args = args\n }\n\n abilities (originalAbilities) {\n const newAbilities = {}\n\n for (const originalAbilityName in originalAbilities) {\n const newModelName = inflection.underscore(originalAbilityName)\n const newValues = []\n const originalValues = originalAbilities[originalAbilityName]\n\n for (const originalAbilityName of originalValues) {\n const newAbilityName = inflection.underscore(originalAbilityName)\n newValues.push(newAbilityName)\n }\n\n newAbilities[newModelName] = newValues\n }\n\n return this._merge({abilities: newAbilities})\n }\n\n accessibleBy (abilityName) {\n return this._merge({accessibleBy: inflection.underscore(abilityName)})\n }\n\n async count () {\n const response = await this.clone()._merge({count: true})._response()\n\n return digg(response, \"count\")\n }\n\n distinct () {\n return this._merge({distinct: true})\n }\n\n async each (callback) {\n const array = await this.toArray()\n\n for (const model in array) {\n callback.call(model)\n }\n }\n\n async first () {\n const models = await this.toArray()\n return models[0]\n }\n\n groupBy (...arrayOfTablesAndColumns) {\n const arrayOfTablesAndColumnsWithLowercaseColumns = arrayOfTablesAndColumns.map((tableAndColumn) => {\n if (Array.isArray(tableAndColumn)) {\n return [tableAndColumn[0], tableAndColumn[1].toLowerCase()]\n } else {\n return tableAndColumn.toLowerCase()\n }\n })\n const currentGroupBy = this.queryArgs.groupBy || []\n const newGroupBy = currentGroupBy.concat(arrayOfTablesAndColumnsWithLowercaseColumns)\n\n return this._merge({\n groupBy: newGroupBy\n })\n }\n\n isLoaded () {\n if (this.args.reflectionName in this.args.model.relationshipsCache)\n return true\n\n return false\n }\n\n limit (amount) {\n return this._merge({limit: amount})\n }\n\n preloaded () {\n if (!(this.args.reflectionName in this.args.model.relationshipsCache)) {\n throw new Error(`${this.args.reflectionName} hasnt been loaded yet`)\n }\n\n return this.args.model.relationshipsCache[this.args.reflectionName]\n }\n\n loaded () {\n const {model, reflectionName} = this.args\n\n if (reflectionName in model.relationships) {\n return model.relationships[reflectionName]\n } else if (reflectionName in model.relationshipsCache) {\n return model.relationshipsCache[reflectionName]\n } else if (model.isNewRecord()) {\n const reflectionNameUnderscore = inflection.underscore(reflectionName)\n\n // Initialize as empty and try again to return the empty result\n this.set([])\n\n return digg(model.relationships, reflectionNameUnderscore)\n } else {\n const relationshipsLoaded = uniqunize(Object.keys(model.relationships).concat(Object.keys(model.relationshipsCache)))\n\n throw new Error(`${reflectionName} hasnt been loaded yet on ${model.modelClassData().name}. Loaded was: ${relationshipsLoaded.join(\", \")}`)\n }\n }\n\n // Replaces the relationships with the given new collection.\n set(newCollection) {\n this.args.model.relationships[this.args.reflectionName] = newCollection\n }\n\n // Pushes another model onto the given collection.\n push(newModel) {\n if (!(this.args.reflectionName in this.args.model.relationships)) {\n this.args.model.relationships[this.args.reflectionName] = []\n }\n\n this.args.model.relationships[this.args.reflectionName].push(newModel)\n }\n\n // Array shortcuts\n find = (...args) => this.loaded().find(...args)\n forEach = (...args) => this.loaded().forEach(...args)\n map = (...args) => this.loaded().map(...args)\n\n preload (preloadValue) {\n return this._merge({preload: preloadValue})\n }\n\n page (page) {\n if (!page)\n page = 1\n\n return this._merge({page})\n }\n\n pageKey (pageKey) {\n return this._merge({pageKey})\n }\n\n params () {\n let params = {}\n\n if (this.queryArgs.params) params = incorporate(params, this.queryArgs.params)\n if (this.queryArgs.abilities) params.abilities = this.queryArgs.abilities\n if (this.queryArgs.accessibleBy) params.accessible_by = inflection.underscore(this.queryArgs.accessibleBy)\n if (this.queryArgs.count) params.count = this.queryArgs.count\n if (this.queryArgs.distinct) params.distinct = this.queryArgs.distinct\n if (this.queryArgs.groupBy) params.group_by = this.queryArgs.groupBy\n if (this.queryArgs.ransack) params.q = this.queryArgs.ransack\n if (this.queryArgs.limit) params.limit = this.queryArgs.limit\n if (this.queryArgs.preload) params.preload = this.queryArgs.preload\n if (this.queryArgs.page) params.page = this.queryArgs.page\n if (this.queryArgs.per) params.per = this.queryArgs.per\n if (this.queryArgs.search) params.search = this.queryArgs.search\n if (this.queryArgs.select) params.select = this.queryArgs.select\n if (this.queryArgs.selectColumns) params.select_columns = this.queryArgs.selectColumns\n\n return params\n }\n\n per (per) {\n return this._merge({per})\n }\n\n perKey (perKey) {\n return this._merge({perKey})\n }\n\n ransack (params) {\n if (params) this._merge({ransack: params})\n return this\n }\n\n async result () {\n const response = await this._response()\n const models = digg(response, \"collection\")\n\n this._addQueryToModels(models)\n\n const result = new Result({collection: this, models, response})\n\n return result\n }\n\n search(params) {\n if (params) this._merge({search: params})\n return this\n }\n\n searchKey(searchKey) {\n return this._merge({searchKey})\n }\n\n select(originalSelect) {\n const newSelect = {}\n\n for (const originalModelName in originalSelect) {\n const newModelName = inflection.underscore(originalModelName)\n const newValues = []\n const originalValues = originalSelect[originalModelName]\n\n for (const originalAttributeName of originalValues) {\n const newAttributeName = inflection.underscore(originalAttributeName)\n newValues.push(newAttributeName)\n }\n\n newSelect[newModelName] = newValues\n }\n\n return this._merge({select: newSelect})\n }\n\n selectColumns(originalSelect) {\n const newSelect = {}\n\n for (const originalModelName in originalSelect) {\n const newModelName = inflection.underscore(inflection.underscore(originalModelName))\n const newValues = []\n const originalValues = originalSelect[originalModelName]\n\n for (const originalAttributeName of originalValues) {\n const newAttributeName = inflection.underscore(originalAttributeName)\n newValues.push(newAttributeName)\n }\n\n newSelect[newModelName] = newValues\n }\n\n return this._merge({selectColumns: newSelect})\n }\n\n sort (sortBy) {\n return this._merge({ransack: {s: sortBy}})\n }\n\n async toArray () {\n const response = await this._response()\n const models = digg(response, \"collection\")\n\n this._addQueryToModels(models)\n\n return models\n }\n\n modelClass () {\n const modelName = digg(this.args.modelClass.modelClassData(), \"name\")\n\n return modelClassRequire(modelName)\n }\n\n clone () {\n const clonedQueryArgs = cloneDeep(this.queryArgs)\n\n return new ApiMakerCollection(this.args, clonedQueryArgs)\n }\n\n // This is needed when reloading a version of the model with the same selected attributes and preloads\n _addQueryToModels(models) {\n for(const model of models) {\n model.collection = this\n }\n }\n\n _merge (newQueryArgs) {\n incorporate(this.queryArgs, newQueryArgs)\n\n return this\n }\n\n _response () {\n const modelClassData = this.args.modelClass.modelClassData()\n\n return CommandsPool.addCommand(\n {\n args: this.params(),\n command: `${modelClassData.collectionName}-index`,\n collectionName: modelClassData.collectionName,\n type: \"index\"\n },\n {}\n )\n }\n}\n","function anythingDifferent(value1, value2, debug) {\n if (Array.isArray(value1) && Array.isArray(value2)) {\n return arrayDifferent(value1, value2)\n } else if (isSimpleObject(value1) && isSimpleObject(value2)) {\n return simpleObjectDifferent(value1, value2, true)\n } else if (typeof value1 == \"object\" && typeof value2 == \"object\" && value1 && value2) {\n return !Object.is(value1, value2)\n } else if (value1 !== value2) {\n if (debug) console.log(`Value 1 ${value1} wasn't the same as value 2 ${value2}`)\n\n return true\n }\n\n return false\n}\n\nfunction arrayDifferent(array1, array2) {\n if (array1.length != array2.length) {\n return true\n }\n\n for (const key in array1) {\n if (anythingDifferent(array1[key], array2[key])) {\n return true\n }\n }\n\n return false\n}\n\nfunction isSimpleObject(value) {\n if (typeof value == \"object\" && value !== null && value.constructor.name == \"Object\") {\n return true\n }\n\n return false\n}\n\nfunction simpleObjectDifferent(object1, object2, checkLength) {\n if (checkLength && Object.keys(object1).length !== Object.keys(object2).length) {\n return true\n }\n\n return simpleObjectValuesDifferent(object1, object2)\n}\n\nfunction simpleObjectValuesDifferent(object1, object2, args) {\n for (const key in object1) {\n if (args?.ignore && args.ignore({key})) {\n if (args?.debug) console.log(`Ignoring key ${key}`)\n continue\n }\n\n if (args?.debug) console.log({key, object1: object1[key], object2: object2[key]})\n\n if (!(key in object2)) {\n if (args?.debug) {\n console.log(`Key ${key} wasn't found in object`)\n }\n\n return true\n } else if (anythingDifferent(object1[key], object2[key], args?.debug)) {\n if (args?.debug) {\n console.log(`Something was different for ${key}`)\n }\n\n return true\n }\n }\n\n return false\n}\n\nexport {\n anythingDifferent,\n arrayDifferent,\n isSimpleObject,\n simpleObjectDifferent,\n simpleObjectValuesDifferent\n}\n","import {anythingDifferent} from \"./diff-utils.js\"\nimport {useMemo, useState} from \"react\"\nimport fetchingObject from \"fetching-object\"\n\nclass Shape {\n constructor() {\n this.setStates = {}\n this.state = {}\n this.props = {}\n this.meta = {}\n this.m = fetchingObject(() => this.meta)\n this.p = fetchingObject(() => this.props)\n this.s = fetchingObject(this.state)\n }\n\n set(statesList) {\n for (const stateName in statesList) {\n const newValue = statesList[stateName]\n\n if (!(stateName in this.setStates)) {\n throw new Error(`No such state: ${stateName}`)\n }\n\n this.setStates[stateName](newValue)\n }\n }\n\n updateMeta(newMeta) {\n Object.assign(this.meta, newMeta)\n }\n\n updateProps(newProps) {\n this.props = newProps\n }\n\n useState(stateName, defaultValue) {\n const [stateValue, setState] = useState(defaultValue)\n\n if (!(stateName in this.state)) {\n this.state[stateName] = stateValue\n this.setStates[stateName] = (newValue) => {\n if (anythingDifferent(this.state[stateName], newValue)) {\n this.state[stateName] = newValue\n setState(newValue)\n }\n }\n }\n\n return this.setStates[stateName]\n }\n\n useStates(statesList) {\n if (Array.isArray(statesList)) {\n for(const stateName of statesList) {\n this.useState(stateName)\n }\n } else {\n for(const stateName in statesList) {\n const defaultValue = statesList[stateName]\n\n this.useState(stateName, defaultValue)\n }\n }\n }\n}\n\nconst shapeComponent = (ShapeClass) => {\n return (props) => {\n const shape = useMemo(() => new ShapeClass(), [])\n\n shape.updateProps(props)\n\n if (shape.setup) {\n shape.setup()\n }\n\n return shape.render()\n }\n}\n\nconst useShape = (props, opts) => {\n const shape = useMemo(\n () => {\n const ShapeClass = opts?.shapeClass || Shape\n\n return new ShapeClass()\n },\n []\n )\n\n shape.updateProps(props)\n\n return shape\n}\n\nexport {shapeComponent, Shape}\nexport default useShape\n"],"names":["makeEmptyFunction","arg","emptyFunction","thatReturns","thatReturnsFalse","thatReturnsTrue","thatReturnsNull","thatReturnsThis","this","thatReturnsArgument","module","exports","validateFormat","format","condition","_len","arguments","length","args","Array","_key","error","undefined","Error","argIndex","replace","String","name","framesToPop","warning","baseGetTag","isObject","value","tag","getPrototype","isObjectLike","funcProto","Function","prototype","objectProto","Object","funcToString","toString","hasOwnProperty","objectCtorString","call","proto","Ctor","constructor","nullthrows","x","message","defineProperty","result","recipes","load","AccountModelClass","Account","AccountSchoolModelClass","AccountSchool","AccountUserModelClass","AccountUser","AuditActionModelClass","AuditAction","AuditAuditableTypeModelClass","AuditAuditableType","AuditModelClass","Audit","BrainBreakClassStepModelClass","BrainBreakClassStep","BrainBreakModelClass","BrainBreak","ChallengeClassStepModelClass","ChallengeClassStep","ChallengeModelClass","Challenge","CheckInClassStepModelClass","CheckInClassStep","CheckInModelClass","CheckIn","ClassStatusExpansionModelClass","ClassStatusExpansion","ClassStepModelClass","ClassStep","ContentAbsoluteContainerModelClass","ContentAbsoluteContainer","ContentPieceTypeModelClass","ContentPieceType","ContentModelClass","Content","CountryModelClass","Country","CourseClassStepModelClass","CourseClassStep","CourseGroupCourseModelClass","CourseGroupCourse","CourseGroupModelClass","CourseGroup","CourseModuleModelClass","CourseModule","CourseModelClass","Course","CurrencyModelClass","Currency","DialogueModelClass","Dialogue","EmailTemplatePreviewLiquidVariableModelClass","EmailTemplatePreviewLiquidVariable","EmailTemplatePreviewModelClass","EmailTemplatePreview","EmailTemplateModelClass","EmailTemplate","InvoiceLineModelClass","InvoiceLine","InvoiceModelClass","Invoice","LocaleModelClass","Locale","NewsletterModelClass","Newsletter","NewsletterTemplateModelClass","NewsletterTemplate","NewsletterTemplateTableSearchModelClass","NewsletterTemplateTableSearch","NotificationSettingModelClass","NotificationSetting","NotificationTypeActionModelClass","NotificationTypeAction","NotificationTypeAuditTriggerModelClass","NotificationTypeAuditTrigger","NotificationTypeModelClass","NotificationType","PlanModelClass","Plan","PlanResourcePeriodPriceModelClass","PlanResourcePeriodPrice","PlanResourcePeriodModelClass","PlanResourcePeriod","PlanResourceModelClass","PlanResource","RoleModelClass","Role","SchoolClassBrainBreakModelClass","SchoolClassBrainBreak","SchoolClassChallengeModelClass","SchoolClassChallenge","SchoolClassCheckInModelClass","SchoolClassCheckIn","SchoolClassContentPieceModelClass","SchoolClassContentPiece","SchoolClassCourseModuleModelClass","SchoolClassCourseModule","SchoolClassCourseModelClass","SchoolClassCourse","SchoolClassGroupClassStepModelClass","SchoolClassGroupClassStep","SchoolClassGroupModelClass","SchoolClassGroup","SchoolClassInvitationModelClass","SchoolClassInvitation","SchoolClassModelClass","SchoolClass","SchoolClassRoleModelClass","SchoolClassRole","SchoolContactRequestModelClass","SchoolContactRequest","SchoolModelClass","School","SchoolRoleModelClass","SchoolRole","ScoreFactorGroupModelClass","ScoreFactorGroup","ScoreFactorGroupScoreFactorModelClass","ScoreFactorGroupScoreFactor","ScoreFactorModelClass","ScoreFactor","StylingModelClass","Styling","SubscriptionPeriodModelClass","SubscriptionPeriod","SubscriptionModelClass","Subscription","SurveyModelClass","Survey","SurveyStepElementOptionModelClass","SurveyStepElementOption","SurveyStepElementOptionScoreModelClass","SurveyStepElementOptionScore","SurveyStepElementModelClass","SurveyStepElement","SurveyStepModelClass","SurveyStep","TableSearchModelClass","TableSearch","TableSettingColumnModelClass","TableSettingColumn","TableSettingModelClass","TableSetting","TeamModelClass","Team","TeamSurveyModelClass","TeamSurvey","TeamSurveyStepElementAnswerModelClass","TeamSurveyStepElementAnswer","TeamSurveyStepElementModelClass","TeamSurveyStepElement","TeamSurveyStepModelClass","TeamSurveyStep","TeamUserModelClass","TeamUser","TextKeyModelClass","TextKey","TextValueModelClass","TextValue","TrixFileModelClass","TrixFile","UserModelClass","User","UserRoleModelClass","UserRole","WorkplaceLinkModelClass","WorkplaceLink","WorkplaceModelClass","Workplace","m","createRoot","hydrateRoot","checkDCE","__REACT_DEVTOOLS_GLOBAL_HOOK__","err","console","isScreenReaderEnabled","Promise","resolve","reject","prefersReducedMotionMedia","window","matchMedia","handlers","AccessibilityInfo","isReduceMotionEnabled","matches","fetch","addEventListener","eventName","handler","listener","event","fn","addListener","remove","removeEventListener","setAccessibilityFocus","reactTag","announceForAccessibility","announcement","removeListener","_excluded","createSvgCircle","style","cx","cy","fill","r","strokeWidth","ActivityIndicator","props","forwardedRef","_props$animating","animating","_props$color","color","_props$hidesWhenStopp","hidesWhenStopped","_props$size","size","other","svg","height","viewBox","width","stroke","opacity","strokeDasharray","strokeDashoffset","ref","role","styles","container","children","indicatorSizes","animation","animationPause","displayName","create","alignItems","justifyContent","visibility","animationDuration","animationKeyframes","transform","animationTimingFunction","animationIterationCount","animationPlayState","small","large","alert","nativeEventEmitter","Platform","isLayoutAnimationEnabled","shouldEmitW3CPointerEvents","shouldPressibilityUseW3CPointerEventsForHover","animatedShouldDebounceQueueFlush","animatedShouldUseSingleOp","OS","g","RN$Bridgeless","__nativeAnimatedNodeTagCount","__nativeAnimationIdCount","waitingForQueuedOperations","Set","queueOperations","queue","queueAndExecuteBatchedOperations","flushQueueTimeout","nativeOps","API","getValue","saveValueCallback","queueOperation","setWaitingForIdentifier","id","add","clearTimeout","unsetWaitingForIdentifier","delete","disableQueue","clearImmediate","setImmediate","flushQueue","push","createAnimatedNode","config","updateAnimatedNodeConfig","startListeningToAnimatedNodeValue","stopListeningToAnimatedNodeValue","connectAnimatedNodes","parentTag","childTag","disconnectAnimatedNodes","startAnimatingNode","animationId","nodeTag","endCallback","stopAnimation","setAnimatedNodeValue","setAnimatedNodeOffset","offset","flattenAnimatedNodeOffset","extractAnimatedNodeOffset","connectAnimatedNodeToView","viewTag","disconnectAnimatedNodeFromView","restoreDefaultValues","dropAnimatedNode","addAnimatedEventToView","eventMapping","removeAnimatedEventFromView","animatedNodeTag","SUPPORTED_COLOR_STYLES","backgroundColor","borderBottomColor","borderColor","borderEndColor","borderLeftColor","borderRightColor","borderStartColor","borderTopColor","tintColor","SUPPORTED_STYLES","borderBottomEndRadius","borderBottomLeftRadius","borderBottomRightRadius","borderBottomStartRadius","borderRadius","borderTopEndRadius","borderTopLeftRadius","borderTopRightRadius","borderTopStartRadius","elevation","zIndex","shadowOpacity","shadowRadius","scaleX","scaleY","translateX","translateY","SUPPORTED_TRANSFORMS","scale","rotate","rotateX","rotateY","rotateZ","perspective","SUPPORTED_INTERPOLATION_PARAMS","inputRange","outputRange","extrapolate","extrapolateRight","extrapolateLeft","isSupportedStyleProp","prop","isSupportedTransformProp","isSupportedInterpolationParam","param","generateNewAnimationId","_warnedMissingNativeAnimated","shouldUseNativeDriver","useNativeDriver","warn","isSupportedColorStyleProp","addWhitelistedStyleProp","addWhitelistedTransformProp","addWhitelistedInterpolationParam","validateStyles","_key2","validateTransform","configs","forEach","property","validateInterpolation","_key3","generateNewNodeTag","assertNativeAnimatedModule","transformDataType","test","parseFloat","Math","PI","NativeEventEmitter","NativeAnimatedAPI","NativeAnimatedHelper","_uniqueId","__attach","__detach","__isNative","__nativeTag","__getValue","__getAnimatedValue","__addChild","child","__removeChild","__getChildren","_listeners","__makeNative","platformConfig","_platformConfig","hasListeners","_startListeningToNativeValueUpdates","callback","_stopListeningForNativeValueUpdates","removeAllListeners","keys","__nativeAnimatedValueListener","__shouldUpdateListenersForNewNativeTag","__getNativeTag","data","__onAnimatedValueUpdateReceived","__callListeners","_this$__nativeTag","nativeTag","__getNativeConfig","toJSON","__getPlatformConfig","__setPlatformConfig","super","_children","_step","_iterator","done","index","indexOf","splice","_step2","_iterator2","__DEV__","linear","t","createInterpolation","map","colorToRgba","arr","pattern","stringShapeRegex","i","checkPattern","outputRanges","match","number","interpolations","shouldRound","range","startsWith","input","val","round","createInterpolationFromStringOutputRange","checkInfiniteRange","checkValidInputRange","easing","findRange","inputMin","inputMax","outputMin","outputMax","Infinity","interpolate","normalizedColor","AnimatedInterpolation","parent","_parent","_config","_interpolation","parentValue","__transformDataType","type","__createInterpolation","_startingValue","_value","_offset","_animation","setValue","operation","stop","_updateValue","setOffset","flattenOffset","extractOffset","stopTracking","resetAnimation","animate","handle","__isInteraction","InteractionManager","createInteractionHandle","previousAnimation","start","clearInteractionHandle","_tracking","track","tracking","update","flush","rootNode","animatedStyles","findAnimatedStyles","node","animatedStyle","attachNativeEvent","viewRef","argMapping","eventMappings","traverse","path","nativeEventPath","animatedValueTag","concat","nativeEvent","mapping","detach","AnimatedEvent","_argMapping","__addListener","_callListeners","bind","_attachedEvent","__removeListener","filter","__getHandler","_this","_len2","recMapping","recEvt","key","mappingKey","idx","_len3","_key4","transforms","_transforms","transConfigs","flattenStyle","flatten","createAnimatedStyle","inputStyle","isArray","_inputStyle","_style","_walkStyleAndGetValues","updatedStyle","_walkStyleAndGetAnimatedValues","styleConfig","styleKey","_props","_callback","_animatedView","__disconnectAnimatedView","__connectAnimatedView","setNativeView","animatedView","nativeViewTag","__restoreDefaultValues","propsConfig","propKey","useAnimatedProps","scheduleUpdate","useReducer","count","onUpdateRef","useRef","useMemo","current","prevNodeRef","isUnmountingRef","useEffect","useLayoutEffect","prevNode","useAnimatedPropsLifecycle","effect","cleanupRef","refEffect","useCallback","instance","target","getScrollableNode","getEventTarget","events","propName","propValue","_i","_events","_events$_i","_propName","callbackRef","reduceAnimatedProps","collapsable","createAnimatedComponent","Component","_useAnimatedProps","reducedProps","refs","_refs","useMergeRefs","passthroughAnimatedPropExplicitValues","_ref","passthroughStyle","passthroughProps","mergedStyle","FlatList","scrollEventThrottle","ScrollView","SectionList","a","b","_a","_b","min","max","_min","_max","_lastValue","diff","_warnedAboutDivideByZero","modulus","_modulus","animationClass","animationConfig","_animationClass","_animationConfig","_useNativeDriver","toValue","__getNativeAnimationConfig","valueIn","y","jointCallback","getLayout","left","top","getTranslateTransform","startNativeAnimationNextId","fromValue","onUpdate","onEnd","animatedValue","__nativeId","__debouncedOnEnd","__onEnd","__startNativeAnimation","startNativeAnimationWaitId","e","_config$deceleration","_config$isInteraction","_config$iterations","_deceleration","deceleration","_velocity","velocity","isInteraction","__iterations","iterations","__active","_fromValue","_onUpdate","_startTime","Date","now","_animationFrame","requestAnimationFrame","exp","abs","finished","cancelAnimationFrame","stiffnessFromOrigamiValue","oValue","dampingFromOrigamiValue","fromOrigamiTensionAndFriction","tension","friction","stiffness","damping","fromBouncinessAndSpeed","bounciness","speed","normalize","startValue","endValue","projectNormal","n","end","bouncyTension","bouncyFriction","pow","b3Friction2","b3Friction3","linearInterpolation","SpringAnimation","_config$overshootClam","_config$restDisplacem","_config$restSpeedThre","_config$velocity","_config$velocity2","_config$delay","_config$stiffness","_config$damping","_config$mass","_overshootClamping","overshootClamping","_restDisplacementThreshold","restDisplacementThreshold","_restSpeedThreshold","restSpeedThreshold","_initialVelocity","_lastVelocity","_toValue","_delay","delay","mass","_stiffness","_damping","_mass","_config$bounciness","_config$speed","springConfig","SpringConfig","_config$tension","_config$friction","_springConfig","_this$_initialVelocit","initialVelocity","_startPosition","_lastPosition","_lastTime","_frameTime","internalState","getInternalState","lastPosition","lastVelocity","lastTime","_timeout","setTimeout","deltaTime","c","k","v0","zeta","sqrt","omega0","omega1","x0","position","envelope","sin","cos","_envelope","isOvershooting","isVelocity","isDisplacement","_easeInOut","_config$easing","_config$duration","_easing","Easing","inOut","ease","_duration","duration","frames","numFrames","frame","defaultColor","processColor","isRgbaValue","AnimatedColor","isRgbaAnimatedValue","rgbaAnimatedValue","_processColor","processedColor","initColor","nativeColor","_processColor2","shouldUpdateNodeConfig","rgbaValue","_nativeTag","_combineCallbacks","onComplete","maybeVectorAnim","anim","configX","configY","_config$key","aX","aY","parallel","stopTogether","configR","configG","configB","configA","_config$_key","aR","aG","aB","aA","timing","_start2","configuration","singleValue","singleConfig","reset","_startNativeLoop","_isUsingNativeDriver","sequence","animations","doneCount","hasEnded","cb","endResult","time","Value","ValueXY","Color","Interpolation","Node","decay","_start3","spring","_start","subtract","divide","multiply","modulo","diffClamp","stagger","loop","_temp","_ref$iterations","_ref$resetBeforeItera","resetBeforeIteration","isFinished","iterationsSoFar","restart","animatedEvent","forkEvent","unforkEvent","Event","inAnimationCallback","mockAnimationStart","guardedCallback","emptyAnimation","mockCompositeAnimation","anyValue","AnimatedImplementation","Animated","isTesting","AnimatedMock","Image","Text","View","RootTagContext","AppContainer","WrapperComponent","innerView","appContainer","Provider","rootTag","StyleSheet","flex","pointerEvents","wrapperComponentProvider","emptyObject","runnables","componentProviderInstrumentationHook","component","AppRegistry","getAppKeys","getApplication","appKey","appParameters","registerComponent","componentProvider","RootComponent","initialProps","element","getStyleElement","sheet","getSheet","dangerouslySetInnerHTML","__html","textContent","run","renderApplication","options","hydrate","mode","shouldHydrate","renderFn","render","registerConfig","registerRunnable","runApplication","setComponentProviderInstrumentationHook","hook","setWrapperComponentProvider","provider","unmountApplicationComponentAtRootTag","unmountComponentAtNode","isPrefixed","document","EVENT_TYPES","VISIBILITY_CHANGE_EVENT","VISIBILITY_STATE_PROPERTY","AppStates","changeEmitter","AppState","currentState","isAvailable","emit","query","listenerMapping","WeakMap","Appearance","getColorScheme","addChangeListener","mappedListener","get","colorScheme","set","BackHandler","exitApp","Button","accessibilityLabel","disabled","onPress","testID","title","accessibilityRole","focusable","button","buttonDisabled","text","textDisabled","fontWeight","padding","textAlign","textTransform","CheckBox","ariaReadOnly","onChange","onValueChange","readOnly","fakeControl","fakeControlChecked","fakeControlDisabled","fakeControlCheckedAndDisabled","nativeControl","checked","accessibilityReadOnly","cursorInherit","root","cursorDefault","cursor","userSelect","borderStyle","borderWidth","backgroundImage","backgroundRepeat","absoluteFillObject","margin","appearance","clipboardAvailable","Clipboard","queryCommandSupported","getString","setString","success","body","createElement","whiteSpace","appendChild","selection","getSelection","removeAllRanges","createRange","selectNodeContents","addRange","execCommand","removeChild","dimensions","fontScale","screen","listeners","shouldInit","win","visualViewport","docEl","documentElement","clientHeight","clientWidth","devicePixelRatio","handleResize","Dimensions","dimension","initialDimensions","_handler","NEWTON_ITERATIONS","SUBDIVISION_PRECISION","SUBDIVISION_MAX_ITERATIONS","kSampleStepSize","float32ArraySupported","Float32Array","A","aA1","aA2","B","C","calcBezier","aT","getSlope","bezier","mX1","mY1","mX2","mY2","sampleValues","getTForX","intervalStart","currentSample","kSplineTableSize","guessForT","initialSlope","_aGuessT","aGuessT","currentSlope","newtonRaphsonIterate","_aA","_aB","currentX","currentT","binarySubdivide","step0","step1","quad","cubic","poly","circle","elastic","p","back","s","bounce","_t","_t2","t2","x1","y1","x2","y2","out","deepDiffer","one","two","maxDepth","len","ii","twoKey","safeIsNaN","Number","isNaN","areInputsEqual","newInputs","lastInputs","first","second","numColumnsOrDefault","numColumns","scrollToEnd","params","_listRef","scrollToIndex","scrollToItem","scrollToOffset","recordInteraction","flashScrollIndicators","getScrollResponder","getNativeScrollRef","getScrollRef","_virtualizedListPairs","_captureRef","_getItem","ret","kk","itemIndex","_item","_getItemCount","isArrayLike","ceil","_keyExtractor","items","_this$props$keyExtrac","keyExtractor","item","join","_renderer","ListItemComponent","renderItem","columnWrapperStyle","extraData","cols","renderProp","info","_item2","_index","row","it","separators","_memoizedRenderer","resultFn","isEqual","cache","memoized","newArgs","lastThis","lastArgs","lastResult","apply","clear","memoizeOne","_checkProps","viewabilityConfigCallbackPairs","pair","viewabilityConfig","onViewableItemsChanged","_createOnViewableItemsChanged","componentDidUpdate","prevProps","getItem","getItemCount","horizontal","_pushMultiColumnViewable","v","_this$props$keyExtrac2","changed","viewableItems","removeClippedSubviews","_this$props","_removeClippedSubviews","_this$props$strictMod","strictMode","restProps","renderer","VirtualizedList","flexDirection","I18nManager","allowRTL","forceRTL","getConstants","isRTL","assets","getAssetByID","assetId","dataUriPattern","ImageUriCache","has","uri","entries","_entries","Boolean","lastUsedTimestamp","refCount","_cleanUpIfNeeded","leastRecentlyUsedKey","leastRecentlyUsedEntry","imageUris","_maximumEntries","entry","requests","ImageLoader","abort","requestId","image","onerror","onload","getSize","failure","complete","interval","setInterval","clearInterval","naturalHeight","naturalWidth","onLoad","onError","onDecode","decode","then","src","prefetch","queryCache","uris","u","LOADED","LOADING","_filterId","svgDataUriPattern","resolveAssetUri","source","asset","scales","preferredScale","PixelRatio","reduce","prev","curr","scaleSuffix","httpServerLocation","prefix","encodeURIComponent","ariaLabel","blurRadius","defaultSource","draggable","onLayout","onLoadEnd","onLoadStart","rest","_React$useState","state","updateState","_React$useState2","layout","updateLayout","hasTextAncestor","TextAncestorContext","hiddenImageRef","filterRef","requestRef","shouldDisplaySource","_extractNonStandardSt","filterId","tintColorProp","flatStyle","resizeMode","shadowOffset","warnOnce","filters","_filter","shadowString","extractNonStandardStyleProps","_resizeMode","_tintColor","selectedSource","displayImageUri","imageSizeStyle","_getAssetByID","resolveAssetDimensions","backgroundSize","_hiddenImageRef$curre","_height3","_width3","scaleFactor","getBackgroundSize","hiddenImage","alt","accessibilityImage$raw","abortPendingRequest","_layout","inline","undo","boxShadow","resizeModeStyles","suppressHydrationWarning","floodColor","in2","operator","createTintColorSVG","ImageWithStatics","flexBasis","overflow","display","shadowColor","overlayColor","backgroundPosition","center","contain","cover","none","repeat","stretch","ImageBackground","forwardRef","_props$style","imageStyle","imageRef","_StyleSheet$flatten","absoluteFill","onMoreTasks","_onMoreTasks","_queueStack","tasks","popable","enqueue","task","_getCurrentQueue","enqueueTasks","cancelTasks","tasksToCancel","hasTasksToProcess","processNext","shift","gen","_genPromise","JSON","stringify","stackIdx","pop","stackItem","catch","ex","isSupported","requestIdleCallback","didTimeout","timeRemaining","cancelIdleCallback","_emitter","EventEmitter","Events","interactionStart","interactionComplete","runAfterInteractions","promise","_scheduleUpdate","_taskQueue","cancel","_inc","_addInteractionSet","_deleteInteractionSet","setDeadline","deadline","_deadline","_interactionSet","_nextUpdateHandle","_processUpdate","interactionCount","nextInteractionCount","begin","Keyboard","isVisible","dismiss","KeyboardAvoidingView","relativeKeyboardHeight","keyboardFrame","keyboardY","screenY","keyboardVerticalOffset","onKeyboardChange","behavior","contentContainerStyle","configureNext","onAnimationDidEnd","UIManager","configureNextLayoutAnimation","Presets","easeInEaseOut","springDamping","Types","freeze","easeIn","easeOut","keyboard","Properties","scaleXY","checkConfig","initialURL","location","href","open","url","urlToOpen","URL","_eventCallbacks","_dispatchEvent","eventType","filteredCallbacks","canOpenURL","getInitialURL","openURL","_validateURL","LogBox","ignoreLogs","ignoreAllLogs","uninstall","install","elementRef","getAnimationStyle","animationType","visible","animatedSlideInStyles","animatedSlideOutStyles","animatedFadeInStyles","animatedFadeOutStyles","hidden","right","bottom","animatedIn","ANIMATION_DURATION","animatedOut","fadeIn","fadeOut","slideIn","slideOut","onDismiss","onShow","isRendering","setIsRendering","wasVisible","wasRendering","isAnimated","animationEndCallback","currentTarget","onAnimationEnd","ModalContent","active","onRequestClose","transparent","closeOnEscape","stopPropagation","modal","modalTransparent","modalOpaque","FocusBracket","tabIndex","focusBracket","attemptFocus","focus","activeElement","focusFirstDescendant","childNodes","focusLastDescendant","trapElementRef","focusRef","trapFocusInProgress","lastFocusedElement","trapFocus","contains","hasFocused","lastFocusedElementOutsideTrap","outlineStyle","uniqueModalIdentifier","activeModalStack","activeModalListeners","notifyActiveModalListeners","activeModalId","modalId","removeActiveModal","_props$visible","isActive","setIsActive","onDismissCallback","onShowCallback","addActiveModal","NativeModules","TouchHistoryMath","centroidDimension","touchHistory","touchesChangedAfter","isXAxis","ofCurrent","touchBank","total","oneTouchData","numberActiveTouches","indexOfSingleActiveTouch","touchActive","currentTimeStamp","currentPageX","currentPageY","previousPageX","previousPageY","touchTrack","noCentroid","currentCentroidXOfTouchesChangedAfter","currentCentroidYOfTouchesChangedAfter","previousCentroidXOfTouchesChangedAfter","previousCentroidYOfTouchesChangedAfter","currentCentroidX","currentCentroidY","PanResponder","_initializeGestureState","gestureState","moveX","moveY","y0","dx","dy","vx","vy","_accountsForMovesUpTo","_updateGestureStateOnMove","movedAfter","prevX","prevY","nextDX","nextDY","dt","mostRecentTimeStamp","interactionState","shouldCancelClick","timeout","stateID","random","panHandlers","onStartShouldSetResponder","onStartShouldSetPanResponder","onMoveShouldSetResponder","onMoveShouldSetPanResponder","onStartShouldSetResponderCapture","touches","onStartShouldSetPanResponderCapture","onMoveShouldSetResponderCapture","onMoveShouldSetPanResponderCapture","onResponderGrant","clearInteractionTimeout","onPanResponderGrant","onShouldBlockNativeResponder","onResponderReject","onPanResponderReject","onResponderRelease","onPanResponderRelease","setInteractionTimeout","onResponderStart","onPanResponderStart","onResponderMove","onPanResponderMove","onResponderEnd","onPanResponderEnd","onResponderTerminate","onPanResponderTerminate","onResponderTerminationRequest","onPanResponderTerminationRequest","onClickCapture","preventDefault","getInteractionHandle","Picker","enabled","selectedValue","itemStyle","prompt","hostRef","supportedProps","_e$target","selectedIndex","initial","platformMethodsRef","usePlatformMethods","setRef","Item","label","fontFamily","fontSize","getFontScale","getPixelSizeForLayoutSize","layoutSize","roundToNearestPixel","ratio","canUsePassiveEvents","supported","supportsPassiveEvents","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","opts","capture","getOptions","compatListener","persist","previousModality","previousActiveModality","activeModality","modality","isEmulatingMouseEvents","KEYBOARD","MOUSE","TOUCH","CONTEXTMENU","MOUSEDOWN","MOUSEMOVE","MOUSEUP","POINTERDOWN","POINTERMOVE","SCROLL","SELECTIONCHANGE","TOUCHCANCEL","TOUCHMOVE","TOUCHSTART","bubbleOptions","passive","captureOptions","restoreModality","callListeners","onPointerish","PointerEvent","pointerType","metaKey","altKey","ctrlKey","visibilityState","useEvent","targetListeners","useStable","Map","removeTargetListener","lockEventType","unlockEventType","dispatchCustomEvent","payload","createEvent","_ref$bubbles","bubbles","_ref$cancelable","cancelable","detail","initCustomEvent","dispatchEvent","getPointerType","Pressable","delayLongPress","delayPressIn","delayPressOut","onBlur","onContextMenu","onFocus","onHoverIn","onHoverOut","onKeyDown","onLongPress","onPressMove","onPressIn","onPressOut","testOnly_hovered","testOnly_pressed","_useForceableState","useForceableState","hovered","setHovered","_useForceableState2","focused","setFocused","_useForceableState3","pressed","setPressed","pressConfig","delayPressStart","delayPressEnd","onPressChange","onPressStart","onPressEnd","pressEventHandlers","usePressEvents","onContextMenuPress","onKeyDownPress","targetRef","onHoverStart","onHoverChange","onHoverUpdate","onHoverEnd","canUsePE","addMoveListener","addEnterListener","addLeaveListener","addLockListener","addUnlockListener","hoverEnd","leaveListener","moveListener","clientX","clientY","hoverStart","lockEvent","useHover","_tabIndex","blurHandler","focusHandler","contextMenuHandler","keyDownHandler","forced","_useState","useState","touchAction","MemoedPressable","memo","ProgressBar","_props$indeterminate","indeterminate","_props$progress","progress","_props$trackColor","trackColor","percentageProgress","forcedColorAdjust","colors","onRefresh","progressBackgroundColor","progressViewOffset","refreshing","titleColor","cssFunction","CSS","supports","SafeAreaView","paddingTop","paddingRight","paddingBottom","paddingLeft","normalizeScrollEvent","contentOffset","scrollLeft","scrollTop","contentSize","scrollHeight","scrollWidth","layoutMeasurement","offsetHeight","offsetWidth","timeStamp","ScrollViewBase","onScroll","onTouchMove","onWheel","_props$scrollEnabled","scrollEnabled","_props$scrollEventThr","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","scrollState","isScrolling","scrollLastTick","scrollTimeout","scrollRef","createPreventableScrollHandler","handleScrollTick","hideScrollbar","lastTick","eventThrottle","timeSinceLastTick","handleScrollEnd","handleScrollStart","scrollDisabled","overflowX","overflowY","scrollbarWidth","_scrollNodeRef","_innerViewRef","isTouching","lastMomentumScrollBeginTime","lastMomentumScrollEndTime","observedScrollSinceBecomingResponder","becameResponderWhileAnimating","scrollResponderHandleScrollShouldSetResponder","scrollResponderHandleStartShouldSetResponderCapture","scrollResponderIsAnimating","scrollResponderHandleTerminationRequest","scrollResponderHandleTouchEnd","onTouchEnd","scrollResponderHandleResponderRelease","currentlyFocusedTextInput","TextInputState","currentlyFocusedField","keyboardShouldPersistTaps","onScrollResponderKeyboardDismissed","blurTextInput","scrollResponderHandleScroll","scrollResponderHandleResponderGrant","scrollResponderHandleScrollBeginDrag","onScrollBeginDrag","scrollResponderHandleScrollEndDrag","onScrollEndDrag","scrollResponderHandleMomentumScrollBegin","onMomentumScrollBegin","scrollResponderHandleMomentumScrollEnd","onMomentumScrollEnd","scrollResponderHandleTouchStart","onTouchStart","scrollResponderHandleTouchMove","scrollResponderScrollTo","animated","scroll","scrollResponderZoomTo","rect","scrollResponderScrollNativeHandleToKeyboard","nodeHandle","additionalOffset","preventNegativeScrollOffset","additionalScrollOffset","measureLayout","getInnerViewNode","scrollResponderTextInputFocusError","scrollResponderInputMeasureAndScrollToKeyboard","keyboardScreenY","keyboardWillOpenTo","endCoordinates","scrollOffsetY","scrollResponderKeyboardWillShow","onKeyboardWillShow","scrollResponderKeyboardWillHide","onKeyboardWillHide","scrollResponderKeyboardDidShow","onKeyboardDidShow","scrollResponderKeyboardDidHide","onKeyboardDidHide","scrollResponderFlashScrollIndicators","getInnerViewRef","scrollTo","_ref2","scrollResponderNode","_handleContentOnLayout","_e$nativeEvent$layout","onContentSizeChange","_handleScroll","keyboardDismissMode","dismissKeyboard","_setInnerViewRef","_setScrollNodeRef","mergeRefs","scrollResponderHandleStartShouldSetResponder","scrollResponderHandleResponderReject","refreshControl","stickyHeaderIndices","pagingEnabled","centerContent","contentSizeChangeProps","hasStickyHeaderIndices","isSticky","stickyHeader","pagingEnabledChild","contentContainer","contentContainerHorizontal","contentContainerCenterContent","baseStyle","baseHorizontal","baseVertical","pagingEnabledStyle","pagingEnabledHorizontal","pagingEnabledVertical","onScrollShouldSetResponder","scrollResponderHandleTerminate","ScrollViewClass","scrollView","commonStyle","flexGrow","flexShrink","WebkitOverflowScrolling","scrollSnapType","scrollSnapAlign","ForwardedScrollView","VirtualizedSectionList","_subExtractor","_convertViewable","viewable","_info$index","keyExtractorWithNullableIndex","section","keyExtractorWithNonNullableIndex","_onViewableItemsChanged","_renderItem","listItemCount","infoIndex","header","renderSectionHeader","renderSectionFooter","SeparatorComponent","_getSeparatorComponent","ItemWithSeparator","LeadingSeparatorComponent","SectionSeparatorComponent","cellKey","leadingItem","leadingSection","prevCellKey","setSelfHighlightCallback","_setUpdateHighlightFor","setSelfUpdatePropsCallback","_setUpdatePropsFor","updateHighlightFor","_updateHighlightFor","updatePropsFor","_updatePropsFor","trailingItem","trailingSection","inverted","updateProps","_updatePropsMap","updateHighlight","_updateHighlightMap","updateHighlightFn","updatePropsFn","scrollToLocation","sectionIndex","sections","viewOffset","stickySectionHeadersEnabled","__getFrameMetricsApprox","toIndexParams","getListRef","passThroughProps","ItemSeparatorComponent","listHeaderOffset","ListHeaderComponent","itemCount","itemIdx","sectionData","_this$props2","isLastItemInList","isLastItemInSection","leadingSeparatorHiglighted","setLeadingSeparatorHighlighted","separatorHighlighted","setSeparatorHighlighted","_React$useState3","leadingSeparatorProps","setLeadingSeparatorProps","_React$useState4","separatorProps","setSeparatorProps","highlight","unhighlight","select","newProps","leadingSeparator","highlighted","separator","_wrapperListRef","listRef","_stickySectionHeadersEnabled","share","content","navigator","sharedAction","dismissedAction","StatusBar","setBackgroundColor","setBarStyle","setHidden","setNetworkActivityIndicatorVisible","setTranslucent","defaultOffset","createBoxShadowValue","offsetX","offsetY","mapTransform","createTransformValue","PROPERTIES_STANDARD","borderEndStyle","borderEndWidth","borderStartStyle","borderStartWidth","marginEnd","marginHorizontal","marginStart","marginVertical","paddingEnd","paddingHorizontal","paddingStart","paddingVertical","ignoredProps","preprocess","originalStyle","nextStyle","shadow","boxShadowValue","textShadow","textShadowColor","textShadowOffset","textShadowRadius","textShadowValue","radius","createTextShadowValue","originalProp","originalValue","_value2","verticalAlign","CSS_UNIT_RE","multiple","isFinite","thumbDefaultBoxShadow","thumbFocusedBoxShadow","defaultDisabledTrackColor","defaultDisabledThumbColor","Switch","activeThumbColor","activeTrackColor","_props$disabled","thumbColor","_props$value","thumbRef","handleFocusState","styleHeight","styleWidth","minWidth","trackBorderRadius","trackCurrentColor","true","false","thumbCurrentColor","thumbHeight","thumbWidth","rootStyle","disabledTrackColor","disabledThumbColor","trackStyle","thumbStyle","thumb","thumbActive","transitionDuration","alignSelf","insetInlineStart","forwardPropsList","assign","lang","hrefAttrs","numberOfLines","onClick","onScrollShouldSetResponderCapture","onSelectionChangeShouldSetResponder","onSelectionChangeShouldSetResponderCapture","selectable","contextDirection","direction","handleClick","langDirection","componentDirection","dir","writingDirection","pickProps","WebkitLineClamp","textHasAncestor$raw","text$raw","textOneLine","textMultiLine","notSelectable","pressable","download","rel","charAt","textStyle","border","boxSizing","font","listStyle","textDecoration","wordWrap","maxWidth","textOverflow","WebkitBoxOrient","setSelection","selectionEnd","selectionStart","isSelectionStale","setSelectionRange","autoCapitalize","autoComplete","autoCorrect","autoFocus","defaultValue","maxLength","placeholder","rows","spellCheck","focusTimeout","TextInput","_inputMode","_props$autoCapitalize","autoCompleteType","_props$autoCorrect","blurOnSubmit","caretHidden","clearTextOnFocus","editable","enterKeyHint","inputMode","keyboardType","_props$multiline","multiline","onChangeText","onKeyPress","onSelectionChange","onSubmitEditing","placeholderTextColor","_props$readOnly","returnKeyType","_props$secureTextEntr","secureTextEntry","selectTextOnFocus","prevSelection","prevSecureTextEntry","handleContentSizeChange","hostNode","newHeight","newWidth","imperativeRef","isFocused","_currentlyFocusedNode","shouldBlurOnSubmit","isComposing","keyCode","isEventComposing","shiftKey","blur","onSelect","_selection","textinput$raw","State","MozAppearance","WebkitAppearance","resize","caretColor","twoArgumentPooler","a1","a2","Klass","instancePool","standardReleaser","destructor","poolSize","DEFAULT_POOLER","addPoolingTo","CopyConstructor","pooler","NewKlass","getPooled","release","BoundingDimensions","getPooledFromElement","Position","extractSingleTouch","changedTouches","hasTouches","hasChangedTouches","States","baseStatesConditions","NOT_RESPONDER","RESPONDER_INACTIVE_PRESS_IN","RESPONDER_INACTIVE_PRESS_OUT","RESPONDER_ACTIVE_PRESS_IN","RESPONDER_ACTIVE_PRESS_OUT","RESPONDER_ACTIVE_LONG_PRESS_IN","RESPONDER_ACTIVE_LONG_PRESS_OUT","ERROR","IsActive","IsPressingIn","IsLongPressingIn","Signals","Transitions","DELAY","RESPONDER_GRANT","RESPONDER_RELEASE","RESPONDER_TERMINATED","ENTER_PRESS_RECT","LEAVE_PRESS_RECT","LONG_PRESS_DETECTED","TouchableMixin","componentDidMount","touchableNode","getTouchableNode","_touchableBlurListener","_isTouchableKeyboardActive","touchable","touchState","touchableHandleResponderTerminate","componentWillUnmount","touchableDelayTimeout","longPressDelayTimeout","pressOutDelayTimeout","pressInLocation","responderID","touchableGetInitialState","touchableHandleResponderTerminationRequest","rejectResponderTermination","touchableHandleStartShouldSetResponder","touchableLongPressCancelsPress","touchableHandleResponderGrant","dispatchID","_receiveSignal","delayMS","touchableGetHighlightDelayMS","_handleDelay","longDelayMS","touchableGetLongPressDelayMS","LONG_PRESS_THRESHOLD","_handleLongDelay","touchableHandleResponderRelease","touchableHandleResponderMove","positionOnActivate","dimensionsOnActivate","pressRectOffset","touchableGetPressRectOffset","pressExpandLeft","pressExpandTop","pressExpandRight","pressExpandBottom","hitSlop","touchableGetHitSlop","touch","pageX","pageY","_getDistanceBetweenPoints","_cancelLongPressDelayTimeout","prevState","touchableHandleFocus","touchableHandleBlur","_remeasureMetricsOnActivation","measure","_handleQueryLayout","l","w","h","globalX","globalY","curState","signal","nextState","_performSideEffectsForTransition","_isHighlight","_savePressInLocation","locationX","locationY","bX","bY","deltaX","deltaY","curIsHighlight","newIsHighlight","isInitialTransition","isActiveTransition","touchableHandleLongPress","_startHighlight","_endHighlight","hasLongPressHandler","pressIsLongButStillCallOnPress","touchableHandlePress","_playTouchSound","playTouchSound","touchableHandleActivePressIn","touchableHandleActivePressOut","touchableGetPressOutDelayMS","touchableHandleKeyEvent","AccessibilityUtil","propsToAriaRole","withoutDefaultFocusAndBlur","TouchableMixinWithoutDefaultFocusAndBlur","Touchable","Mixin","TOUCH_TARGET_DEBUG","renderDebugView","debugHitSlopStyle","hexColor","substr","slice","createExtraStyles","activeOpacity","underlayColor","underlay","hasPressHandler","TouchableHighlight","onHideUnderlay","onShowUnderlay","extraStyles","setExtraStyles","showUnderlay","hideUnderlay","only","accessibilityDisabled","actionable","MemoedTouchableHighlight","TouchableOpacity","setDuration","_useState2","opacityOverride","setOpacityOverride","setOpacityTo","setOpacityActive","setOpacityInactive","isGrant","dispatchConfig","registrationName","transitionProperty","MemoedTouchableOpacity","accessibilityLiveRegion","accessibilityState","accessibilityValue","nativeID","TouchableWithoutFeedback","elementProps","MemoedTouchableWithoutFeedback","vibrate","Vibration","YellowBox","ignoreWarnings","findDOMNode","reactRoot","hydrateLegacy","unmount","renderLegacy","useColorScheme","setColorScheme","useWindowDimensions","dims","setDims","handleChange","focusTextInput","textFieldNode","UnimplementedView","unimplementedViewStyles","RESPONDER_ACTIVE_LONG_PRESS_START","RESPONDER_ACTIVE_PRESS_START","RESPONDER_INACTIVE_PRESS_START","getElementRole","getAttribute","getElementType","tagName","toLowerCase","isActiveSignal","isButtonRole","isPressStartSignal","isValidKeyPress","isSpacebar","isButtonish","PressResponder","_eventHandlers","_isPointerTouch","_longPressDelayTimeout","_longPressDispatched","_pressDelayTimeout","_pressOutDelayTimeout","_touchState","_responderElement","configure","_cancelPressDelayTimeout","_cancelPressOutDelayTimeout","getEventHandlers","_createEventHandlers","shouldDelay","_selectionTerminated","normalizeDelay","_handleLongPress","keyupHandler","elementType","isNativeInteractiveElement","isActiveElement","isSpacebarKey","getTouchFromResponderEvent","_touchActivatePosition","hypot","_this$_config","_this$_config2","_this$_config3","_performTransitionSideEffects","isTerminalSignal","isPrevActive","isNextActive","_activate","_deactivate","_this$_config4","_onLongPress","_this$_config5","_this$_config6","fallback","_event$nativeEvent","pressResponderRef","pressResponder","useDebugValue","nativeModule","_nativeModule","context","_this$_nativeModule","subscription","_this$_nativeModule2","removeListeners","_this$_nativeModule3","_this$_nativeModule4","listenerCount","computeWindowedRenderLimits","maxToRenderPerBatch","windowSize","getFrameMetricsApprox","scrollMetrics","last","visibleLength","_scrollMetrics$zoomSc","zoomScale","visibleBegin","visibleEnd","overscanLength","fillPreference","overscanBegin","overscanEnd","_elementsThatOverlapO","offsets","getFrameMetrics","offsetIndex","currentOffset","mid","scaledOffsetStart","scaledOffsetEnd","elementsThatOverlapOffsets","overscanFirst","overscanLast","newCellCount","next","newRangeCount","maxNewCells","firstWillAddMore","firstShouldIncrement","lastWillAddMore","lastShouldIncrement","dispose","_taskHandle","schedule","timeoutHandle","log","CellRenderMask","numCells","_numCells","_regions","isSpacer","enumerateRegions","addCells","cells","_this$_findRegion","_findRegion","firstIntersect","firstIntersectIdx","_this$_findRegion2","lastIntersect","lastIntersectIdx","newLeadRegion","newTailRegion","newMainRegion","replacementRegions","numRegionsToDelete","equals","every","region","cellIdx","firstIdx","lastIdx","middleIdx","floor","middleRegion","ChildListCollection","_cellKeyToChildren","_childrenToCellKey","list","_this$_cellKeyToChild","cellLists","values","listSet","forEachInCell","_this$_cellKeyToChild2","_step3","_iterator3","anyInCell","_this$_cellKeyToChild3","_step4","_iterator4","Info","any_blank_count","any_blank_ms","any_blank_speed_sum","mostly_blank_count","mostly_blank_ms","pixels_blank","pixels_sampled","pixels_scrolled","total_time_spent","sample_count","_minSampleCount","_sampleRate","setSampleRate","sampleRate","setMinSampleCount","minSampleCount","_anyBlankStartTime","_enabled","_info","_mostlyBlankStartTime","_samplesStartTime","_getFrameMetrics","_resetData","activate","performance","deactivateAndFlush","computeBlankness","cellsAroundViewport","dOffset","scrollSpeed","blankTop","firstFrame","inLayout","blankBottom","lastFrame","bottomEdge","blankness","StateSafePureComponent","_inAsyncStateUpdate","_installSetStateHooks","setState","partialState","that","newState","_isViewable","viewAreaMode","viewablePercentThreshold","viewportHeight","itemLength","_isEntirelyVisible","pixels","visibleHeight","_getPixelsVisible","viewAreaCoveragePercentThreshold","_hasInteracted","_timers","_viewableIndices","_viewableItems","computeViewableItems","scrollOffset","renderRange","itemVisiblePercentThreshold","viewableIndices","firstVisible","metrics","createViewToken","waitForInteraction","minimumViewTime","_onUpdateSync","resetViewableIndices","viewableIndicesToCheck","includes","prevItems","nextItems","_step$value","_step2$value","_viewable","isViewable","from","VirtualizedListContext","VirtualizedListContextProvider","getScrollMetrics","getOutermostParentListRef","registerAsNestedChild","unregisterAsNestedChild","VirtualizedListCellContextProvider","_ref3","currContext","useContext","CellRenderer","_separators","onUpdateSeparators","_this$props3","_onLayout","onCellLayout","getDerivedStateFromProps","updateSeparatorProps","onUnmount","_renderElement","_this$props4","CellRendererComponent","inversionStyle","onCellFocusCapture","itemSeparator","cellStyle","rowReverse","columnReverse","onFocusCapture","_usedIndexForKey","_keylessItemComponentName","horizontalOrDefault","maxToRenderPerBatchOrDefault","onEndReachedThresholdOrDefault","onEndReachedThreshold","getScrollingThreshold","threshold","windowSizeOrDefault","veryLast","_footerLength","_scrollMetrics","_scrollRef","getItemLayout","onScrollToIndexFailed","viewPosition","_highestMeasuredFrameIndex","averageItemLength","_averageCellLength","highestMeasuredFrameIndex","_getOffsetApprox","_nestedChildLists","childList","_viewabilityTuples","viewabilityHelper","_updateViewableItems","_getCellKey","_this$context","hasMore","_hasMore","_this$props$updateCel","_getScrollMetrics","_getOutermostParentListRef","_isNestedWithSameOrientation","_registerAsNestedChild","_unregisterAsNestedChild","_onUpdateSeparators","_cellRefs","_getSpacerKey","isVertical","_frames","_hasTriggeredInitialScrollToIndex","_hasWarned","_headerLength","_hiPriInProgress","_indicesToKeys","_lastFocusedCellKey","_offsetFromParentVirtualizedList","_prevParentOffset","contentLength","timestamp","_sentStartForContentLength","_sentEndForContentLength","_totalCellLength","_totalCellsMeasured","_captureScrollRef","_defaultRenderScrollComponent","_props$refreshing","RefreshControl","_onCellLayout","_selectOffset","_selectLength","_scheduleCellsToRenderUpdate","_triggerRemeasureForChildListsInCell","_computeBlankness","_onCellUnmount","measureLayoutRelativeToContainingList","_maybeCallOnEdgeReached","_onLayoutEmpty","_onLayoutFooter","_getFooterCellKey","_onLayoutHeader","_onContentSizeChange","initialScrollIndex","_convertParentScrollMetrics","_onScroll","_this$_convertParentS","perf","prevDt","_fillRateHelper","_onScrollBeginDrag","tuple","_onScrollEndDrag","_onMomentumScrollBegin","_onMomentumScrollEnd","_updateCellsToRender","_adjustCellsAroundViewport","renderMask","_createRenderMask","_getNonViewportRenderRegions","_createViewToken","isInteger","frameMetrics","remainder","focusedCellIndex","heightOfCellsBeforeFocused","heightOfCellsAfterFocused","_updateCellsToRenderBatcher","updateCellsBatchingPeriod","initialRenderRegion","_initialRenderRegion","invertedWheelEventHandler","ev","scrollLength","clientLength","isEventTargetScrollable","delta","wheelDeltaX","wheelDeltaY","leftoverDelta","targetDelta","nextScrollLeft","nextScrollTop","additionalRegions","_i2","_allRegions","initialRegion","stickyIndicesSet","_ensureClosestStickyHeader","_props$initialScrollI","initialNumToRender","firstCellIndex","stickyOffset","newCellsAroundViewport","_this$_scrollMetrics","distanceFromEnd","_constrainToItemCount","disableVirtualization","renderAhead","EPSILON","childIdx","_findFirstChildWithMore","cellKeyForIndex","setupWebWheelHandler","teardownWebWheelHandler","constrainedCells","_pushCells","stickyIndicesFromProps","debug","_loop","shouldListenForLayout","_onCellFocusCapture","nestedContext","_this$props5","ListEmptyComponent","ListFooterComponent","_this$props6","horizontallyInverted","verticallyInverted","_element","ListHeaderComponentStyle","_element2","spacerKey","renderRegions","lastSpacer","predicate","findLastWhere","firstMetrics","lastMetrics","spacerSize","_element3","ListFooterComponentStyle","scrollProps","invertStickyHeaders","renderScrollComponent","_renderDebugOverlay","_this$props7","hiPriInProgress","stack","framesInLayout","windowTop","frameLast","windowLen","visTop","visLen","debugOverlayBase","debugOverlay","f","debugOverlayFrame","debugOverlayFrameLast","debugOverlayFrameVis","_this$props8","onStartReached","onStartReachedThreshold","onEndReached","_this$_scrollMetrics2","distanceFromStart","isWithinStartThreshold","isWithinEndThreshold","_this$state$cellsArou","_this$_scrollMetrics3","hiPri","onStartReachedThresholdOrDefault","distTop","distBottom","contextType","_registry","registrations","registry","allocate","registration","_arr","_arrayLikeToArray","arr2","_createForOfIteratorHelperLoose","o","allowArrayLike","Symbol","iterator","minLen","TypeError","ApiMakerBaseModelReflection","reflectionData","foreignKey","macro","modelClass","through","ApiMakerCollection","static","queryArgs","abilities","originalAbilities","newAbilities","originalAbilityName","newModelName","newValues","originalValues","newAbilityName","_merge","accessibleBy","abilityName","response","clone","_response","distinct","each","array","toArray","model","groupBy","arrayOfTablesAndColumns","arrayOfTablesAndColumnsWithLowercaseColumns","tableAndColumn","newGroupBy","isLoaded","reflectionName","relationshipsCache","limit","amount","preloaded","loaded","relationships","isNewRecord","reflectionNameUnderscore","relationshipsLoaded","uniqunize","modelClassData","newCollection","newModel","find","preload","preloadValue","page","pageKey","accessible_by","group_by","ransack","q","per","search","selectColumns","select_columns","perKey","models","_addQueryToModels","collection","searchKey","originalSelect","newSelect","originalModelName","originalAttributeName","newAttributeName","sort","sortBy","modelName","clonedQueryArgs","newQueryArgs","addCommand","command","collectionName","anythingDifferent","value1","value2","array1","array2","arrayDifferent","isSimpleObject","simpleObjectDifferent","is","object1","object2","checkLength","simpleObjectValuesDifferent","ignore","Shape","_classCallCheck","setStates","meta","fetchingObject","statesList","stateName","newValue","newMeta","_this2","_useState3","_slicedToArray","stateValue","_createForOfIteratorHelper","shapeComponent","ShapeClass","shape","setup","shapeClass"],"sourceRoot":""}