{"ast":null,"code":"// eslint-disable-next-line @typescript-eslint/naming-convention\nconst __mergedStore = {};\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst __decoratorInitialStore = {};\n/** @internal */\nexport function GetDirectStore(target) {\n const classKey = target.getClassName();\n if (!__decoratorInitialStore[classKey]) {\n __decoratorInitialStore[classKey] = {};\n }\n return __decoratorInitialStore[classKey];\n}\n/**\n * @returns the list of properties flagged as serializable\n * @param target host object\n */\nexport function GetMergedStore(target) {\n const classKey = target.getClassName();\n if (__mergedStore[classKey]) {\n return __mergedStore[classKey];\n }\n __mergedStore[classKey] = {};\n const store = __mergedStore[classKey];\n let currentTarget = target;\n let currentKey = classKey;\n while (currentKey) {\n const initialStore = __decoratorInitialStore[currentKey];\n for (const property in initialStore) {\n store[property] = initialStore[property];\n }\n let parent;\n let done = false;\n do {\n parent = Object.getPrototypeOf(currentTarget);\n if (!parent.getClassName) {\n done = true;\n break;\n }\n if (parent.getClassName() !== currentKey) {\n break;\n }\n currentTarget = parent;\n } while (parent);\n if (done) {\n break;\n }\n currentKey = parent.getClassName();\n currentTarget = parent;\n }\n return store;\n}","map":{"version":3,"names":["__mergedStore","__decoratorInitialStore","GetDirectStore","target","classKey","getClassName","GetMergedStore","store","currentTarget","currentKey","initialStore","property","parent","done","Object","getPrototypeOf"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@babylonjs/core/Misc/decorators.functions.js"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/naming-convention\nconst __mergedStore = {};\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst __decoratorInitialStore = {};\n/** @internal */\nexport function GetDirectStore(target) {\n const classKey = target.getClassName();\n if (!__decoratorInitialStore[classKey]) {\n __decoratorInitialStore[classKey] = {};\n }\n return __decoratorInitialStore[classKey];\n}\n/**\n * @returns the list of properties flagged as serializable\n * @param target host object\n */\nexport function GetMergedStore(target) {\n const classKey = target.getClassName();\n if (__mergedStore[classKey]) {\n return __mergedStore[classKey];\n }\n __mergedStore[classKey] = {};\n const store = __mergedStore[classKey];\n let currentTarget = target;\n let currentKey = classKey;\n while (currentKey) {\n const initialStore = __decoratorInitialStore[currentKey];\n for (const property in initialStore) {\n store[property] = initialStore[property];\n }\n let parent;\n let done = false;\n do {\n parent = Object.getPrototypeOf(currentTarget);\n if (!parent.getClassName) {\n done = true;\n break;\n }\n if (parent.getClassName() !== currentKey) {\n break;\n }\n currentTarget = parent;\n } while (parent);\n if (done) {\n break;\n }\n currentKey = parent.getClassName();\n currentTarget = parent;\n }\n return store;\n}\n"],"mappings":"AAAA;AACA,MAAMA,aAAa,GAAG,CAAC,CAAC;AACxB;AACA,MAAMC,uBAAuB,GAAG,CAAC,CAAC;AAClC;AACA,OAAO,SAASC,cAAcA,CAACC,MAAM,EAAE;EACnC,MAAMC,QAAQ,GAAGD,MAAM,CAACE,YAAY,CAAC,CAAC;EACtC,IAAI,CAACJ,uBAAuB,CAACG,QAAQ,CAAC,EAAE;IACpCH,uBAAuB,CAACG,QAAQ,CAAC,GAAG,CAAC,CAAC;EAC1C;EACA,OAAOH,uBAAuB,CAACG,QAAQ,CAAC;AAC5C;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,cAAcA,CAACH,MAAM,EAAE;EACnC,MAAMC,QAAQ,GAAGD,MAAM,CAACE,YAAY,CAAC,CAAC;EACtC,IAAIL,aAAa,CAACI,QAAQ,CAAC,EAAE;IACzB,OAAOJ,aAAa,CAACI,QAAQ,CAAC;EAClC;EACAJ,aAAa,CAACI,QAAQ,CAAC,GAAG,CAAC,CAAC;EAC5B,MAAMG,KAAK,GAAGP,aAAa,CAACI,QAAQ,CAAC;EACrC,IAAII,aAAa,GAAGL,MAAM;EAC1B,IAAIM,UAAU,GAAGL,QAAQ;EACzB,OAAOK,UAAU,EAAE;IACf,MAAMC,YAAY,GAAGT,uBAAuB,CAACQ,UAAU,CAAC;IACxD,KAAK,MAAME,QAAQ,IAAID,YAAY,EAAE;MACjCH,KAAK,CAACI,QAAQ,CAAC,GAAGD,YAAY,CAACC,QAAQ,CAAC;IAC5C;IACA,IAAIC,MAAM;IACV,IAAIC,IAAI,GAAG,KAAK;IAChB,GAAG;MACCD,MAAM,GAAGE,MAAM,CAACC,cAAc,CAACP,aAAa,CAAC;MAC7C,IAAI,CAACI,MAAM,CAACP,YAAY,EAAE;QACtBQ,IAAI,GAAG,IAAI;QACX;MACJ;MACA,IAAID,MAAM,CAACP,YAAY,CAAC,CAAC,KAAKI,UAAU,EAAE;QACtC;MACJ;MACAD,aAAa,GAAGI,MAAM;IAC1B,CAAC,QAAQA,MAAM;IACf,IAAIC,IAAI,EAAE;MACN;IACJ;IACAJ,UAAU,GAAGG,MAAM,CAACP,YAAY,CAAC,CAAC;IAClCG,aAAa,GAAGI,MAAM;EAC1B;EACA,OAAOL,KAAK;AAChB","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}