@dereekb/firebase 10.0.17 → 10.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.cjs.js +179 -20
- package/index.esm.js +253 -23
- package/package.json +1 -1
- package/src/lib/client/function/model.function.factory.d.ts +17 -0
- package/src/lib/common/firestore/query/constraint.template.d.ts +41 -1
- package/src/lib/common/model/function.d.ts +82 -11
- package/test/CHANGELOG.md +8 -0
- package/test/package.json +1 -1
- package/test/src/lib/common/firestore/test.driver.query.js +48 -2
- package/test/src/lib/common/firestore/test.driver.query.js.map +1 -1
package/index.cjs.js
CHANGED
|
@@ -4640,6 +4640,18 @@ function whereDateIsOnOrAfter(fieldPath, date = new Date()) {
|
|
|
4640
4640
|
function whereDateIsOnOrAfterWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
4641
4641
|
return [orderBy(fieldPath, sortDirection !== null && sortDirection !== void 0 ? sortDirection : 'asc'), whereDateIsOnOrAfter(fieldPath, date)];
|
|
4642
4642
|
}
|
|
4643
|
+
function whereDateIsOnOrBefore(fieldPath, date = new Date()) {
|
|
4644
|
+
return where(fieldPath, '<=', date.toISOString());
|
|
4645
|
+
}
|
|
4646
|
+
function whereDateIsOnOrBeforeWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
4647
|
+
return [orderBy(fieldPath, sortDirection !== null && sortDirection !== void 0 ? sortDirection : 'desc'), whereDateIsOnOrBefore(fieldPath, date)];
|
|
4648
|
+
}
|
|
4649
|
+
function whereDateIsAfter(fieldPath, date = new Date()) {
|
|
4650
|
+
return where(fieldPath, '>', date.toISOString());
|
|
4651
|
+
}
|
|
4652
|
+
function whereDateIsAfterWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
4653
|
+
return [orderBy(fieldPath, sortDirection !== null && sortDirection !== void 0 ? sortDirection : 'asc'), whereDateIsAfter(fieldPath, date)];
|
|
4654
|
+
}
|
|
4643
4655
|
function whereDateIsBefore(fieldPath, date = new Date()) {
|
|
4644
4656
|
return where(fieldPath, '<', date.toISOString());
|
|
4645
4657
|
}
|
|
@@ -6784,54 +6796,190 @@ function lazyFirebaseFunctionsFactory(configMap) {
|
|
|
6784
6796
|
};
|
|
6785
6797
|
}
|
|
6786
6798
|
|
|
6799
|
+
/**
|
|
6800
|
+
* Creates a OnCallTypedModelParamsFunction
|
|
6801
|
+
*
|
|
6802
|
+
* @param call
|
|
6803
|
+
* @returns
|
|
6804
|
+
*/
|
|
6805
|
+
function onCallTypedModelParamsFunction(call) {
|
|
6806
|
+
return (modelTypeInput, data, specifier) => {
|
|
6807
|
+
const modelType = typeof modelTypeInput === 'string' ? modelTypeInput : modelTypeInput.modelType;
|
|
6808
|
+
if (!modelType) {
|
|
6809
|
+
throw new Error('modelType is required.');
|
|
6810
|
+
}
|
|
6811
|
+
const result = {
|
|
6812
|
+
call,
|
|
6813
|
+
modelType,
|
|
6814
|
+
data
|
|
6815
|
+
};
|
|
6816
|
+
if (specifier != null) {
|
|
6817
|
+
result.specifier = specifier;
|
|
6818
|
+
}
|
|
6819
|
+
return result;
|
|
6820
|
+
};
|
|
6821
|
+
}
|
|
6822
|
+
/**
|
|
6823
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'create'
|
|
6824
|
+
*/
|
|
6825
|
+
const onCallCreateModelParams = onCallTypedModelParamsFunction('create');
|
|
6826
|
+
/**
|
|
6827
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'read'
|
|
6828
|
+
*/
|
|
6829
|
+
const onCallReadModelParams = onCallTypedModelParamsFunction('read');
|
|
6830
|
+
/**
|
|
6831
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'update'
|
|
6832
|
+
*/
|
|
6833
|
+
const onCallUpdateModelParams = onCallTypedModelParamsFunction('update');
|
|
6834
|
+
/**
|
|
6835
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'delete'
|
|
6836
|
+
*/
|
|
6837
|
+
const onCallDeleteModelParams = onCallTypedModelParamsFunction('delete');
|
|
6787
6838
|
/**
|
|
6788
6839
|
* Creates a OnCallTypedModelParams
|
|
6789
6840
|
*
|
|
6841
|
+
* @deprecated use onCallTypedModelParamsFunction instead.
|
|
6842
|
+
*
|
|
6790
6843
|
* @param modelType
|
|
6791
6844
|
* @param data
|
|
6792
6845
|
* @returns
|
|
6793
6846
|
*/
|
|
6794
|
-
function onCallTypedModelParams(modelTypeInput, data, specifier) {
|
|
6795
|
-
|
|
6796
|
-
|
|
6797
|
-
|
|
6798
|
-
|
|
6799
|
-
|
|
6800
|
-
|
|
6801
|
-
|
|
6847
|
+
function onCallTypedModelParams(modelTypeInput, data, specifier, call) {
|
|
6848
|
+
return onCallTypedModelParamsFunction(call)(modelTypeInput, data, specifier);
|
|
6849
|
+
}
|
|
6850
|
+
/**
|
|
6851
|
+
* Key used on the front-end and backend that refers to the call function.
|
|
6852
|
+
*/
|
|
6853
|
+
const CALL_MODEL_APP_FUNCTION_KEY = 'callModel';
|
|
6854
|
+
function onCallCreateModelResultWithDocs(result) {
|
|
6855
|
+
return onCallCreateModelResult(util.asArray(result).map(x => x.documentRef.path));
|
|
6856
|
+
}
|
|
6857
|
+
function onCallCreateModelResult(modelKeys) {
|
|
6858
|
+
return {
|
|
6859
|
+
modelKeys: util.asArray(modelKeys)
|
|
6802
6860
|
};
|
|
6803
|
-
if (specifier != null) {
|
|
6804
|
-
result.specifier = specifier;
|
|
6805
|
-
}
|
|
6806
|
-
return result;
|
|
6807
6861
|
}
|
|
6862
|
+
// MARK: Compat
|
|
6808
6863
|
/**
|
|
6809
6864
|
* Key used on the front-end and backend that refers to a specific function for creating models.
|
|
6865
|
+
*
|
|
6866
|
+
* @deprecated Replaced by the callModel function.
|
|
6810
6867
|
*/
|
|
6811
6868
|
const CREATE_MODEL_APP_FUNCTION_KEY = 'createModel';
|
|
6812
6869
|
/**
|
|
6813
6870
|
* Key used on the front-end and backend that refers to a specific function for reading models.
|
|
6871
|
+
*
|
|
6872
|
+
* @deprecated Replaced by the callModel function.
|
|
6814
6873
|
*/
|
|
6815
6874
|
const READ_MODEL_APP_FUNCTION_KEY = 'readModel';
|
|
6816
6875
|
/**
|
|
6817
6876
|
* Key used on the front-end and backend that refers to a specific function for updating models.
|
|
6877
|
+
*
|
|
6878
|
+
* @deprecated Replaced by the callModel function.
|
|
6818
6879
|
*/
|
|
6819
6880
|
const UPDATE_MODEL_APP_FUNCTION_KEY = 'updateModel';
|
|
6820
6881
|
/**
|
|
6821
6882
|
* Key used on the front-end and backend that refers to a specific function for deleting models.
|
|
6883
|
+
*
|
|
6884
|
+
* @deprecated Replaced by the callModel function.
|
|
6822
6885
|
*/
|
|
6823
6886
|
const DELETE_MODEL_APP_FUNCTION_KEY = 'deleteModel';
|
|
6824
|
-
function onCallCreateModelResultWithDocs(result) {
|
|
6825
|
-
return onCallCreateModelResult(util.asArray(result).map(x => x.documentRef.path));
|
|
6826
|
-
}
|
|
6827
|
-
function onCallCreateModelResult(modelKeys) {
|
|
6828
|
-
return {
|
|
6829
|
-
modelKeys: util.asArray(modelKeys)
|
|
6830
|
-
};
|
|
6831
|
-
}
|
|
6832
6887
|
|
|
6833
6888
|
const MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT = '_';
|
|
6834
6889
|
const MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER = ',';
|
|
6890
|
+
/**
|
|
6891
|
+
* Creates a ModelFirebaseFunctionMapFactory for the input config that targets the "callModel" Firebase function.
|
|
6892
|
+
*
|
|
6893
|
+
* @param configMap
|
|
6894
|
+
* @param crudConfigMap
|
|
6895
|
+
* @returns
|
|
6896
|
+
*/
|
|
6897
|
+
function callModelFirebaseFunctionMapFactory(configMap, crudConfigMap) {
|
|
6898
|
+
const functionFactory = firebaseFunctionMapFactory(configMap);
|
|
6899
|
+
return functionsInstance => {
|
|
6900
|
+
const functionMap = functionFactory(functionsInstance);
|
|
6901
|
+
const _callFn = util.cachedGetter(() => functions.httpsCallable(functionsInstance, CALL_MODEL_APP_FUNCTION_KEY));
|
|
6902
|
+
function makeCallFunction(call, fn, modelType, specifier) {
|
|
6903
|
+
return mapHttpsCallable(fn(), {
|
|
6904
|
+
mapInput: data => onCallTypedModelParams(modelType, data, specifier, call)
|
|
6905
|
+
}, true);
|
|
6906
|
+
}
|
|
6907
|
+
function makeCallSpecifiers(call, fn, modelType, specifierKeys) {
|
|
6908
|
+
const modelTypeSuffix = util.capitalizeFirstLetter(modelType);
|
|
6909
|
+
const specifiers = {};
|
|
6910
|
+
specifierKeys.forEach(inputSpecifier => {
|
|
6911
|
+
const specifier = inputSpecifier === MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT ? '' : inputSpecifier;
|
|
6912
|
+
const specifierFn = makeCallFunction(call, fn, modelType, inputSpecifier);
|
|
6913
|
+
const fullSpecifierName = `${call}${modelTypeSuffix}${util.capitalizeFirstLetter(specifier)}`;
|
|
6914
|
+
specifiers[fullSpecifierName] = specifierFn;
|
|
6915
|
+
const shortSpecifierName = util.lowercaseFirstLetter(specifier) || call;
|
|
6916
|
+
specifiers[shortSpecifierName] = specifierFn;
|
|
6917
|
+
});
|
|
6918
|
+
return specifiers;
|
|
6919
|
+
}
|
|
6920
|
+
const result = util.build({
|
|
6921
|
+
base: functionMap,
|
|
6922
|
+
build: x => {
|
|
6923
|
+
Object.entries(crudConfigMap).forEach(([modelType, config]) => {
|
|
6924
|
+
const modelTypeSuffix = util.capitalizeFirstLetter(modelType);
|
|
6925
|
+
const {
|
|
6926
|
+
included: crudFunctionKeys,
|
|
6927
|
+
excluded: specifiedCallFunctionKeys
|
|
6928
|
+
} = util.separateValues(config, x => x.indexOf(':') === -1);
|
|
6929
|
+
const crudFunctions = new Set(crudFunctionKeys);
|
|
6930
|
+
const specifiedCallFunctionTuples = specifiedCallFunctionKeys.map(x => {
|
|
6931
|
+
const [crud, functionsSplit] = x.split(':', 2);
|
|
6932
|
+
const functions = functionsSplit.split(MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER);
|
|
6933
|
+
return [crud, functions];
|
|
6934
|
+
});
|
|
6935
|
+
// check that there isn't a repeat crud key configured, which disallowed configuration and would cause some functions to be ignored
|
|
6936
|
+
const encounteredCalls = new Set();
|
|
6937
|
+
function assertCallKeyNotEncountered(crud) {
|
|
6938
|
+
if (encounteredCalls.has(crud)) {
|
|
6939
|
+
throw new Error(`Cannot have multiple declarations of the same crud. Found repeat for crud: ${crud}`);
|
|
6940
|
+
} else {
|
|
6941
|
+
encounteredCalls.add(crud);
|
|
6942
|
+
}
|
|
6943
|
+
}
|
|
6944
|
+
crudFunctions.forEach(assertCallKeyNotEncountered);
|
|
6945
|
+
specifiedCallFunctionTuples.forEach(([crud]) => assertCallKeyNotEncountered(crud));
|
|
6946
|
+
// build and add the functions
|
|
6947
|
+
const specifierFunctions = new Map(specifiedCallFunctionTuples);
|
|
6948
|
+
function addCallFunctions(crud, fn, modelType) {
|
|
6949
|
+
let crudFns;
|
|
6950
|
+
if (crudFunctions.has(crud)) {
|
|
6951
|
+
crudFns = makeCallFunction(crud, fn, modelType);
|
|
6952
|
+
} else if (specifierFunctions.has(crud)) {
|
|
6953
|
+
crudFns = makeCallSpecifiers(crud, fn, modelType, specifierFunctions.get(crud));
|
|
6954
|
+
}
|
|
6955
|
+
if (crudFns) {
|
|
6956
|
+
modelTypeCalls[`${crud}${modelTypeSuffix}`] = crudFns;
|
|
6957
|
+
}
|
|
6958
|
+
}
|
|
6959
|
+
const modelTypeCalls = {};
|
|
6960
|
+
// add functions for each call type
|
|
6961
|
+
addCallFunctions('create', _callFn, modelType);
|
|
6962
|
+
addCallFunctions('read', _callFn, modelType);
|
|
6963
|
+
addCallFunctions('update', _callFn, modelType);
|
|
6964
|
+
addCallFunctions('delete', _callFn, modelType);
|
|
6965
|
+
// tslint:disable-next-line
|
|
6966
|
+
x[modelType] = modelTypeCalls;
|
|
6967
|
+
});
|
|
6968
|
+
}
|
|
6969
|
+
});
|
|
6970
|
+
return result;
|
|
6971
|
+
};
|
|
6972
|
+
}
|
|
6973
|
+
// MARK: Compat
|
|
6974
|
+
/**
|
|
6975
|
+
* @deprecated move to using callModelFirebaseFunctionMapFactory instead and the call configuration in general.
|
|
6976
|
+
*
|
|
6977
|
+
* This will be removed in the next release.
|
|
6978
|
+
*
|
|
6979
|
+
* @param configMap
|
|
6980
|
+
* @param crudConfigMap
|
|
6981
|
+
* @returns
|
|
6982
|
+
*/
|
|
6835
6983
|
function modelFirebaseFunctionMapFactory(configMap, crudConfigMap) {
|
|
6836
6984
|
const functionFactory = firebaseFunctionMapFactory(configMap);
|
|
6837
6985
|
return functionsInstance => {
|
|
@@ -7819,6 +7967,7 @@ exports.AbstractFirestoreDocument = AbstractFirestoreDocument;
|
|
|
7819
7967
|
exports.AbstractFirestoreDocumentDataAccessorWrapper = AbstractFirestoreDocumentDataAccessorWrapper;
|
|
7820
7968
|
exports.AbstractFirestoreDocumentWithParent = AbstractFirestoreDocumentWithParent;
|
|
7821
7969
|
exports.BASE_MODEL_STORAGE_FILE_PATH = BASE_MODEL_STORAGE_FILE_PATH;
|
|
7970
|
+
exports.CALL_MODEL_APP_FUNCTION_KEY = CALL_MODEL_APP_FUNCTION_KEY;
|
|
7822
7971
|
exports.COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION = COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION;
|
|
7823
7972
|
exports.CREATE_MODEL_APP_FUNCTION_KEY = CREATE_MODEL_APP_FUNCTION_KEY;
|
|
7824
7973
|
exports.ContextGrantedModelRolesReaderInstance = ContextGrantedModelRolesReaderInstance;
|
|
@@ -7907,6 +8056,7 @@ exports.assignUnitedStatesAddressFunction = assignUnitedStatesAddressFunction;
|
|
|
7907
8056
|
exports.assignWebsiteFileLinkFunction = assignWebsiteFileLinkFunction;
|
|
7908
8057
|
exports.assignWebsiteLinkFunction = assignWebsiteLinkFunction;
|
|
7909
8058
|
exports.buildFirebaseCollectionTypeModelTypeMap = buildFirebaseCollectionTypeModelTypeMap;
|
|
8059
|
+
exports.callModelFirebaseFunctionMapFactory = callModelFirebaseFunctionMapFactory;
|
|
7910
8060
|
exports.childFirestoreModelKey = childFirestoreModelKey;
|
|
7911
8061
|
exports.childFirestoreModelKeyPath = childFirestoreModelKeyPath;
|
|
7912
8062
|
exports.childFirestoreModelKeys = childFirestoreModelKeys;
|
|
@@ -8118,10 +8268,15 @@ exports.modifyBeforeSetInterceptAccessorFactoryFunction = modifyBeforeSetInterce
|
|
|
8118
8268
|
exports.newDocuments = newDocuments;
|
|
8119
8269
|
exports.noStringFormatInStorageUploadOptionsError = noStringFormatInStorageUploadOptionsError;
|
|
8120
8270
|
exports.offset = offset;
|
|
8271
|
+
exports.onCallCreateModelParams = onCallCreateModelParams;
|
|
8121
8272
|
exports.onCallCreateModelResult = onCallCreateModelResult;
|
|
8122
8273
|
exports.onCallCreateModelResultWithDocs = onCallCreateModelResultWithDocs;
|
|
8274
|
+
exports.onCallDeleteModelParams = onCallDeleteModelParams;
|
|
8123
8275
|
exports.onCallDevelopmentParams = onCallDevelopmentParams;
|
|
8276
|
+
exports.onCallReadModelParams = onCallReadModelParams;
|
|
8124
8277
|
exports.onCallTypedModelParams = onCallTypedModelParams;
|
|
8278
|
+
exports.onCallTypedModelParamsFunction = onCallTypedModelParamsFunction;
|
|
8279
|
+
exports.onCallUpdateModelParams = onCallUpdateModelParams;
|
|
8125
8280
|
exports.optionalFirestoreArray = optionalFirestoreArray;
|
|
8126
8281
|
exports.optionalFirestoreBoolean = optionalFirestoreBoolean;
|
|
8127
8282
|
exports.optionalFirestoreDate = optionalFirestoreDate;
|
|
@@ -8162,12 +8317,16 @@ exports.useDocumentSnapshot = useDocumentSnapshot;
|
|
|
8162
8317
|
exports.useDocumentSnapshotData = useDocumentSnapshotData;
|
|
8163
8318
|
exports.useFirebaseModelsService = useFirebaseModelsService;
|
|
8164
8319
|
exports.where = where;
|
|
8320
|
+
exports.whereDateIsAfter = whereDateIsAfter;
|
|
8321
|
+
exports.whereDateIsAfterWithSort = whereDateIsAfterWithSort;
|
|
8165
8322
|
exports.whereDateIsBefore = whereDateIsBefore;
|
|
8166
8323
|
exports.whereDateIsBeforeWithSort = whereDateIsBeforeWithSort;
|
|
8167
8324
|
exports.whereDateIsBetween = whereDateIsBetween;
|
|
8168
8325
|
exports.whereDateIsInRange = whereDateIsInRange;
|
|
8169
8326
|
exports.whereDateIsOnOrAfter = whereDateIsOnOrAfter;
|
|
8170
8327
|
exports.whereDateIsOnOrAfterWithSort = whereDateIsOnOrAfterWithSort;
|
|
8328
|
+
exports.whereDateIsOnOrBefore = whereDateIsOnOrBefore;
|
|
8329
|
+
exports.whereDateIsOnOrBeforeWithSort = whereDateIsOnOrBeforeWithSort;
|
|
8171
8330
|
exports.whereDocumentId = whereDocumentId;
|
|
8172
8331
|
exports.whereStringHasRootIdentityModelKey = whereStringHasRootIdentityModelKey;
|
|
8173
8332
|
exports.whereStringValueHasPrefix = whereStringValueHasPrefix;
|
package/index.esm.js
CHANGED
|
@@ -5031,6 +5031,58 @@ function whereDateIsOnOrAfterWithSort(fieldPath, date = new Date(), sortDirectio
|
|
|
5031
5031
|
return [orderBy(fieldPath, sortDirection != null ? sortDirection : 'asc'), whereDateIsOnOrAfter(fieldPath, date)];
|
|
5032
5032
|
}
|
|
5033
5033
|
|
|
5034
|
+
/**
|
|
5035
|
+
* Searches dates that are on or before the input date. If no date is input, uses now.
|
|
5036
|
+
*
|
|
5037
|
+
* @param field
|
|
5038
|
+
* @param date
|
|
5039
|
+
* @param sortDirection
|
|
5040
|
+
*/
|
|
5041
|
+
|
|
5042
|
+
function whereDateIsOnOrBefore(fieldPath, date = new Date()) {
|
|
5043
|
+
return where(fieldPath, '<=', date.toISOString());
|
|
5044
|
+
}
|
|
5045
|
+
|
|
5046
|
+
/**
|
|
5047
|
+
* Searches dates that are on or before the input date. If no date is input, uses now.
|
|
5048
|
+
*
|
|
5049
|
+
* Sorts in descending order by default.
|
|
5050
|
+
*
|
|
5051
|
+
* @param field
|
|
5052
|
+
* @param date
|
|
5053
|
+
* @param sortDirection
|
|
5054
|
+
*/
|
|
5055
|
+
|
|
5056
|
+
function whereDateIsOnOrBeforeWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
5057
|
+
return [orderBy(fieldPath, sortDirection != null ? sortDirection : 'desc'), whereDateIsOnOrBefore(fieldPath, date)];
|
|
5058
|
+
}
|
|
5059
|
+
|
|
5060
|
+
/**
|
|
5061
|
+
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
5062
|
+
*
|
|
5063
|
+
* @param field
|
|
5064
|
+
* @param date
|
|
5065
|
+
* @param sortDirection
|
|
5066
|
+
*/
|
|
5067
|
+
|
|
5068
|
+
function whereDateIsAfter(fieldPath, date = new Date()) {
|
|
5069
|
+
return where(fieldPath, '>', date.toISOString());
|
|
5070
|
+
}
|
|
5071
|
+
|
|
5072
|
+
/**
|
|
5073
|
+
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
5074
|
+
*
|
|
5075
|
+
* Sorts in ascending order by default.
|
|
5076
|
+
*
|
|
5077
|
+
* @param field
|
|
5078
|
+
* @param date
|
|
5079
|
+
* @param sortDirection
|
|
5080
|
+
*/
|
|
5081
|
+
|
|
5082
|
+
function whereDateIsAfterWithSort(fieldPath, date = new Date(), sortDirection) {
|
|
5083
|
+
return [orderBy(fieldPath, sortDirection != null ? sortDirection : 'asc'), whereDateIsAfter(fieldPath, date)];
|
|
5084
|
+
}
|
|
5085
|
+
|
|
5034
5086
|
/**
|
|
5035
5087
|
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
5036
5088
|
*
|
|
@@ -5046,7 +5098,7 @@ function whereDateIsBefore(fieldPath, date = new Date()) {
|
|
|
5046
5098
|
/**
|
|
5047
5099
|
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
5048
5100
|
*
|
|
5049
|
-
* Sorts in
|
|
5101
|
+
* Sorts in descending order by default.
|
|
5050
5102
|
*
|
|
5051
5103
|
* @param field
|
|
5052
5104
|
* @param date
|
|
@@ -7504,44 +7556,95 @@ function lazyFirebaseFunctionsFactory(configMap) {
|
|
|
7504
7556
|
};
|
|
7505
7557
|
}
|
|
7506
7558
|
|
|
7559
|
+
/**
|
|
7560
|
+
* Set of known call types. The basic CRUD functions.
|
|
7561
|
+
*/
|
|
7562
|
+
|
|
7563
|
+
/**
|
|
7564
|
+
* A call function type specifier.
|
|
7565
|
+
*/
|
|
7566
|
+
|
|
7567
|
+
/**
|
|
7568
|
+
*
|
|
7569
|
+
*/
|
|
7570
|
+
|
|
7571
|
+
/**
|
|
7572
|
+
* Creates a OnCallTypedModelParamsFunction
|
|
7573
|
+
*
|
|
7574
|
+
* @param call
|
|
7575
|
+
* @returns
|
|
7576
|
+
*/
|
|
7577
|
+
function onCallTypedModelParamsFunction(call) {
|
|
7578
|
+
return (modelTypeInput, data, specifier) => {
|
|
7579
|
+
const modelType = typeof modelTypeInput === 'string' ? modelTypeInput : modelTypeInput.modelType;
|
|
7580
|
+
if (!modelType) {
|
|
7581
|
+
throw new Error('modelType is required.');
|
|
7582
|
+
}
|
|
7583
|
+
const result = {
|
|
7584
|
+
call,
|
|
7585
|
+
modelType,
|
|
7586
|
+
data
|
|
7587
|
+
};
|
|
7588
|
+
if (specifier != null) {
|
|
7589
|
+
result.specifier = specifier;
|
|
7590
|
+
}
|
|
7591
|
+
return result;
|
|
7592
|
+
};
|
|
7593
|
+
}
|
|
7594
|
+
|
|
7595
|
+
/**
|
|
7596
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'create'
|
|
7597
|
+
*/
|
|
7598
|
+
const onCallCreateModelParams = onCallTypedModelParamsFunction('create');
|
|
7599
|
+
|
|
7600
|
+
/**
|
|
7601
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'read'
|
|
7602
|
+
*/
|
|
7603
|
+
const onCallReadModelParams = onCallTypedModelParamsFunction('read');
|
|
7604
|
+
|
|
7605
|
+
/**
|
|
7606
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'update'
|
|
7607
|
+
*/
|
|
7608
|
+
const onCallUpdateModelParams = onCallTypedModelParamsFunction('update');
|
|
7609
|
+
|
|
7610
|
+
/**
|
|
7611
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'delete'
|
|
7612
|
+
*/
|
|
7613
|
+
const onCallDeleteModelParams = onCallTypedModelParamsFunction('delete');
|
|
7614
|
+
|
|
7507
7615
|
/**
|
|
7508
7616
|
* Creates a OnCallTypedModelParams
|
|
7509
7617
|
*
|
|
7618
|
+
* @deprecated use onCallTypedModelParamsFunction instead.
|
|
7619
|
+
*
|
|
7510
7620
|
* @param modelType
|
|
7511
7621
|
* @param data
|
|
7512
7622
|
* @returns
|
|
7513
7623
|
*/
|
|
7514
|
-
function onCallTypedModelParams(modelTypeInput, data, specifier) {
|
|
7515
|
-
|
|
7516
|
-
if (!modelType) {
|
|
7517
|
-
throw new Error('modelType is required.');
|
|
7518
|
-
}
|
|
7519
|
-
const result = {
|
|
7520
|
-
modelType,
|
|
7521
|
-
data
|
|
7522
|
-
};
|
|
7523
|
-
if (specifier != null) {
|
|
7524
|
-
result.specifier = specifier;
|
|
7525
|
-
}
|
|
7526
|
-
return result;
|
|
7624
|
+
function onCallTypedModelParams(modelTypeInput, data, specifier, call) {
|
|
7625
|
+
return onCallTypedModelParamsFunction(call)(modelTypeInput, data, specifier);
|
|
7527
7626
|
}
|
|
7528
7627
|
|
|
7529
7628
|
/**
|
|
7530
|
-
* Key used on the front-end and backend that refers to
|
|
7629
|
+
* Key used on the front-end and backend that refers to the call function.
|
|
7531
7630
|
*/
|
|
7532
|
-
const
|
|
7631
|
+
const CALL_MODEL_APP_FUNCTION_KEY = 'callModel';
|
|
7632
|
+
|
|
7533
7633
|
/**
|
|
7534
|
-
*
|
|
7634
|
+
* OnCallTypedModelParams for Create calls.
|
|
7535
7635
|
*/
|
|
7536
|
-
|
|
7636
|
+
|
|
7537
7637
|
/**
|
|
7538
|
-
*
|
|
7638
|
+
* OnCallTypedModelParams for Read calls.
|
|
7539
7639
|
*/
|
|
7540
|
-
|
|
7640
|
+
|
|
7541
7641
|
/**
|
|
7542
|
-
*
|
|
7642
|
+
* OnCallTypedModelParams for Update calls.
|
|
7643
|
+
*/
|
|
7644
|
+
|
|
7645
|
+
/**
|
|
7646
|
+
* OnCallTypedModelParams for Delete calls.
|
|
7543
7647
|
*/
|
|
7544
|
-
const DELETE_MODEL_APP_FUNCTION_KEY = 'deleteModel';
|
|
7545
7648
|
|
|
7546
7649
|
// MARK: Result
|
|
7547
7650
|
|
|
@@ -7554,6 +7657,35 @@ function onCallCreateModelResult(modelKeys) {
|
|
|
7554
7657
|
};
|
|
7555
7658
|
}
|
|
7556
7659
|
|
|
7660
|
+
// MARK: Compat
|
|
7661
|
+
/**
|
|
7662
|
+
* Key used on the front-end and backend that refers to a specific function for creating models.
|
|
7663
|
+
*
|
|
7664
|
+
* @deprecated Replaced by the callModel function.
|
|
7665
|
+
*/
|
|
7666
|
+
const CREATE_MODEL_APP_FUNCTION_KEY = 'createModel';
|
|
7667
|
+
|
|
7668
|
+
/**
|
|
7669
|
+
* Key used on the front-end and backend that refers to a specific function for reading models.
|
|
7670
|
+
*
|
|
7671
|
+
* @deprecated Replaced by the callModel function.
|
|
7672
|
+
*/
|
|
7673
|
+
const READ_MODEL_APP_FUNCTION_KEY = 'readModel';
|
|
7674
|
+
|
|
7675
|
+
/**
|
|
7676
|
+
* Key used on the front-end and backend that refers to a specific function for updating models.
|
|
7677
|
+
*
|
|
7678
|
+
* @deprecated Replaced by the callModel function.
|
|
7679
|
+
*/
|
|
7680
|
+
const UPDATE_MODEL_APP_FUNCTION_KEY = 'updateModel';
|
|
7681
|
+
|
|
7682
|
+
/**
|
|
7683
|
+
* Key used on the front-end and backend that refers to a specific function for deleting models.
|
|
7684
|
+
*
|
|
7685
|
+
* @deprecated Replaced by the callModel function.
|
|
7686
|
+
*/
|
|
7687
|
+
const DELETE_MODEL_APP_FUNCTION_KEY = 'deleteModel';
|
|
7688
|
+
|
|
7557
7689
|
/**
|
|
7558
7690
|
* Used to specify which function to direct requests to.
|
|
7559
7691
|
*/
|
|
@@ -7577,6 +7709,104 @@ const MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER = ',';
|
|
|
7577
7709
|
* Used for building a FirebaseFunctionMap<M> for a specific Functions instance.
|
|
7578
7710
|
*/
|
|
7579
7711
|
|
|
7712
|
+
/**
|
|
7713
|
+
* Creates a ModelFirebaseFunctionMapFactory for the input config that targets the "callModel" Firebase function.
|
|
7714
|
+
*
|
|
7715
|
+
* @param configMap
|
|
7716
|
+
* @param crudConfigMap
|
|
7717
|
+
* @returns
|
|
7718
|
+
*/
|
|
7719
|
+
function callModelFirebaseFunctionMapFactory(configMap, crudConfigMap) {
|
|
7720
|
+
const functionFactory = firebaseFunctionMapFactory(configMap);
|
|
7721
|
+
return functionsInstance => {
|
|
7722
|
+
const functionMap = functionFactory(functionsInstance);
|
|
7723
|
+
const _callFn = cachedGetter(() => httpsCallable(functionsInstance, CALL_MODEL_APP_FUNCTION_KEY));
|
|
7724
|
+
function makeCallFunction(call, fn, modelType, specifier) {
|
|
7725
|
+
return mapHttpsCallable(fn(), {
|
|
7726
|
+
mapInput: data => onCallTypedModelParams(modelType, data, specifier, call)
|
|
7727
|
+
}, true);
|
|
7728
|
+
}
|
|
7729
|
+
function makeCallSpecifiers(call, fn, modelType, specifierKeys) {
|
|
7730
|
+
const modelTypeSuffix = capitalizeFirstLetter(modelType);
|
|
7731
|
+
const specifiers = {};
|
|
7732
|
+
specifierKeys.forEach(inputSpecifier => {
|
|
7733
|
+
const specifier = inputSpecifier === MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT ? '' : inputSpecifier;
|
|
7734
|
+
const specifierFn = makeCallFunction(call, fn, modelType, inputSpecifier);
|
|
7735
|
+
const fullSpecifierName = `${call}${modelTypeSuffix}${capitalizeFirstLetter(specifier)}`;
|
|
7736
|
+
specifiers[fullSpecifierName] = specifierFn;
|
|
7737
|
+
const shortSpecifierName = lowercaseFirstLetter(specifier) || call;
|
|
7738
|
+
specifiers[shortSpecifierName] = specifierFn;
|
|
7739
|
+
});
|
|
7740
|
+
return specifiers;
|
|
7741
|
+
}
|
|
7742
|
+
const result = build({
|
|
7743
|
+
base: functionMap,
|
|
7744
|
+
build: x => {
|
|
7745
|
+
Object.entries(crudConfigMap).forEach(([modelType, config]) => {
|
|
7746
|
+
const modelTypeSuffix = capitalizeFirstLetter(modelType);
|
|
7747
|
+
const {
|
|
7748
|
+
included: crudFunctionKeys,
|
|
7749
|
+
excluded: specifiedCallFunctionKeys
|
|
7750
|
+
} = separateValues(config, x => x.indexOf(':') === -1);
|
|
7751
|
+
const crudFunctions = new Set(crudFunctionKeys);
|
|
7752
|
+
const specifiedCallFunctionTuples = specifiedCallFunctionKeys.map(x => {
|
|
7753
|
+
const [crud, functionsSplit] = x.split(':', 2);
|
|
7754
|
+
const functions = functionsSplit.split(MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER);
|
|
7755
|
+
return [crud, functions];
|
|
7756
|
+
});
|
|
7757
|
+
|
|
7758
|
+
// check that there isn't a repeat crud key configured, which disallowed configuration and would cause some functions to be ignored
|
|
7759
|
+
const encounteredCalls = new Set();
|
|
7760
|
+
function assertCallKeyNotEncountered(crud) {
|
|
7761
|
+
if (encounteredCalls.has(crud)) {
|
|
7762
|
+
throw new Error(`Cannot have multiple declarations of the same crud. Found repeat for crud: ${crud}`);
|
|
7763
|
+
} else {
|
|
7764
|
+
encounteredCalls.add(crud);
|
|
7765
|
+
}
|
|
7766
|
+
}
|
|
7767
|
+
crudFunctions.forEach(assertCallKeyNotEncountered);
|
|
7768
|
+
specifiedCallFunctionTuples.forEach(([crud]) => assertCallKeyNotEncountered(crud));
|
|
7769
|
+
|
|
7770
|
+
// build and add the functions
|
|
7771
|
+
const specifierFunctions = new Map(specifiedCallFunctionTuples);
|
|
7772
|
+
function addCallFunctions(crud, fn, modelType) {
|
|
7773
|
+
let crudFns;
|
|
7774
|
+
if (crudFunctions.has(crud)) {
|
|
7775
|
+
crudFns = makeCallFunction(crud, fn, modelType);
|
|
7776
|
+
} else if (specifierFunctions.has(crud)) {
|
|
7777
|
+
crudFns = makeCallSpecifiers(crud, fn, modelType, specifierFunctions.get(crud));
|
|
7778
|
+
}
|
|
7779
|
+
if (crudFns) {
|
|
7780
|
+
modelTypeCalls[`${crud}${modelTypeSuffix}`] = crudFns;
|
|
7781
|
+
}
|
|
7782
|
+
}
|
|
7783
|
+
const modelTypeCalls = {};
|
|
7784
|
+
|
|
7785
|
+
// add functions for each call type
|
|
7786
|
+
addCallFunctions('create', _callFn, modelType);
|
|
7787
|
+
addCallFunctions('read', _callFn, modelType);
|
|
7788
|
+
addCallFunctions('update', _callFn, modelType);
|
|
7789
|
+
addCallFunctions('delete', _callFn, modelType);
|
|
7790
|
+
|
|
7791
|
+
// tslint:disable-next-line
|
|
7792
|
+
x[modelType] = modelTypeCalls;
|
|
7793
|
+
});
|
|
7794
|
+
}
|
|
7795
|
+
});
|
|
7796
|
+
return result;
|
|
7797
|
+
};
|
|
7798
|
+
}
|
|
7799
|
+
|
|
7800
|
+
// MARK: Compat
|
|
7801
|
+
/**
|
|
7802
|
+
* @deprecated move to using callModelFirebaseFunctionMapFactory instead and the call configuration in general.
|
|
7803
|
+
*
|
|
7804
|
+
* This will be removed in the next release.
|
|
7805
|
+
*
|
|
7806
|
+
* @param configMap
|
|
7807
|
+
* @param crudConfigMap
|
|
7808
|
+
* @returns
|
|
7809
|
+
*/
|
|
7580
7810
|
function modelFirebaseFunctionMapFactory(configMap, crudConfigMap) {
|
|
7581
7811
|
const functionFactory = firebaseFunctionMapFactory(configMap);
|
|
7582
7812
|
return functionsInstance => {
|
|
@@ -8850,4 +9080,4 @@ function systemStateFirestoreCollection(firestoreContext, converters) {
|
|
|
8850
9080
|
});
|
|
8851
9081
|
}
|
|
8852
9082
|
|
|
8853
|
-
export { AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, BASE_MODEL_STORAGE_FILE_PATH, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_MODEL_APP_FUNCTION_KEY, ContextGrantedModelRolesReaderInstance, DEFAULT_DATE_CELL_RANGE_VALUE, DEFAULT_FIRESTORE_DATE_CELL_SCHEDULE_VALUE, DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, DEFAULT_FIRESTORE_STRING_FIELD_VALUE, DEFAULT_FIRESTORE_UNITED_STATES_ADDRESS_VALUE, DEFAULT_FIRESTORE_WEBSITE_FILE_LINK_VALUE, DEFAULT_ITERATE_FIRESTORE_DOCUMENT_SNAPSHOT_BATCHES_BATCH_SIZE, DEFAULT_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_WEBSITE_LINK, DELETE_MODEL_APP_FUNCTION_KEY, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_AUTH_WRONG_PASSWORD, FIREBASE_DEVELOPMENT_FUNCTIONS_MAP_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FIRESTORE_COLLECTION_NAME_SEPARATOR, FIRESTORE_DUMMY_MODEL_KEY, FIRESTORE_EMPTY_VALUE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, FIRESTORE_ITEM_PAGE_ITERATOR, FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT, FIRESTORE_MODEL_ID_REGEX, FIRESTORE_MODEL_KEY_REGEX, FIRESTORE_MODEL_KEY_REGEX_STRICT, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_PASSTHROUGH_FIELD, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FirebaseDevelopmentFunctions, FirebaseModelPermissionServiceInstance, FirebaseServerError, FirestoreAccessorStreamMode, FirestoreDocumentContextType, FirestoreItemPageIterationInstance, InferredTargetModelIdParams, InferredTargetModelParams, IsFirestoreModelId, IsFirestoreModelKey, MAX_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MIN_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER, MODEL_STORAGE_FILE_SLASH_PATH_FACTORY, ModifyBeforeSetFirestoreDocumentDataAccessorWrapper, READ_MODEL_APP_FUNCTION_KEY, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFirebaseFunctionParams, ScheduledFunctionDevelopmentFunctionTypeEnum, SystemStateDocument, SystemStateFirestoreCollections, TargetModelIdParams, TargetModelParams, UPDATE_MODEL_APP_FUNCTION_KEY, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, dataFromDocumentSnapshots, dataFromSnapshotStream, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputContraints, firebaseAuthErrorToReadableError, firebaseFirestoreClientDrivers, firebaseFirestoreQueryConstraintFunctionsDriver, firebaseFirestoreQueryDriver, firebaseFunctionMapFactory, firebaseModelLoader, firebaseModelPermissionService, firebaseModelService, firebaseModelServiceFactory, firebaseModelsService, firebaseQueryItemAccumulator, firebaseQuerySnapshotAccumulator, firebaseStorageBucketFolderPath, firebaseStorageClientAccessorDriver, firebaseStorageClientAccessorFile, firebaseStorageClientAccessorFolder, firebaseStorageClientDrivers, firebaseStorageClientListFilesResultFactory, firebaseStorageContextFactory, firebaseStorageFileExists, firebaseStorageFilePathFromStorageFilePath, firebaseStorageRefForStorageFilePath, firestoreArray, firestoreArrayMap, firestoreBitwiseObjectMap, firestoreBitwiseSet, firestoreBitwiseSetMap, firestoreBoolean, firestoreClientAccessorDriver, firestoreClientIncrementUpdateToUpdateData, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdString, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitedFirestoreDocumentAccessorFactory, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, modelFirebaseFunctionMapFactory, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, noStringFormatInStorageUploadOptionsError, offset, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDevelopmentParams, onCallTypedModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, orderBy, orderByDocumentId, readFirestoreModelKey, replaceConstraints, selectFromFirebaseModelsService, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, startAfter, startAt, startAtValue, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, streamFromOnSnapshot, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, twoWayFlatFirestoreModelKey, unsupportedFirestoreDriverFunctionError, updateWithAccessorUpdateAndConverterFunction, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, where, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
|
|
9083
|
+
export { AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_MODEL_APP_FUNCTION_KEY, ContextGrantedModelRolesReaderInstance, DEFAULT_DATE_CELL_RANGE_VALUE, DEFAULT_FIRESTORE_DATE_CELL_SCHEDULE_VALUE, DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, DEFAULT_FIRESTORE_STRING_FIELD_VALUE, DEFAULT_FIRESTORE_UNITED_STATES_ADDRESS_VALUE, DEFAULT_FIRESTORE_WEBSITE_FILE_LINK_VALUE, DEFAULT_ITERATE_FIRESTORE_DOCUMENT_SNAPSHOT_BATCHES_BATCH_SIZE, DEFAULT_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_WEBSITE_LINK, DELETE_MODEL_APP_FUNCTION_KEY, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_AUTH_WRONG_PASSWORD, FIREBASE_DEVELOPMENT_FUNCTIONS_MAP_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FIRESTORE_COLLECTION_NAME_SEPARATOR, FIRESTORE_DUMMY_MODEL_KEY, FIRESTORE_EMPTY_VALUE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, FIRESTORE_ITEM_PAGE_ITERATOR, FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT, FIRESTORE_MODEL_ID_REGEX, FIRESTORE_MODEL_KEY_REGEX, FIRESTORE_MODEL_KEY_REGEX_STRICT, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_PASSTHROUGH_FIELD, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FirebaseDevelopmentFunctions, FirebaseModelPermissionServiceInstance, FirebaseServerError, FirestoreAccessorStreamMode, FirestoreDocumentContextType, FirestoreItemPageIterationInstance, InferredTargetModelIdParams, InferredTargetModelParams, IsFirestoreModelId, IsFirestoreModelKey, MAX_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MIN_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER, MODEL_STORAGE_FILE_SLASH_PATH_FACTORY, ModifyBeforeSetFirestoreDocumentDataAccessorWrapper, READ_MODEL_APP_FUNCTION_KEY, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFirebaseFunctionParams, ScheduledFunctionDevelopmentFunctionTypeEnum, SystemStateDocument, SystemStateFirestoreCollections, TargetModelIdParams, TargetModelParams, UPDATE_MODEL_APP_FUNCTION_KEY, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, callModelFirebaseFunctionMapFactory, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, dataFromDocumentSnapshots, dataFromSnapshotStream, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputContraints, firebaseAuthErrorToReadableError, firebaseFirestoreClientDrivers, firebaseFirestoreQueryConstraintFunctionsDriver, firebaseFirestoreQueryDriver, firebaseFunctionMapFactory, firebaseModelLoader, firebaseModelPermissionService, firebaseModelService, firebaseModelServiceFactory, firebaseModelsService, firebaseQueryItemAccumulator, firebaseQuerySnapshotAccumulator, firebaseStorageBucketFolderPath, firebaseStorageClientAccessorDriver, firebaseStorageClientAccessorFile, firebaseStorageClientAccessorFolder, firebaseStorageClientDrivers, firebaseStorageClientListFilesResultFactory, firebaseStorageContextFactory, firebaseStorageFileExists, firebaseStorageFilePathFromStorageFilePath, firebaseStorageRefForStorageFilePath, firestoreArray, firestoreArrayMap, firestoreBitwiseObjectMap, firestoreBitwiseSet, firestoreBitwiseSetMap, firestoreBoolean, firestoreClientAccessorDriver, firestoreClientIncrementUpdateToUpdateData, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdString, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitedFirestoreDocumentAccessorFactory, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, modelFirebaseFunctionMapFactory, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, noStringFormatInStorageUploadOptionsError, offset, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, orderBy, orderByDocumentId, readFirestoreModelKey, replaceConstraints, selectFromFirebaseModelsService, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, startAfter, startAt, startAtValue, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, streamFromOnSnapshot, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, twoWayFlatFirestoreModelKey, unsupportedFirestoreDriverFunctionError, updateWithAccessorUpdateAndConverterFunction, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
|
package/package.json
CHANGED
|
@@ -77,4 +77,21 @@ export type ModelFirebaseFunctionMap<M extends FirebaseFunctionTypeMap, C extend
|
|
|
77
77
|
* Used for building a FirebaseFunctionMap<M> for a specific Functions instance.
|
|
78
78
|
*/
|
|
79
79
|
export type ModelFirebaseFunctionMapFactory<M extends FirebaseFunctionTypeMap, U extends ModelFirebaseCrudFunctionTypeMap> = (functionsInstance: Functions) => ModelFirebaseFunctionMap<M, U>;
|
|
80
|
+
/**
|
|
81
|
+
* Creates a ModelFirebaseFunctionMapFactory for the input config that targets the "callModel" Firebase function.
|
|
82
|
+
*
|
|
83
|
+
* @param configMap
|
|
84
|
+
* @param crudConfigMap
|
|
85
|
+
* @returns
|
|
86
|
+
*/
|
|
87
|
+
export declare function callModelFirebaseFunctionMapFactory<M extends FirebaseFunctionTypeMap, U extends ModelFirebaseCrudFunctionTypeMap>(configMap: FirebaseFunctionTypeConfigMap<M>, crudConfigMap: ModelFirebaseCrudFunctionConfigMap<U, FirestoreModelIdentity>): ModelFirebaseFunctionMapFactory<M, U>;
|
|
88
|
+
/**
|
|
89
|
+
* @deprecated move to using callModelFirebaseFunctionMapFactory instead and the call configuration in general.
|
|
90
|
+
*
|
|
91
|
+
* This will be removed in the next release.
|
|
92
|
+
*
|
|
93
|
+
* @param configMap
|
|
94
|
+
* @param crudConfigMap
|
|
95
|
+
* @returns
|
|
96
|
+
*/
|
|
80
97
|
export declare function modelFirebaseFunctionMapFactory<M extends FirebaseFunctionTypeMap, U extends ModelFirebaseCrudFunctionTypeMap>(configMap: FirebaseFunctionTypeConfigMap<M>, crudConfigMap: ModelFirebaseCrudFunctionConfigMap<U, FirestoreModelIdentity>): ModelFirebaseFunctionMapFactory<M, U>;
|
|
@@ -90,6 +90,46 @@ export declare function whereDateIsOnOrAfter(field: FieldPathOrStringPath, date?
|
|
|
90
90
|
*/
|
|
91
91
|
export declare function whereDateIsOnOrAfterWithSort<T>(field: StringKeyPropertyKeys<T>, date?: Date, sortDirection?: OrderByDirection): FirestoreQueryConstraint[];
|
|
92
92
|
export declare function whereDateIsOnOrAfterWithSort(field: FieldPathOrStringPath, date?: Date, sortDirection?: OrderByDirection): FirestoreQueryConstraint[];
|
|
93
|
+
/**
|
|
94
|
+
* Searches dates that are on or before the input date. If no date is input, uses now.
|
|
95
|
+
*
|
|
96
|
+
* @param field
|
|
97
|
+
* @param date
|
|
98
|
+
* @param sortDirection
|
|
99
|
+
*/
|
|
100
|
+
export declare function whereDateIsOnOrBefore<T>(field: StringKeyPropertyKeys<T>, date?: Date): FirestoreQueryConstraint;
|
|
101
|
+
export declare function whereDateIsOnOrBefore(field: FieldPathOrStringPath, date?: Date): FirestoreQueryConstraint;
|
|
102
|
+
/**
|
|
103
|
+
* Searches dates that are on or before the input date. If no date is input, uses now.
|
|
104
|
+
*
|
|
105
|
+
* Sorts in descending order by default.
|
|
106
|
+
*
|
|
107
|
+
* @param field
|
|
108
|
+
* @param date
|
|
109
|
+
* @param sortDirection
|
|
110
|
+
*/
|
|
111
|
+
export declare function whereDateIsOnOrBeforeWithSort<T>(field: StringKeyPropertyKeys<T>, date?: Date, sortDirection?: OrderByDirection): FirestoreQueryConstraint[];
|
|
112
|
+
export declare function whereDateIsOnOrBeforeWithSort(field: FieldPathOrStringPath, date?: Date, sortDirection?: OrderByDirection): FirestoreQueryConstraint[];
|
|
113
|
+
/**
|
|
114
|
+
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
115
|
+
*
|
|
116
|
+
* @param field
|
|
117
|
+
* @param date
|
|
118
|
+
* @param sortDirection
|
|
119
|
+
*/
|
|
120
|
+
export declare function whereDateIsAfter<T>(field: StringKeyPropertyKeys<T>, date?: Date): FirestoreQueryConstraint;
|
|
121
|
+
export declare function whereDateIsAfter(field: FieldPathOrStringPath, date?: Date): FirestoreQueryConstraint;
|
|
122
|
+
/**
|
|
123
|
+
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
124
|
+
*
|
|
125
|
+
* Sorts in ascending order by default.
|
|
126
|
+
*
|
|
127
|
+
* @param field
|
|
128
|
+
* @param date
|
|
129
|
+
* @param sortDirection
|
|
130
|
+
*/
|
|
131
|
+
export declare function whereDateIsAfterWithSort<T>(field: StringKeyPropertyKeys<T>, date?: Date, sortDirection?: OrderByDirection): FirestoreQueryConstraint[];
|
|
132
|
+
export declare function whereDateIsAfterWithSort(field: FieldPathOrStringPath, date?: Date, sortDirection?: OrderByDirection): FirestoreQueryConstraint[];
|
|
93
133
|
/**
|
|
94
134
|
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
95
135
|
*
|
|
@@ -102,7 +142,7 @@ export declare function whereDateIsBefore(field: FieldPathOrStringPath, date?: D
|
|
|
102
142
|
/**
|
|
103
143
|
* Searches dates that are on or after the input date. If no date is input, uses now.
|
|
104
144
|
*
|
|
105
|
-
* Sorts in
|
|
145
|
+
* Sorts in descending order by default.
|
|
106
146
|
*
|
|
107
147
|
* @param field
|
|
108
148
|
* @param date
|
|
@@ -1,37 +1,84 @@
|
|
|
1
1
|
import { type ArrayOrValue } from '@dereekb/util';
|
|
2
2
|
import { type DocumentReferenceRef } from '../firestore/reference';
|
|
3
3
|
import { type FirestoreModelKey, type FirestoreModelType, type FirestoreModelTypeRef } from '../firestore/collection/collection';
|
|
4
|
+
/**
|
|
5
|
+
* Set of known call types. The basic CRUD functions.
|
|
6
|
+
*/
|
|
7
|
+
export type KnownOnCallFunctionType = 'create' | 'read' | 'update' | 'delete';
|
|
8
|
+
/**
|
|
9
|
+
* A call function type specifier.
|
|
10
|
+
*/
|
|
11
|
+
export type OnCallFunctionType = KnownOnCallFunctionType | string;
|
|
4
12
|
export interface OnCallTypedModelParams<T = unknown> extends FirestoreModelTypeRef {
|
|
5
|
-
|
|
6
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Call type. Should typically be defined.
|
|
15
|
+
*/
|
|
16
|
+
readonly call?: OnCallFunctionType;
|
|
17
|
+
/**
|
|
18
|
+
* Call sub-function specifier.
|
|
19
|
+
*/
|
|
20
|
+
readonly specifier?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Call data
|
|
23
|
+
*/
|
|
24
|
+
readonly data: T;
|
|
7
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
*/
|
|
29
|
+
export type OnCallTypeModelParamsFunction = <T>(modelTypeInput: FirestoreModelType | FirestoreModelTypeRef, data: T, specifier?: string) => OnCallTypedModelParams<T>;
|
|
30
|
+
/**
|
|
31
|
+
* Creates a OnCallTypedModelParamsFunction
|
|
32
|
+
*
|
|
33
|
+
* @param call
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
export declare function onCallTypedModelParamsFunction(call?: string): OnCallTypeModelParamsFunction;
|
|
37
|
+
/**
|
|
38
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'create'
|
|
39
|
+
*/
|
|
40
|
+
export declare const onCallCreateModelParams: OnCallTypeModelParamsFunction;
|
|
41
|
+
/**
|
|
42
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'read'
|
|
43
|
+
*/
|
|
44
|
+
export declare const onCallReadModelParams: OnCallTypeModelParamsFunction;
|
|
45
|
+
/**
|
|
46
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'update'
|
|
47
|
+
*/
|
|
48
|
+
export declare const onCallUpdateModelParams: OnCallTypeModelParamsFunction;
|
|
49
|
+
/**
|
|
50
|
+
* Pre-configured OnCallTypedModelParamsFunctions for 'delete'
|
|
51
|
+
*/
|
|
52
|
+
export declare const onCallDeleteModelParams: OnCallTypeModelParamsFunction;
|
|
8
53
|
/**
|
|
9
54
|
* Creates a OnCallTypedModelParams
|
|
10
55
|
*
|
|
56
|
+
* @deprecated use onCallTypedModelParamsFunction instead.
|
|
57
|
+
*
|
|
11
58
|
* @param modelType
|
|
12
59
|
* @param data
|
|
13
60
|
* @returns
|
|
14
61
|
*/
|
|
15
|
-
export declare function onCallTypedModelParams<T>(modelTypeInput: FirestoreModelType | FirestoreModelTypeRef, data: T, specifier?: string): OnCallTypedModelParams<T>;
|
|
62
|
+
export declare function onCallTypedModelParams<T>(modelTypeInput: FirestoreModelType | FirestoreModelTypeRef, data: T, specifier?: string, call?: string): OnCallTypedModelParams<T>;
|
|
16
63
|
/**
|
|
17
|
-
* Key used on the front-end and backend that refers to
|
|
64
|
+
* Key used on the front-end and backend that refers to the call function.
|
|
65
|
+
*/
|
|
66
|
+
export declare const CALL_MODEL_APP_FUNCTION_KEY = "callModel";
|
|
67
|
+
/**
|
|
68
|
+
* OnCallTypedModelParams for Create calls.
|
|
18
69
|
*/
|
|
19
|
-
export declare const CREATE_MODEL_APP_FUNCTION_KEY = "createModel";
|
|
20
70
|
export type OnCallCreateModelParams<T = unknown> = OnCallTypedModelParams<T>;
|
|
21
71
|
/**
|
|
22
|
-
*
|
|
72
|
+
* OnCallTypedModelParams for Read calls.
|
|
23
73
|
*/
|
|
24
|
-
export declare const READ_MODEL_APP_FUNCTION_KEY = "readModel";
|
|
25
74
|
export type OnCallReadModelParams<T = unknown> = OnCallTypedModelParams<T>;
|
|
26
75
|
/**
|
|
27
|
-
*
|
|
76
|
+
* OnCallTypedModelParams for Update calls.
|
|
28
77
|
*/
|
|
29
|
-
export declare const UPDATE_MODEL_APP_FUNCTION_KEY = "updateModel";
|
|
30
78
|
export type OnCallUpdateModelParams<T = unknown> = OnCallTypedModelParams<T>;
|
|
31
79
|
/**
|
|
32
|
-
*
|
|
80
|
+
* OnCallTypedModelParams for Delete calls.
|
|
33
81
|
*/
|
|
34
|
-
export declare const DELETE_MODEL_APP_FUNCTION_KEY = "deleteModel";
|
|
35
82
|
export type OnCallDeleteModelParams<T = unknown> = OnCallTypedModelParams<T>;
|
|
36
83
|
export interface OnCallCreateModelResult {
|
|
37
84
|
/**
|
|
@@ -41,3 +88,27 @@ export interface OnCallCreateModelResult {
|
|
|
41
88
|
}
|
|
42
89
|
export declare function onCallCreateModelResultWithDocs(result: ArrayOrValue<DocumentReferenceRef<unknown>>): OnCallCreateModelResult;
|
|
43
90
|
export declare function onCallCreateModelResult(modelKeys: ArrayOrValue<FirestoreModelKey>): OnCallCreateModelResult;
|
|
91
|
+
/**
|
|
92
|
+
* Key used on the front-end and backend that refers to a specific function for creating models.
|
|
93
|
+
*
|
|
94
|
+
* @deprecated Replaced by the callModel function.
|
|
95
|
+
*/
|
|
96
|
+
export declare const CREATE_MODEL_APP_FUNCTION_KEY = "createModel";
|
|
97
|
+
/**
|
|
98
|
+
* Key used on the front-end and backend that refers to a specific function for reading models.
|
|
99
|
+
*
|
|
100
|
+
* @deprecated Replaced by the callModel function.
|
|
101
|
+
*/
|
|
102
|
+
export declare const READ_MODEL_APP_FUNCTION_KEY = "readModel";
|
|
103
|
+
/**
|
|
104
|
+
* Key used on the front-end and backend that refers to a specific function for updating models.
|
|
105
|
+
*
|
|
106
|
+
* @deprecated Replaced by the callModel function.
|
|
107
|
+
*/
|
|
108
|
+
export declare const UPDATE_MODEL_APP_FUNCTION_KEY = "updateModel";
|
|
109
|
+
/**
|
|
110
|
+
* Key used on the front-end and backend that refers to a specific function for deleting models.
|
|
111
|
+
*
|
|
112
|
+
* @deprecated Replaced by the callModel function.
|
|
113
|
+
*/
|
|
114
|
+
export declare const DELETE_MODEL_APP_FUNCTION_KEY = "deleteModel";
|
package/test/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [10.0.19](https://github.com/dereekb/dbx-components/compare/v10.0.18-dev...v10.0.19) (2024-02-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [10.0.18](https://github.com/dereekb/dbx-components/compare/v10.0.17-dev...v10.0.18) (2024-02-13)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
5
13
|
## [10.0.17](https://github.com/dereekb/dbx-components/compare/v10.0.16-dev...v10.0.17) (2024-02-06)
|
|
6
14
|
|
|
7
15
|
|
package/test/package.json
CHANGED
|
@@ -661,6 +661,28 @@ function describeFirestoreQueryDriverTests(f) {
|
|
|
661
661
|
* Since we choose to store dates as strings, we can compare ranges of dates.
|
|
662
662
|
*/
|
|
663
663
|
describe('Searching Date Strings', () => {
|
|
664
|
+
describe('whereDateIsAfterWithSort()', () => {
|
|
665
|
+
it('should return models with dates after the input.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
666
|
+
var _a, _b;
|
|
667
|
+
const startHoursLater = 2;
|
|
668
|
+
const start = (0, date_fns_1.addHours)(startDate, startHoursLater);
|
|
669
|
+
const result = yield query((0, firebase_1.whereDateIsAfterWithSort)('date', start)).getDocs();
|
|
670
|
+
expect(result.docs.length).toBe(startHoursLater);
|
|
671
|
+
// ascending order by default
|
|
672
|
+
expect((_a = result.docs[0].data().date) === null || _a === void 0 ? void 0 : _a.toISOString()).toBe((0, date_fns_1.addHours)(start, 1).toISOString());
|
|
673
|
+
expect((_b = result.docs[1].data().date) === null || _b === void 0 ? void 0 : _b.toISOString()).toBe((0, date_fns_1.addHours)(start, 2).toISOString());
|
|
674
|
+
}));
|
|
675
|
+
it('should return models with dates after the input in descending order.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
676
|
+
var _c, _d;
|
|
677
|
+
const startHoursLater = 2;
|
|
678
|
+
const start = (0, date_fns_1.addHours)(startDate, startHoursLater);
|
|
679
|
+
const result = yield query((0, firebase_1.whereDateIsAfterWithSort)('date', start, 'desc')).getDocs();
|
|
680
|
+
expect(result.docs.length).toBe(startHoursLater);
|
|
681
|
+
// check descending order
|
|
682
|
+
expect((_c = result.docs[0].data().date) === null || _c === void 0 ? void 0 : _c.toISOString()).toBe((0, date_fns_1.addHours)(start, 2).toISOString());
|
|
683
|
+
expect((_d = result.docs[1].data().date) === null || _d === void 0 ? void 0 : _d.toISOString()).toBe((0, date_fns_1.addHours)(start, 1).toISOString());
|
|
684
|
+
}));
|
|
685
|
+
});
|
|
664
686
|
describe('whereDateIsBeforeWithSort()', () => {
|
|
665
687
|
it('should return models with dates before the input.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
666
688
|
var _a, _b;
|
|
@@ -684,7 +706,7 @@ function describeFirestoreQueryDriverTests(f) {
|
|
|
684
706
|
}));
|
|
685
707
|
});
|
|
686
708
|
describe('whereDateIsOnOrAfterWithSort()', () => {
|
|
687
|
-
it('should return models with dates
|
|
709
|
+
it('should return models with dates after the input.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
688
710
|
var _a, _b, _c;
|
|
689
711
|
const startHoursLater = 2;
|
|
690
712
|
const start = (0, date_fns_1.addHours)(startDate, startHoursLater);
|
|
@@ -695,7 +717,7 @@ function describeFirestoreQueryDriverTests(f) {
|
|
|
695
717
|
expect((_b = result.docs[1].data().date) === null || _b === void 0 ? void 0 : _b.toISOString()).toBe((0, date_fns_1.addHours)(start, 1).toISOString());
|
|
696
718
|
expect((_c = result.docs[2].data().date) === null || _c === void 0 ? void 0 : _c.toISOString()).toBe((0, date_fns_1.addHours)(start, 2).toISOString());
|
|
697
719
|
}));
|
|
698
|
-
it('should return models with dates
|
|
720
|
+
it('should return models with dates after the input in descending order.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
699
721
|
var _d, _e, _f;
|
|
700
722
|
const startHoursLater = 2;
|
|
701
723
|
const start = (0, date_fns_1.addHours)(startDate, startHoursLater);
|
|
@@ -707,6 +729,30 @@ function describeFirestoreQueryDriverTests(f) {
|
|
|
707
729
|
expect((_f = result.docs[2].data().date) === null || _f === void 0 ? void 0 : _f.toISOString()).toBe((0, date_fns_1.addHours)(start, 0).toISOString());
|
|
708
730
|
}));
|
|
709
731
|
});
|
|
732
|
+
describe('whereDateIsOnOrBeforeWithSort()', () => {
|
|
733
|
+
it('should return models with dates before the input.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
734
|
+
var _a, _b, _c;
|
|
735
|
+
const startHoursLater = 2;
|
|
736
|
+
const endDate = (0, date_fns_1.addHours)(startDate, startHoursLater);
|
|
737
|
+
const result = yield query((0, firebase_1.whereDateIsOnOrBeforeWithSort)('date', endDate)).getDocs();
|
|
738
|
+
expect(result.docs.length).toBe(3);
|
|
739
|
+
// descending order by default
|
|
740
|
+
expect((_a = result.docs[0].data().date) === null || _a === void 0 ? void 0 : _a.toISOString()).toBe((0, date_fns_1.addHours)(endDate, 0).toISOString());
|
|
741
|
+
expect((_b = result.docs[1].data().date) === null || _b === void 0 ? void 0 : _b.toISOString()).toBe((0, date_fns_1.addHours)(endDate, -1).toISOString());
|
|
742
|
+
expect((_c = result.docs[2].data().date) === null || _c === void 0 ? void 0 : _c.toISOString()).toBe((0, date_fns_1.addHours)(endDate, -2).toISOString());
|
|
743
|
+
}));
|
|
744
|
+
it('should return models with dates before the input in ascending order.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
745
|
+
var _d, _e, _f;
|
|
746
|
+
const startHoursLater = 2;
|
|
747
|
+
const endDate = (0, date_fns_1.addHours)(startDate, startHoursLater);
|
|
748
|
+
const result = yield query((0, firebase_1.whereDateIsOnOrBeforeWithSort)('date', endDate, 'asc')).getDocs();
|
|
749
|
+
expect(result.docs.length).toBe(3);
|
|
750
|
+
// check ascending order
|
|
751
|
+
expect((_d = result.docs[0].data().date) === null || _d === void 0 ? void 0 : _d.toISOString()).toBe((0, date_fns_1.addHours)(endDate, -2).toISOString());
|
|
752
|
+
expect((_e = result.docs[1].data().date) === null || _e === void 0 ? void 0 : _e.toISOString()).toBe((0, date_fns_1.addHours)(endDate, -1).toISOString());
|
|
753
|
+
expect((_f = result.docs[2].data().date) === null || _f === void 0 ? void 0 : _f.toISOString()).toBe((0, date_fns_1.addHours)(endDate, 0).toISOString());
|
|
754
|
+
}));
|
|
755
|
+
});
|
|
710
756
|
describe('whereDateIsInRange()', () => {
|
|
711
757
|
it('should return the date values within the given range.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
712
758
|
var _a, _b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.driver.query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/test/src/lib/common/firestore/test.driver.query.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"test.driver.query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/test/src/lib/common/firestore/test.driver.query.ts"],"names":[],"mappings":";;;;AAAA,uCAAyD;AACzD,6CAA8D;AAC9D,wCAAmD;AACnD,+BAAiD;AACjD,gDA4B2B;AAC3B,kCAAiR;AACjR,wCAAsJ;AACtJ,wCAA8C;AAE9C;;;;GAIG;AACH,SAAgB,iCAAiC,CAAC,CAA4B;IAC5E,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,MAAM,iBAAiB,GAAG,CAAC,CAAC;QAE5B,IAAI,KAAyB,CAAC;QAE9B,MAAM,SAAS,GAAG,IAAA,kBAAO,EAAC,IAAA,qBAAU,EAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,MAAM,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC;QAEtB,UAAU,CAAC,GAAS,EAAE;YACpB,KAAK,GAAG,MAAM,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,EAAE;gBAC7E,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO;wBACL,KAAK,EAAE,GAAG,CAAC,EAAE;wBACb,IAAI,EAAE,IAAA,mBAAQ,EAAC,SAAS,EAAE,CAAC,CAAC;wBAC5B,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,IAAA,mBAAY,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBACzD,IAAI,EAAE,IAAI;qBACX,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;QAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACjD,MAAM,uBAAuB,GAAG,IAAA,0CAA+B,EAAmB;gBAChF,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;YAEH,EAAE,CAAC,+BAA+B,EAAE,GAAS,EAAE;gBAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAA,0BAAe,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC5G,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC5C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,CAAC,CAAA,CAAC,CAAC;YAEH,EAAE,CAAC,uCAAuC,EAAE,GAAS,EAAE;gBACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAExC,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,IAAA,gBAAS,EAAC,IAAA,0BAAmB,EAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChG,MAAM,MAAM,GAAG,IAAA,6BAAsB,EAAC,QAAQ,CAAC,CAAC;gBAEhD,MAAM,OAAO,GAAG,IAAA,qBAAc,EAAiB;oBAC7C,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;oBAChE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wBACjB,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;wBAC5C,OAAO,GAAG,CAAC;oBACb,CAAC;iBACF,CAAC,CAAC;gBAEH,MAAM,SAAS,GAAG,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC9C,MAAM,CAAC,IAAA,aAAM,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1D,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;YAC5B,IAAI,UAA8B,CAAC;YACnC,IAAI,gBAAwC,CAAC;YAE7C,UAAU,CAAC,GAAS,EAAE;gBACpB,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;gBAE1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,KAAK,CAAC,GAAG,CAAC,CAAC,MAAwB,EAAE,EAAE,CACrC,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,EAAE;oBAC1E,KAAK,EAAE,CAAC;oBACR,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC;oBACnD,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;wBACV,OAAO;4BACL,GAAG,EAAE,EAAE;4BACP,IAAI,EAAE,QAAQ,CAAC,EAAE;yBAClB,CAAC;oBACJ,CAAC;iBACF,CAAC,CACH,CACF,CAAC;gBAEF,gBAAgB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YACpC,CAAC,CAAA,CAAC,CAAC;YAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;gBACrB,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;oBAC3C,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;wBACvD,EAAE,CAAC,6DAA6D,EAAE,GAAS,EAAE;4BAC3E,MAAM,gBAAgB,GAAG,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,gBAAgB,EAAE,CAAC;4BAEnF,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAC;4BACxD,MAAM,SAAS,GAAG,CAAC,CAAC;4BAEpB,MAAM,MAAM,GAAG,MAAM,IAAA,gDAAqC,EAAC;gCACzD,SAAS;gCACT,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;oCAC/B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;oCAC7B,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oCACjC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oCAEjC,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;oCAE3B,IAAI,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;wCACjC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;qCAC3C;yCAAM;wCACL,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;qCAC/B;gCACH,CAAC,CAAA;gCACD,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;oCAC/B,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;wCAC7B,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;qCACtE;gCACH,CAAC,CAAA;gCACD,gBAAgB;gCAChB,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B;gCACpD,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;6BACzC,CAAC,CAAC;4BAEH,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;4BACnE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;wBAClE,CAAC,CAAA,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;wBACnD,EAAE,CAAC,wDAAwD,EAAE,GAAS,EAAE;4BACtE,MAAM,gBAAgB,GAAG,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,gBAAgB,EAAE,CAAC;4BAEnF,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAC;4BACxD,MAAM,SAAS,GAAG,CAAC,CAAC;4BAEpB,MAAM,MAAM,GAAG,MAAM,IAAA,4CAAiC,EAAC;gCACrD,SAAS;gCACT,eAAe,EAAE,CAAO,CAAC,EAAE,EAAE;oCAC3B,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;oCAEvB,IAAI,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;wCACjC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;qCAC3C;yCAAM;wCACL,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;qCAC/B;gCACH,CAAC,CAAA;gCACD,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;oCAC/B,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;wCAC7B,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;qCACtE;gCACH,CAAC,CAAA;gCACD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B;gCACpD,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;6BACzC,CAAC,CAAC;4BAEH,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;4BACnE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;wBAClE,CAAC,CAAA,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,+CAA+C,EAAE,GAAG,EAAE;wBAC7D,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;4BACzD,MAAM,gBAAgB,GAAG,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,gBAAgB,EAAE,CAAC;4BACnF,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAC;4BACxD,MAAM,SAAS,GAAG,CAAC,CAAC;4BAEpB,MAAM,MAAM,GAAG,MAAM,IAAA,sDAA2C,EAAC;gCAC/D,gBAAgB;gCAChB,SAAS;gCACT,yBAAyB,EAAE,CAAO,CAAC,EAAE,EAAE;oCACrC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;oCAEhD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oCAClB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;oCAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oCACpC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;gCACtC,CAAC,CAAA;gCACD,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;oCAC/B,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;gCACtE,CAAC,CAAA;gCACD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B;gCACpD,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;6BACzC,CAAC,CAAC;4BAEH,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;4BACnE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;wBAClE,CAAC,CAAA,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,2CAA2C,EAAE,GAAG,EAAE;wBACzD,EAAE,CAAC,sCAAsC,EAAE,GAAS,EAAE;4BACpD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAC;4BACxD,MAAM,SAAS,GAAG,CAAC,CAAC;4BAEpB,MAAM,MAAM,GAAG,MAAM,IAAA,kDAAuC,EAAC;gCAC3D,SAAS;gCACT,oBAAoB,EAAE,CAAO,CAAC,EAAE,EAAE;oCAChC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gCAClD,CAAC,CAAA;gCACD,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;oCAC/B,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;gCACtE,CAAC,CAAA;gCACD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B;gCACpD,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;6BACzC,CAAC,CAAC;4BAEH,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;4BACnE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;wBAClE,CAAC,CAAA,CAAC,CAAC;wBAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;4BAC9B,EAAE,CAAC,oCAAoC,EAAE,GAAS,EAAE;gCAClD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAC;gCACxD,MAAM,SAAS,GAAG,IAAI,CAAC;gCAEvB,MAAM,MAAM,GAAG,MAAM,IAAA,kDAAuC,EAAC;oCAC3D,SAAS;oCACT,oBAAoB,EAAE,CAAO,CAAC,EAAE,EAAE;wCAChC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;oCACjD,CAAC,CAAA;oCACD,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;wCAC/B,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;oCACtE,CAAC,CAAA;oCACD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B;oCACpD,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;iCACzC,CAAC,CAAC;gCAEH,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;gCACnE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;4BAClE,CAAC,CAAA,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;4BACjD,EAAE,CAAC,oCAAoC,EAAE,GAAS,EAAE;gCAClD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAmB,CAAC;gCAExD,MAAM,MAAM,GAAG,MAAM,IAAA,kDAAuC,EAAC;oCAC3D,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI;oCACjC,oBAAoB,EAAE,CAAO,CAAC,EAAE,EAAE;wCAChC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;oCACjD,CAAC,CAAA;oCACD,mBAAmB,EAAE,CAAO,CAAC,EAAE,EAAE;wCAC/B,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;oCACtE,CAAC,CAAA;oCACD,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B;oCACpD,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;iCACzC,CAAC,CAAC;gCAEH,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;gCACnE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;4BAClE,CAAC,CAAA,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAChC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;oBACrB,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;wBAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;4BACrB,EAAE,CAAC,oDAAoD,EAAE,GAAS,EAAE;gCAClE,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC,KAAK,CAAC,IAAA,gBAAK,EAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gCAC5G,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gCAEnD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oCACxB,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gCACxC,CAAC,CAAC,CAAC;4BACL,CAAC,CAAA,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;YAC5B,MAAM,mBAAmB,GAAG,CAAC,CAAC;YAC9B,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;YAEnE,IAAI,OAAyB,CAAC;YAE9B,IAAI,aAA6D,CAAC;YAElE,IAAI,WAAsC,CAAC;YAE3C,UAAU,CAAC,GAAS,EAAE;gBACpB,aAAa,GAAG,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC,KAAK,CAAC;gBAChE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAEnB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,KAAK,CAAC,GAAG,CAAC,CAAC,MAAwB,EAAE,EAAE,CACrC,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,EAAE;oBAC7E,KAAK,EAAE,mBAAmB;oBAC1B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;wBACV,OAAO;4BACL,KAAK,EAAE,CAAC;yBACT,CAAC;oBACJ,CAAC;iBACF,CAAC,CACH,CACF,CAAC;gBAEF,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/B,CAAC,CAAA,CAAC,CAAC;YAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;gBAC5B,MAAM,uBAAuB,GAAG,CAAC,CAAC;gBAClC,MAAM,sBAAsB,GAAG,uBAAuB,GAAG,kBAAkB,CAAC;gBAC5E,MAAM,4BAA4B,GAAG,mBAAmB,GAAG,uBAAuB,CAAC;gBAEnF,IAAI,kBAA2C,CAAC;gBAEhD,IAAI,iBAAqE,CAAC;gBAE1E,IAAI,eAA8C,CAAC;gBAEnD,UAAU,CAAC,GAAS,EAAE;oBACpB,iBAAiB,GAAG,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC,KAAK,CAAC;oBACxE,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;oBAEpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,WAAW,CAAC,GAAG,CAAC,CAAC,MAA+B,EAAE,EAAE,CAClD,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,EAAE;wBACjF,KAAK,EAAE,uBAAuB;wBAC9B,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;4BACV,OAAO;gCACL,KAAK,EAAE,CAAC;6BACT,CAAC;wBACJ,CAAC;qBACF,CAAC,CACH,CACF,CAAC;oBAEF,eAAe,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;gBACnC,CAAC,CAAA,CAAC,CAAC;gBAEH,qDAAqD;gBACrD,EAAE,CAAC,wDAAwD,EAAE,GAAS,EAAE;oBACtE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAA,iDAA0C,EAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oBAClH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;oBAC9D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,uBAAC,OAAA,MAAM,CAAC,MAAA,MAAA,MAAA,MAAA,CAAC,CAAC,GAAG,CAAC,MAAM,0CAAE,MAAM,0CAAE,MAAM,0CAAE,MAAM,0CAAE,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA,EAAA,CAAC,CAAC;gBAChH,CAAC,CAAA,CAAC,CAAC;gBAEH,yDAAyD;YAC3D,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;gBACxB,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;oBAChC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,EAAE,CAAC,yBAAyB,EAAE,GAAS,EAAE;4BACvC,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC;4BAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;wBACtD,CAAC,CAAA,CAAC,CAAC;wBAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;4BAC3B,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;gCACrB,EAAE,CAAC,iDAAiD,EAAE,GAAS,EAAE;oCAC/D,MAAM,KAAK,GAAG,CAAC,CAAC;oCAEhB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAA,gBAAK,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAC1E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;oCACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oCAEhD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oCAC/B,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;oCAC1B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gCACnC,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;gCAC/B,IAAA,mBAAY,EAAC,gCAAgC,EAAE,GAAS,EAAE;oCACxD,8FAA8F;oCAE9F,MAAM,QAAQ,GAAG,UAAU,CAAC;oCAE5B;;;;;;;;;;;;;;sCAcE;oCAEF,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,aAAa,CAAC,IAAA,0BAAe,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gCACnF,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;4BAC5B,IAAI,GAAuB,CAAC;4BAE5B,UAAU,CAAC,GAAG,EAAE;gCACd,GAAG,GAAG,IAAI,yBAAkB,EAAE,CAAC;4BACjC,CAAC,CAAC,CAAC;4BAEH,SAAS,CAAC,GAAG,EAAE;gCACb,GAAG,CAAC,OAAO,EAAE,CAAC;4BAChB,CAAC,CAAC,CAAC;4BAEH,EAAE,CAAC,+DAA+D,EAAE,CAAC,IAAI,EAAE,EAAE;gCAC3E,MAAM,UAAU,GAAG,CAAC,CAAC;gCAErB,IAAI,YAAY,GAAG,KAAK,CAAC;gCACzB,IAAI,OAAO,GAAG,KAAK,CAAC;gCAEpB,SAAS,WAAW;oCAClB,IAAI,OAAO,IAAI,YAAY,EAAE;wCAC3B,IAAI,EAAE,CAAC;qCACR;gCACH,CAAC;gCAED,GAAG,CAAC,YAAY,GAAG,aAAa,EAAE;qCAC/B,UAAU,EAAE;qCACZ,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;qCACvD,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;oCACrB,OAAO,GAAG,IAAI,CAAC;oCACf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;oCAClE,WAAW,EAAE,CAAC;gCAChB,CAAC,CAAC,CAAC;gCAEL,eAAe;gCACf,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;oCAC9E,KAAK,EAAE,UAAU;oCACjB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;wCACV,OAAO;4CACL,KAAK,EAAE,CAAC;yCACT,CAAC;oCACJ,CAAC;iCACF,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oCACX,YAAY,GAAG,IAAI,CAAC;oCACpB,WAAW,EAAE,CAAC;gCAChB,CAAC,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,EAAE,CAAC,iEAAiE,EAAE,CAAC,IAAI,EAAE,EAAE;gCAC7E,MAAM,aAAa,GAAG,CAAC,CAAC;gCAExB,IAAI,eAAe,GAAG,KAAK,CAAC;gCAC5B,IAAI,UAAU,GAAG,KAAK,CAAC;gCAEvB,SAAS,WAAW;oCAClB,IAAI,UAAU,IAAI,eAAe,EAAE;wCACjC,IAAI,EAAE,CAAC;qCACR;gCACH,CAAC;gCAED,GAAG,CAAC,YAAY,GAAG,aAAa,EAAE;qCAC/B,UAAU,EAAE;qCACZ,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;qCACvD,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;oCACrB,UAAU,GAAG,IAAI,CAAC;oCAClB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;oCACrE,WAAW,EAAE,CAAC;gCAChB,CAAC,CAAC,CAAC;gCAEL,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;oCAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oCAE1B,kBAAkB;oCAClB,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;wCAChD,eAAe,GAAG,IAAI,CAAC;wCACvB,WAAW,EAAE,CAAC;oCAChB,CAAC,CAAC,CAAC;gCACL,CAAC,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,IAAI,KAA8C,CAAC;YAEnD,UAAU,CAAC,GAAS,EAAE;gBACpB,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC;YAC/C,CAAC,CAAA,CAAC,CAAC;YAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;gBAC5B,IAAI,GAAuB,CAAC;gBAE5B,UAAU,CAAC,GAAG,EAAE;oBACd,GAAG,GAAG,IAAI,yBAAkB,EAAE,CAAC;gBACjC,CAAC,CAAC,CAAC;gBAEH,SAAS,CAAC,GAAG,EAAE;oBACb,GAAG,CAAC,OAAO,EAAE,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,+DAA+D,EAAE,CAAC,IAAI,EAAE,EAAE;oBAC3E,MAAM,UAAU,GAAG,CAAC,CAAC;oBAErB,IAAI,YAAY,GAAG,KAAK,CAAC;oBACzB,IAAI,OAAO,GAAG,KAAK,CAAC;oBAEpB,SAAS,WAAW;wBAClB,IAAI,OAAO,IAAI,YAAY,EAAE;4BAC3B,IAAI,EAAE,CAAC;yBACR;oBACH,CAAC;oBAED,GAAG,CAAC,YAAY,GAAG,KAAK,EAAE;yBACvB,UAAU,EAAE;yBACZ,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;yBACjD,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;wBACrB,OAAO,GAAG,IAAI,CAAC;wBACf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;wBAC5D,WAAW,EAAE,CAAC;oBAChB,CAAC,CAAC,CAAC;oBAEL,eAAe;oBACf,IAAA,gBAAS,EAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACtB,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,EAAE;wBAC/D,KAAK,EAAE,UAAU;wBACjB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;4BACV,OAAO;gCACL,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE;gCAC5B,IAAI,EAAE,IAAI;6BACX,CAAC;wBACJ,CAAC;qBACF,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;wBACX,YAAY,GAAG,IAAI,CAAC;wBACpB,WAAW,EAAE,CAAC;oBAChB,CAAC,CAAC,CACH,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,iEAAiE,EAAE,CAAC,IAAI,EAAE,EAAE;oBAC7E,MAAM,aAAa,GAAG,CAAC,CAAC;oBAExB,IAAI,eAAe,GAAG,KAAK,CAAC;oBAC5B,IAAI,UAAU,GAAG,KAAK,CAAC;oBAEvB,SAAS,WAAW;wBAClB,IAAI,UAAU,IAAI,eAAe,EAAE;4BACjC,IAAI,EAAE,CAAC;yBACR;oBACH,CAAC;oBAED,GAAG,CAAC,YAAY,GAAG,KAAK,EAAE;yBACvB,UAAU,EAAE;yBACZ,IAAI,CAAC,IAAA,WAAI,EAAC,CAAC,CAAC,CAAC;yBACb,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;wBACrB,UAAU,GAAG,IAAI,CAAC;wBAClB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;wBAC/D,WAAW,EAAE,CAAC;oBAChB,CAAC,CAAC,CAAC;oBAEL,IAAA,gBAAS,EAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACtB,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;wBACzC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAE1B,kBAAkB;wBAClB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;4BAC1C,eAAe,GAAG,IAAI,CAAC;4BACvB,WAAW,EAAE,CAAC;wBAChB,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CACH,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;gBAC1B,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;oBACrB,EAAE,CAAC,4CAA4C,EAAE,GAAS,EAAE;wBAC1D,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,SAAS,GAAG,MAAM,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;wBAC1C,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;wBAEtD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBACxD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC9C,CAAC,CAAA,CAAC,CAAC;oBAEH,EAAE,CAAC,oCAAoC,EAAE,CAAC,IAAI,EAAE,EAAE;wBAChD,MAAM,UAAU,GAAG,CAAC,CAAC;wBACrB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;wBAExD,IAAA,WAAI,EAAC,SAAS,CAAC;6BACZ,IAAI,CAAC,IAAA,YAAK,GAAE,CAAC;6BACb,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;4BACrB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAC7C,IAAI,EAAE,CAAC;wBACT,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;oBAC3B,EAAE,CAAC,4CAA4C,EAAE,GAAS,EAAE;wBAC1D,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,SAAS,GAAG,MAAM,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;wBAC1C,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;wBAEtD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,kBAAO,EAAC,OAAO,CAAC,EAAE,IAAA,sBAAW,EAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAChF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC9C,CAAC,CAAA,CAAC,CAAC;oBAEH,EAAE,CAAC,gHAAgH,EAAE,GAAS,EAAE;wBAC9H,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAAA,sBAAW,EAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBACvF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAChD,CAAC,CAAA,CAAC,CAAC;oBAEH,IAAA,mBAAY,EAAC,6BAA6B,EAAE,GAAS,EAAE;wBACrD,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,SAAS,GAAG,MAAM,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;wBAC1C,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;wBAEtD,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAA,sBAAW,EAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnE,CAAC,CAAA,CAAC,CAAC;oBAEH,EAAE,CAAC,wBAAwB,EAAE,CAAC,IAAI,EAAE,EAAE;wBACpC,MAAM,UAAU,GAAG,CAAC,CAAC;wBACrB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAA,kBAAO,EAAC,OAAO,CAAC,EAAE,IAAA,sBAAW,EAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;wBAEhF,IAAA,WAAI,EAAC,SAAS,CAAC;6BACZ,IAAI,CAAC,IAAA,YAAK,GAAE,CAAC;6BACb,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;4BACrB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAC7C,IAAI,EAAE,CAAC;wBACT,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;oBACvB,EAAE,CAAC,iDAAiD,EAAE,GAAS,EAAE;wBAC/D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAC/D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACjD,CAAC,CAAA,CAAC,CAAC;oBAEH,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;wBAChE,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAChE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;oBACnE,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;oBACrB,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;wBAClB,EAAE,CAAC,iDAAiD,EAAE,GAAS,EAAE;4BAC/D,MAAM,KAAK,GAAG,GAAG,CAAC;4BAElB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;4BAClE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAClD,CAAC,CAAA,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;wBAClB,EAAE,CAAC,2DAA2D,EAAE,GAAS,EAAE;4BACzE,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;4BAEpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;4BAClF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;4BAEtD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;wBAChC,CAAC,CAAA,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;wBACtB,EAAE,CAAC,0EAA0E,EAAE,GAAS,EAAE;4BACxF,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;4BAEpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;4BACtF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;4BAEtD,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BAClC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BAClC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BAClC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;wBAChC,CAAC,CAAA,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;wBACtC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;4BAClB,EAAE,CAAC,0EAA0E,EAAE,GAAS,EAAE;gCACxF,0CAA0C;gCAC1C,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;gCAEpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gCACjF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gCACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BAChD,CAAC,CAAA,CAAC,CAAC;4BAEH,EAAE,CAAC,sFAAsF,EAAE,GAAS,EAAE;gCACpG,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gCAE5B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gCACjF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACrC,CAAC,CAAA,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;4BAC9B,EAAE,CAAC,2DAA2D,EAAE,GAAS,EAAE;gCACzE,MAAM,WAAW,GAAG,GAAG,CAAC;gCAExB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,MAAM,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gCAC7F,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gCACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BAChD,CAAC,CAAA,CAAC,CAAC;4BAEH,IAAA,mBAAY,EAAC,oDAAoD,EAAE,GAAS,EAAE;gCAC5E,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gCACnC,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAA,gBAAK,EAAW,MAAM,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;4BACnG,CAAC,CAAA,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;4BAClC,EAAE,CAAC,iGAAiG,EAAE,GAAS,EAAE;gCAC/G,MAAM,YAAY,GAAG,MAAM,CAAC;gCAE5B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,MAAM,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gCAClG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gCAEvE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oCACxB,MAAM,CAAC,IAAA,mBAAY,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gCAC/C,CAAC,CAAC,CAAC;4BACL,CAAC,CAAA,CAAC,CAAC;4BAEH,EAAE,CAAC,mEAAmE,EAAE,GAAS,EAAE;gCACjF,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gCAEnC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,gBAAK,EAAW,MAAM,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gCAClG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gCAEvE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oCACxB,MAAM,CAAC,IAAA,mBAAY,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gCAC/C,CAAC,CAAC,CAAC;4BACL,CAAC,CAAA,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;wBAChC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;4BACjC;;iCAEK;4BACL,MAAM,UAAU,GAAG,uBAAgB,CAAC,cAAc,GAAG,GAAG,CAAC;4BACzD,MAAM,SAAS,GAAG,uBAAgB,CAAC,cAAc,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,kCAAkC;4BAEjG,MAAM,0BAA0B,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;4BAEpE,UAAU,CAAC,GAAS,EAAE;gCACpB,KAAK,GAAG,MAAM,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,EAAE;oCAC7E,KAAK,EAAE,iBAAiB;oCACxB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;wCACV,MAAM,MAAM,GAAG,IAAA,mBAAY,EAAC,CAAC,CAAC,CAAC;wCAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;wCAE/C,OAAO;4CACL,KAAK,EAAE,GAAG,MAAM,GAAG,CAAC,EAAE;4CACtB,IAAI,EAAE,IAAI,IAAI,EAAE;4CAChB,IAAI,EAAE,EAAE;4CACR,IAAI,EAAE,IAAI;yCACX,CAAC;oCACJ,CAAC;iCACF,CAAC,CAAC;4BACL,CAAC,CAAA,CAAC,CAAC;4BAEH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;gCACpD,EAAE,CAAC,gDAAgD,EAAE,GAAS,EAAE;oCAC9D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,6CAAkC,EAAW,OAAO,EAAE,uBAAgB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAC9G,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAe,CAAC,CAAC;oCAEhE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;wCACnB,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;oCACnC,CAAC,CAAC,CAAC;oCAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gCAC9D,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;gCAC3C,EAAE,CAAC,gDAAgD,EAAE,GAAS,EAAE;oCAC9D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,oCAAyB,EAAW,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAC/F,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAe,CAAC,CAAC;oCAEhE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;wCACnB,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;oCACnC,CAAC,CAAC,CAAC;oCAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gCAC9D,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH;;2BAEG;wBACH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;4BACtC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;gCAC1C,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;;oCAChE,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,mCAAwB,EAAW,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAExF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oCAEjD,6BAA6B;oCAC7B,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzF,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC3F,CAAC,CAAA,CAAC,CAAC;gCAEH,EAAE,CAAC,sEAAsE,EAAE,GAAS,EAAE;;oCACpF,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,mCAAwB,EAAW,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAEhG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oCAEjD,yBAAyB;oCACzB,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzF,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC3F,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;gCAC3C,EAAE,CAAC,mDAAmD,EAAE,GAAS,EAAE;;oCACjE,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,OAAO,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACrD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,oCAAyB,EAAW,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAE3F,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oCAEjD,8BAA8B;oCAC9B,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5F,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC9F,CAAC,CAAA,CAAC,CAAC;gCAEH,EAAE,CAAC,sEAAsE,EAAE,GAAS,EAAE;;oCACpF,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,OAAO,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACrD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,oCAAyB,EAAW,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAElG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oCAEjD,wBAAwB;oCACxB,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5F,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC9F,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;gCAC9C,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;;oCAChE,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,uCAA4B,EAAW,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAE5F,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oCAEnC,6BAA6B;oCAC7B,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzF,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzF,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC3F,CAAC,CAAA,CAAC,CAAC;gCAEH,EAAE,CAAC,sEAAsE,EAAE,GAAS,EAAE;;oCACpF,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,uCAA4B,EAAW,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAEpG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oCAEnC,yBAAyB;oCACzB,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzF,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCACzF,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC3F,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;gCAC/C,EAAE,CAAC,mDAAmD,EAAE,GAAS,EAAE;;oCACjE,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,OAAO,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACrD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,wCAA6B,EAAW,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAE/F,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oCAEnC,8BAA8B;oCAC9B,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC3F,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5F,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC9F,CAAC,CAAA,CAAC,CAAC;gCAEH,EAAE,CAAC,sEAAsE,EAAE,GAAS,EAAE;;oCACpF,MAAM,eAAe,GAAG,CAAC,CAAC;oCAE1B,MAAM,OAAO,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACrD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,wCAA6B,EAAW,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAEtG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oCAEnC,wBAAwB;oCACxB,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5F,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5F,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC7F,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;gCACpC,EAAE,CAAC,uDAAuD,EAAE,GAAS,EAAE;;oCACrE,MAAM,eAAe,GAAG,CAAC,CAAC;oCAC1B,MAAM,iBAAiB,GAAG,CAAC,CAAC;oCAE5B,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACnD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,6BAAkB,EAAW,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,iBAAiB,GAAG,CAAC,EAAE,IAAI,EAAE,oBAAa,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAE9J,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;oCACnD,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5E,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC3F,CAAC,CAAA,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;4BAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;gCACpC,EAAE,CAAC,uDAAuD,EAAE,GAAS,EAAE;;oCACrE,MAAM,eAAe,GAAG,CAAC,CAAC;oCAC1B,MAAM,UAAU,GAAG,CAAC,CAAC;oCAErB,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oCACnD,MAAM,GAAG,GAAG,IAAA,mBAAQ,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;oCAExC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,6BAAkB,EAAW,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oCAE3F,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oCAC5C,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;oCAC5E,MAAM,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gCAC3F,CAAC,CAAA,CAAC,CAAC;gCAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;oCAC1C,EAAE,CAAC,+DAA+D,EAAE,GAAS,EAAE;;wCAC7E,MAAM,SAAS,GAAG,MAAM,CAAC;wCAEzB,MAAM,eAAe,GAAG,CAAC,CAAC;wCAC1B,MAAM,UAAU,GAAG,CAAC,CAAC;wCAErB,MAAM,KAAK,GAAG,IAAA,mBAAQ,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC;wCACnD,MAAM,GAAG,GAAG,IAAA,mBAAQ,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;wCAExC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC;4CACzB,wBAAwB;4CACxB,GAAG,IAAA,6BAAkB,EAAW,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;4CACvD,wBAAwB;4CACxB,IAAA,gBAAK,EAAW,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC;yCACzD,CAAC,CAAC,OAAO,EAAE,CAAC;wCAEb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wCAEnC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;wCAE7C,MAAM,CAAC,MAAA,cAAc,CAAC,IAAI,0CAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAA,mBAAQ,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;wCAClF,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;oCACnD,CAAC,CAAA,CAAC,CAAC;gCACL,CAAC,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;oBAC/B,EAAE,CAAC,iDAAiD,EAAE,GAAS,EAAE;wBAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAE7B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,0BAAe,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBACtE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC3C,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;oBACvB,EAAE,CAAC,oEAAoE,EAAE,GAAS,EAAE;wBAClF,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC;wBAC5C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAA,kBAAO,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBACzE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACnD,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;oBAC5B,EAAE,CAAC,gEAAgE,EAAE,GAAS,EAAE;wBAC9E,MAAM,UAAU,GAAG,iBAAiB,CAAC;wBAErC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAA,kBAAO,EAAW,OAAO,CAAC,EAAE,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC;wBACxE,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAE3C,MAAM,cAAc,GAAG,CAAC,CAAC;wBACzB,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;wBAChD,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;wBAEpD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAA,uBAAY,EAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAClF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC;wBAC7D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;oBAClD,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;oBAC1B,EAAE,CAAC,kEAAkE,EAAE,GAAS,EAAE;wBAChF,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC;wBAC5C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAE3C,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACpC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAEvC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAA,qBAAU,EAAC,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAC5E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;oBACtD,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;oBACrB,EAAE,CAAC,yEAAyE,EAAE,GAAS,EAAE;wBACvF,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC;wBAC5C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAA,gBAAK,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBACvE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;wBAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACnD,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;oBAC1B,EAAE,CAAC,gEAAgE,EAAE,GAAS,EAAE;wBAC9E,MAAM,UAAU,GAAG,iBAAiB,CAAC;wBAErC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAA,kBAAO,EAAW,OAAO,CAAC,EAAE,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC;wBACxE,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAE3C,MAAM,YAAY,GAAG,CAAC,CAAC;wBACvB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBAC5C,MAAM,eAAe,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;wBAEhD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAA,qBAAU,EAAC,eAAe,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAC9E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;wBAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;oBACrE,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;oBACzB,EAAE,CAAC,6EAA6E,EAAE,GAAS,EAAE;wBAC3F,MAAM,UAAU,GAAG,CAAC,CAAC;wBAErB,MAAM,UAAU,GAAG,KAAK,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC;wBAC5C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;wBAC3E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;wBAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACnD,CAAC,CAAA,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AA9jCD,8EA8jCC"}
|