@mchp-mcc/scf-pic8-osc-v1 4.3.6 → 4.3.7

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/Changelog.md CHANGED
@@ -1,20 +1,23 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
- ## [4.3.6] - 2024-05-01
4
+ ## [4.3.7] - 2024-08-14
5
5
 
6
6
  ### New Features and Improvements
7
- - **M8PD-5972** :- Generate package version in the source codes
8
- - **M8PD-5971** :- Optimized Clock initialize API
7
+ - **M8PD-8195** :- Software compatibility improvements
9
8
 
9
+ ### Bug Fixes
10
+ - **M8PD-7877** :- Device support issue for PIC16F131xx in scf-pic8-osc-v1
10
11
 
11
- ## [4.3.5] - 2023-08-10
12
12
 
13
+ ## [4.3.6] - 2024-05-01
13
14
 
14
- No changes from previous version
15
+ ### New Features and Improvements
16
+ - **M8PD-5972** :- Generate package version in the source codes
17
+ - **M8PD-5971** :- Optimized Clock initialize API
15
18
 
16
19
 
17
- ## [4.3.4] - 2023-05-12
20
+ ## [4.3.5] - 2023-08-10
18
21
 
19
22
 
20
23
  No changes from previous version
package/Readme.md CHANGED
@@ -14,20 +14,23 @@ This driver generates the following files:
14
14
  # Changelog
15
15
  All notable changes to this project will be documented in this file.
16
16
 
17
- ## [4.3.6] - 2024-05-01
17
+ ## [4.3.7] - 2024-08-14
18
18
 
19
19
  ### New Features and Improvements
20
- - **M8PD-5972** :- Generate package version in the source codes
21
- - **M8PD-5971** :- Optimized Clock initialize API
20
+ - **M8PD-8195** :- Software compatibility improvements
22
21
 
22
+ ### Bug Fixes
23
+ - **M8PD-7877** :- Device support issue for PIC16F131xx in scf-pic8-osc-v1
23
24
 
24
- ## [4.3.5] - 2023-08-10
25
25
 
26
+ ## [4.3.6] - 2024-05-01
26
27
 
27
- No changes from previous version
28
+ ### New Features and Improvements
29
+ - **M8PD-5972** :- Generate package version in the source codes
30
+ - **M8PD-5971** :- Optimized Clock initialize API
28
31
 
29
32
 
30
- ## [4.3.4] - 2023-05-12
33
+ ## [4.3.5] - 2023-08-10
31
34
 
32
35
 
33
36
  No changes from previous version
@@ -1207,7 +1207,7 @@ var MyDerivedData = /*#__PURE__*/_createClass(function MyDerivedData(dataModel)
1207
1207
  mfintosc_31Khz: (_this$getClockCalcula13 = _this.getClockCalculator().getMfIntOsc_31KHz()) !== null && _this$getClockCalcula13 !== void 0 ? _this$getClockCalcula13 : "31250",
1208
1208
  sosc: (_this$getClockCalcula14 = _this.getClockCalculator().getSosc()) !== null && _this$getClockCalcula14 !== void 0 ? _this$getClockCalcula14 : "32768"
1209
1209
  };
1210
- var hasSosc = _this.dataModel.isComponentValue("soscenOscen") !== undefined ? true : false;
1210
+ var hasSosc = _this.dataModel.getComponent("soscenOscen") !== undefined ? true : false;
1211
1211
  if (hasSosc) {
1212
1212
  clockObj.hasSosc = true;
1213
1213
  clockObj.soscEnabled = _this.dataModel.isComponentValue("soscenOscen");
@@ -1235,7 +1235,7 @@ var MyDerivedData = /*#__PURE__*/_createClass(function MyDerivedData(dataModel)
1235
1235
  header: headers,
1236
1236
  moduleNameUpperCase: _this.getModuleName().toUpperCase(),
1237
1237
  moduleNameLowerCase: _this.getModuleName().toLowerCase(),
1238
- PackageVersion: "4.3.6",
1238
+ PackageVersion: "4.3.7",
1239
1239
  isPllEnabled: (_this$getPLLStatus = _this.getPLLStatus()) !== null && _this$getPLLStatus !== void 0 ? _this$getPLLStatus : false,
1240
1240
  //...registerValues,
1241
1241
 
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://autoCreator/webpack/bootstrap","webpack://autoCreator/./generated_module/src/autoCreator.ts","webpack://autoCreator/./generated_module/src/getUserData.ts","webpack://autoCreator/./generated_module/src/pins/PCPHelper.ts","webpack://autoCreator/./node_modules/@microchip/pins-interface/lib/types.js","webpack://autoCreator/./node_modules/@microchip/scf-common/lib/Processor.js","webpack://autoCreator/./node_modules/@microchip/scf-interface/lib/c-function-types.js","webpack://autoCreator/./node_modules/@microchip/scf-interface/lib/helpers.js","webpack://autoCreator/./node_modules/@microchip/scf-interface/lib/index.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/api.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/index.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/mock.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/sys-init-basic-interface.js","webpack://autoCreator/./src/ClockCalculator.ts","webpack://autoCreator/./src/CreatorFunctions.ts","webpack://autoCreator/./src/DerivedData.ts","webpack://autoCreator/./src/PinsLogic.ts","webpack://autoCreator/./src/StringConstants.ts"],"names":["createAutoCreator","getCreatorFunctions","_objectSpread","getModuleConfig","getModuleConfigFromFile","getCreatorFunctionsUser","getPinsDataFromFile","require","_unused","undefined","getPinsLogicFromFile","_unused2","_unused3","mockPinsLogic","getPinsData","getCompletePinData","appModel","getRowData","rowData","_getPinsDataFromFile","rows","getPinsLogic","pinsLogic","ClockCalculator","_createClass","oscSelect","HFInternalClk","externalClk","clkDivider","_this","_classCallCheck","_defineProperty","currentSystemClk","HFClk","StringConstants","SOSC","LFINTOSC","HFINTOSC","_this$HFInternalClk$r","_this$HFInternalClk","parseInt","replace","HFINTOSC_2xPLL","_this$HFInternalClk$r2","_this$HFInternalClk2","EXTOSC","MIN_PLL","MAX_PLL","Math","round","_this$HFInternalClk$r3","_this$HFInternalClk3","mfintosc","mfintosc_31KHz","lfintosc","toString","sosc","shouldImport","importKey","state","getDerivedData","dataModel","MyDerivedData","EmptyDerivedData","clockCalculator","_this$getModel$getCom","_this$getModel$getCom2","_this$getModel$getCom3","_this$getModel$getCom4","getModel","getComponentValue","moduleName","getModuleName","alerts","getMyAlerts","isEnabled","isVisible","coscOsccon2","getResOscValue","getClockCalculator","getCurrentSystemClk","foscHz_payload","sys_init_basic_interface_results","config_device_results","templateData","getTemplateData","overrideDefaultValues","overrideDefaultValue","configbits_basic_interface_args","getConfigbitsBasicInterfaceArgs","getOscClocksProcessedPayload","getClockProcessedPayload","doNotShow","importName","friendlyImportName","initializers","name","header","path","priority","sys_init_basic_interface","START","configsReq","componentName","_this$dataModel$getIm","_selectedOptionVal","externalClkSelectedOptions","getImportValue","configsResp","selectedOptionVal","resetOscValue","getDynamicComponetDefaultValue","actualOscValue","indexOf","pllStatus","pllEnable","isComponentValue","clkSrcVal","_this$getClockCalcula","_this$getClockCalcula2","_this$getClockCalcula3","_this$getClockCalcula4","_this$getClockCalcula5","_this$getClockCalcula6","_this$getClockCalcula7","oscObj","extosc","getExtOsc","fosc","hfintosc","getHfIntOsc","getLfIntOsc","getMfIntOsc","mfintosc_31Khz","getMfIntOsc_31KHz","getSosc","hasSosc","soscEnabled","soscPowerMode","_this$getClockCalcula8","_this$getClockCalcula9","_this$getClockCalcula10","_this$getClockCalcula11","_this$getClockCalcula12","_this$getClockCalcula13","_this$getClockCalcula14","clockObj","_this$getPLLStatus","headers","initRegisters","getRegisterValues","deviceFrequency","moduleNameUpperCase","toUpperCase","moduleNameLowerCase","toLowerCase","PackageVersion","isPllEnabled","getPLLStatus","initializerOptimize","generateCommentedCode","_this$dataModel$getCo","componentValue","EXTOSC_4xPLL","_this$dataModel$getHa","_this$dataModel$getHa2","_MHz$replace","_MHz","foscOptions","getHardware","getPeripheral","registers","OSCFRQ","settings","HFFRQ","options","defaultVal","refClk","forEach","option","_option$name$replace","_option$name","defVal","getfoscOptions","_this$getDynamicCompo","_this$getModel$getCom5","_this$getModel$getCom6","_this$dataModel$getCo2","_this$dataModel$getCo3","noscOsccon1","push","type","Processor","Hint","text","Warning","_this$getModel$getCom7","ExtClkFreq_64MHz","ExtClkFreq_20MHz","ExtClkFreq_32MHz","_appModel$getImportVa","_appModel$getImportVa2","_appModel$getImportVa3","_appModel$getImportVa4","retRowJSONdata","rowActions","clockOutEnable","_appModel$getPCPHelpe","selectedOption","behaviourMeta","lockPinRegEx","isPic18ClkOut","actionArr","getPCPHelper","call","stateActionBuilder","rowWithName","forComponent","addIfLockedSetValue","addIfUnLockedSetValue","build","_iterator","_createForOfIteratorHelper","_step","s","n","done","eachAction","value","lockedState","pin_state","LOCKED","_appModel$getAssigned","meta","to","getAssignedImport","handle","providerId","unlockedState","UNLOCK","_appModel$getAssigned2","err","e","f","extClkSelect","_appModel$getComponen","mclrKey","getComponent","component","_appModel$getPCPHelpe2","_appModel$getPCPHelpe3","_appModel$getPCPHelpe4","concat","mclrEnable","lvpEnable","selectedMclrOption","selectedLvpOption","isPic18Mclr","isQ10Mclr","_appModel$getPCPHelpe5","_appModel$getPCPHelpe6","_iterator2","_step2","_appModel$getAssigned3","_appModel$getAssigned4","_appModel$getComponen2","_appModel$getPCPHelpe7","actions"],"mappings":"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CA,CAAC,0DAA0D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,0DAA0D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,uDAAuD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,2BAA2B;AAC3B,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA,iC;;;;;;;;;;;;ACtQa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,6DAA6D;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,qBAAqB,wDAAwD;AAChH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,qBAAqB;AACxD,2CAA2C,YAAY,6BAA6B,mBAAmB,8BAA8B,GAAG;AACxI,aAAa,GAAG;AAChB;AACA;AACA;AACA;;;;;;;;;;;;;AC/Ea;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,kCAAkC,EAAE;AAC5E;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACnBa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC1Ba;AACb,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,2FAAoB;AACrD;AACA,gBAAgB,mBAAO,CAAC,yEAAW;AACnC;AACA;;;;;;;;;;;;;ACNa;AACb;AACA;AACA,kCAAkC,oCAAoC,aAAa,EAAE,EAAE;AACvF,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,kCAAkC,mBAAO,CAAC,sFAA0B;AACpE,cAAc,mBAAO,CAAC,wFAAiB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,wCAAwC;AAC9D;AACA;;;;;;;;;;;;;ACvCa;AACb,8CAA8C,cAAc;AAC5D,iCAAiC,mBAAO,CAAC,sHAA4B;AACrE,6CAA6C,qCAAqC,6CAA6C,EAAE,EAAE;AACnI,iDAAiD,qCAAqC,iDAAiD,EAAE,EAAE;AAC3I,kDAAkD,qCAAqC,kDAAkD,EAAE,EAAE;AAC7I,2DAA2D,qCAAqC,2DAA2D,EAAE,EAAE;;;;;;;;;;;;;ACNlJ;AACb,8CAA8C,cAAc;AAC5D;AACA,YAAY,mBAAO,CAAC,4EAAO;AAC3B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,gBAAgB;AAChB;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA,yBAAyB;AACzB;AACA,qBAAqB;AACrB;AACA;AACA;AACA,4DAA4D;AAC5D,gDAAgD;AAChD,oSAAoS,kDAAkD,qBAAqB,yCAAyC,6BAA6B;AACjb;AACA,qBAAqB;AACrB;AACA,aAAa;AACb,SAAS;AACT;AACA;;;;;;;;;;;;;AClCa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,QAAQ;AACzD,wCAAwC,QAAQ;AAChD,wDAAwD,QAAQ;AAChE;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,aAAa,mBAAO,CAAC,8EAAQ;AAC7B,YAAY,mBAAO,CAAC,4EAAO;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,sEAAsE;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,+BAA+B;AACxF;AACA;AACA,qDAAqD,gBAAgB;AACrE;AACA;AACA;AACA,qDAAqD,cAAc,2CAA2C;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,+BAA+B;AACxF;AACA;AACA,0DAA0D,gBAAgB;AAC1E;AACA;AACA;AACA,qDAAqD,cAAc,0CAA0C;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/FoD;AAE7C,IAAMS,eAAe,gBAAAC,YAAA;AAWL;;AAEnB,SAAAD,gBACIE,SAAiB,EACjBC,aAAqB,EACrBC,WAAmB,EACnBC,UAAkB,EACpB;EAAA,IAAAC,KAAA;EAAAC,eAAA,OAAAP,eAAA;EAAAQ,eAAA,mBAjBiB,OAAO;EAAAA,eAAA,mBACP,QAAQ;EAAAA,eAAA,yBACF,OAAO;EAAAA,eAAA,eACjB,OAAO;EAAAA,eAAA;EAAAA,eAAA;EAAAA,eAAA;EAAAA,eAAA;EAAAA,eAAA,kBAMZ,QAAQ;EAAE;EAAAA,eAAA,kBACV,OAAO;EAAAA,eAAA,8BAcY,YAAc;IACvC,IAAIC,gBAAwB;IAC5B,IAAIC,KAAa;IAEjB,IAAIJ,KAAI,CAACJ,SAAS,KAAKS,gEAAe,CAACC,IAAI,EAAE;MACzCH,gBAAgB,GAAG,KAAK,GAAGH,KAAI,CAACD,UAAU;IAC9C,CAAC,MAAM,IAAIC,KAAI,CAACJ,SAAS,KAAKS,gEAAe,CAACE,QAAQ,EAAE;MACpDJ,gBAAgB,GAAG,KAAK,GAAGH,KAAI,CAACD,UAAU;IAC9C,CAAC,MAAM,IAAIC,KAAI,CAACJ,SAAS,KAAKS,gEAAe,CAACG,QAAQ,EAAE;MAAA,IAAAC,qBAAA,EAAAC,mBAAA;MACpDN,KAAK,GAAGO,QAAQ,EAAAF,qBAAA,IAAAC,mBAAA,GAACV,KAAI,CAACH,aAAa,cAAAa,mBAAA,uBAAlBA,mBAAA,CAAoBE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAAH,qBAAA,cAAAA,qBAAA,GAAI,SAAS,CAAC;MACtEN,gBAAgB,GAAIC,KAAK,GAAG,OAAO,GAAIJ,KAAI,CAACD,UAAU;IAC1D,CAAC,MAAM,IAAIC,KAAI,CAACJ,SAAS,KAAKS,gEAAe,CAACQ,cAAc,EAAE;MAAA,IAAAC,sBAAA,EAAAC,oBAAA;MAC1DX,KAAK,GAAGO,QAAQ,EAAAG,sBAAA,IAAAC,oBAAA,GAACf,KAAI,CAACH,aAAa,cAAAkB,oBAAA,uBAAlBA,oBAAA,CAAoBH,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAAE,sBAAA,cAAAA,sBAAA,GAAI,SAAS,CAAC;MACtE,IAAIV,KAAK,IAAI,CAAC,IAAIA,KAAK,IAAI,EAAE,IAAIA,KAAK,IAAI,EAAE,EAAE;QAC1CD,gBAAgB,GAAIC,KAAK,GAAG,CAAC,GAAG,OAAO,GAAIJ,KAAI,CAACD,UAAU;MAC9D,CAAC,MAAM;QACHI,gBAAgB,GAAIC,KAAK,GAAG,OAAO,GAAIJ,KAAI,CAACD,UAAU;MAC1D;IACJ,CAAC,MAAM,IAAIC,KAAI,CAACJ,SAAS,KAAKS,gEAAe,CAACW,MAAM,EAAE;MAClDb,gBAAgB,GAAGH,KAAI,CAACF,WAAW,GAAGE,KAAI,CAACD,UAAU;IACzD,CAAC,MAAM;MACH,IAAIC,KAAI,CAACF,WAAW,IAAIE,KAAI,CAACiB,OAAO,IAAIjB,KAAI,CAACF,WAAW,GAAGE,KAAI,CAACkB,OAAO,EAAE;QACrEf,gBAAgB,GAAGH,KAAI,CAACF,WAAW,GAAGE,KAAI,CAACD,UAAU;MACzD,CAAC,MAAM;QACHI,gBAAgB,GAAIH,KAAI,CAACF,WAAW,GAAG,CAAC,GAAIE,KAAI,CAACD,UAAU;MAC/D;IACJ;IACA,OAAOoB,IAAI,CAACC,KAAK,CAACjB,gBAAgB,CAAC;EACvC,CAAC;EAAAD,eAAA,sBAEoB,YAAc;IAAA,IAAAmB,sBAAA,EAAAC,oBAAA;IAC/B,QAAAD,sBAAA,IAAAC,oBAAA,GAAOtB,KAAI,CAACH,aAAa,cAAAyB,oBAAA,uBAAlBA,oBAAA,CAAoBV,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAAS,sBAAA,cAAAA,sBAAA,GAAI,SAAS;EACrE,CAAC;EAAAnB,eAAA,sBAEoB,YAAc;IAC/B,OAAOF,KAAI,CAACuB,QAAQ;EACxB,CAAC;EAAArB,eAAA,4BAE0B,YAAc;IACrC,OAAOF,KAAI,CAACwB,cAAc;EAC9B,CAAC;EAAAtB,eAAA,sBAEoB,YAAc;IAC/B,OAAOF,KAAI,CAACyB,QAAQ;EACxB,CAAC;EAAAvB,eAAA,oBAEkB,YAAc;IAC7B,OAAOF,KAAI,CAACF,WAAW,CAAC4B,QAAQ,CAAC,CAAC;EACtC,CAAC;EAAAxB,eAAA,kBAEgB,YAAc;IAC3B,OAAOF,KAAI,CAAC2B,IAAI;EACpB,CAAC;EA1DG,IAAI,CAAC/B,SAAS,GAAGA,SAAS;EAC1B,IAAI,CAACC,aAAa,GAAGA,aAAa;EAClC,IAAI,CAACC,WAAW,GAAGA,WAAW;EAC9B,IAAI,CAACC,UAAU,GAAGA,UAAU;AAChC,CAAC,E;;;;;;;;;;;;ACtBL;AAAA;AAAO,IAAM3B,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAA2B;EACvD,OAAO;IACHwD,YAAY,EAAEA;EAClB,CAAC;AACL,CAAC;AAED,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAIC,SAAiB,EAAEC,KAAY,EAAc;EAC/D,OAAO,IAAI;AACf,CAAC,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACXgE;AACb;AAEA;AASkB;AAEU;AAEzE,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,SAAmB,EAAkB;EAChE,IAAIA,SAAS,EAAE;IACX,OAAO,IAAIC,aAAa,CAACD,SAAS,CAAC;EACvC;EACA,OAAO,IAAIE,gBAAgB,CAAC,CAAC;AACjC,CAAC;;AAED;AACO,IAAMA,gBAAgB,gBAAAvC,YAAA,UAAAuC,iBAAA;EAAAjC,eAAA,OAAAiC,gBAAA;EAAAhC,eAAA,yBACR,YAAwB;IACrC,OAAO,CAAC,CAAC;EACb,CAAC;EAAAA,eAAA,mBACU,YAA4B;IACnC,OAAOtB,SAAS;EACpB,CAAC;AAAA;;AAGL;AACO,IAAMqD,aAAa,gBAAAtC,YAAA,CAItB,SAAAsC,cAAYD,SAAmB,EAAE;EAAA,IAAAhC,KAAA;EAAAC,eAAA,OAAAgC,aAAA;EAAA/B,eAAA;EAAAA,eAAA;EAAAA,eAAA,6BAIZ,YAAuB;IACxC,IAAI,CAACF,KAAI,CAACmC,eAAe,EAAE;MAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;MACvBvC,KAAI,CAACmC,eAAe,GAAG,IAAIzC,gEAAe,EAAA0C,qBAAA,GACtCpC,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAAL,qBAAA,cAAAA,qBAAA,GAAI,EAAE,GAAAC,sBAAA,GACtDrC,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAAJ,sBAAA,cAAAA,sBAAA,GAAI,EAAE,GAAAC,sBAAA,GACtDtC,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAAH,sBAAA,cAAAA,sBAAA,GAAI,KAAK,EACzD3B,QAAQ,EAAA4B,sBAAA,GAACvC,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAAF,sBAAA,cAAAA,sBAAA,GAAI,EAAE,CACnE,CAAC;IACL;IACA,OAAOvC,KAAI,CAACmC,eAAe;EAC/B,CAAC;EAAAjC,eAAA,yBAEgB,YAAwB;IACrC,OAAO;MACHwC,UAAU,EAAE1C,KAAI,CAAC2C,aAAa;MAC9BC,MAAM,EAAE5C,KAAI,CAAC6C,WAAW;MACxBC,SAAS,EAAE9C,KAAI,CAAC8C,SAAS;MACzBC,SAAS,EAAE/C,KAAI,CAAC+C,SAAS;MACzBC,WAAW,EAAEhD,KAAI,CAACiD,cAAc;MAChC9C,gBAAgB,EAAE,SAAAA,iBAAA;QAAA,OACdH,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC;MAAA;MACnD,iBAAiB,EAAE,SAAAC,eAAA;QAAA,OACfpD,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,CAACzB,QAAQ,CAAC,CAAC;MAAA;MAC9D2B,gCAAgC,EAAErD,KAAI,CAACqD,gCAAgC;MACvEC,qBAAqB,EAAEtD,KAAI,CAACsD,qBAAqB;MACjDC,YAAY,EAAEvD,KAAI,CAACwD,eAAe;MAClCC,qBAAqB,EAAEzD,KAAI,CAAC0D,oBAAoB;MAChDC,+BAA+B,EAAE3D,KAAI,CAAC4D,+BAA+B;MACrE,oBAAoB,EAAE5D,KAAI,CAAC6D,4BAA4B;MACvD,+BAA+B,EAAE7D,KAAI,CAAC8D,wBAAwB;MAC9DC,SAAS,EAAE,SAAAA,UAAA;QAAA,OAAe,KAAK;MAAA;MAC/BvE,YAAY,EAAEA,iFAAY;MAC1BwE,UAAU,EAAEhE,KAAI,CAACiE;IACrB,CAAC;EACL,CAAC;EAAA/D,eAAA,6BAE4B,UAAC2B,SAAiB,EAAa;IACxD,IAAIA,SAAS,KAAK,iBAAiB,EAAE,OAAO,qBAAqB;IACjE,IAAIA,SAAS,KAAK,0BAA0B,EAAE,OAAO,uBAAuB;IAC5E,IAAIA,SAAS,KAAK,eAAe,EAAE,OAAO,sBAAsB;IAChE,IAAIA,SAAS,KAAK,4BAA4B,EAAE,OAAO,uBAAuB;IAC9E,IAAIA,SAAS,KAAK,gBAAgB,EAAE,OAAO,MAAM;IACjD,OAAOA,SAAS;EACpB,CAAC;EAAA3B,eAAA,2CAC0C,YAAwC;IAC/E,OAAO;MACHgE,YAAY,EAAE,CACV;QACIC,IAAI,EAAE,qBAAqB;QAC3BC,MAAM,EAAE;UACJD,IAAI,EAAE,SAAS;UACfE,IAAI,EAAE;QACV,CAAC;QACDC,QAAQ,EAAEC,iFAAsC,CAACC;MACrD,CAAC;IAET,CAAC;EACL,CAAC;EAAAtE,eAAA,0CAEG,YAA4C;IACxC,OAAO;MACHuE,UAAU,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ;IAChE,CAAC;EACL,CAAC;EAAAvE,eAAA,yCAEoC,UACrCwE,aAAqB,EACA;IAAA,IAAAC,qBAAA,EAAAC,kBAAA;IACrB,IAAMC,0BAA0B,IAAAF,qBAAA,GAAG3E,KAAI,CAACgC,SAAS,CAAC8C,cAAc,CAC5D,4BACJ,CAAC,cAAAH,qBAAA,gBAAAA,qBAAA,GAFkCA,qBAAA,CAEhCI,WAAW,cAAAJ,qBAAA,uBAFqBA,qBAAA,CAElBD,aAAa,CAAC;IAC/B,IAAIM,iBAAqC;IAEzC,IAAIH,0BAA0B,EAAE;MAC5BG,iBAAiB,GAAGH,0BAA0B,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;IAC3E;IACA,QAAAD,kBAAA,GAAOI,iBAAiB,cAAAJ,kBAAA,cAAAA,kBAAA,GAAIhG,SAAS;EACzC,CAAC;EAAAsB,eAAA,yBAEwB,YAAc;IACnC,IAAM+E,aAAa,GAAGjF,KAAI,CAACkF,8BAA8B,CAAC,QAAQ,CAAC;IACnE,IAAIC,cAAc;IAClB,IAAI,CAAAF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,OAAO,CAAC,QAAQ,CAAC,MAAK,CAAC,CAAC,EAAE;MACzCD,cAAc,GAAG,oBAAoB;IACzC,CAAC,MAAM,IAAI,CAAAF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,OAAO,CAAC,sBAAsB,CAAC,MAAK,CAAC,CAAC,EAAE;MAC9DD,cAAc,GAAG,MAAM;IAC3B,CAAC,MAAM,IAAI,CAAAF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,OAAO,CAAC,eAAe,CAAC,MAAK,CAAC,CAAC,EAAE;MACvDD,cAAc,GAAG,UAAU;IAC/B,CAAC,MAAM,IACH,CAAAF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,OAAO,CAAC,4CAA4C,CAAC,MAAK,CAAC,CAAC,EAC7E;MACED,cAAc,GAAG,UAAU;IAC/B,CAAC,MAAM,IACH,CAAAF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,OAAO,CAAC,6CAA6C,CAAC,MAAK,CAAC,CAAC,EAC9E;MACED,cAAc,GAAG,UAAU;IAC/B,CAAC,MAAM,IAAI,CAAAF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,OAAO,CAAC,SAAS,CAAC,MAAK,CAAC,CAAC,EAAE;MACjDD,cAAc,GAAG,QAAQ;IAC7B,CAAC,MAAM;MACHA,cAAc,GAAGvG,SAAS;IAC9B;IACA,OAAOuG,cAAc;EACzB,CAAC;EAAAjF,eAAA,uBAEsB,YAAe;IAClC,IAAMmF,SAAS,GAAGrF,KAAI,CAACiD,cAAc,CAAC,CAAC;IACvC,IAAMqC,SAAS,GAAGtF,KAAI,CAACgC,SAAS,CAACuD,gBAAgB,CAAC,YAAY,CAAC;IAC/D,IAAMC,SAAS,GAAGxF,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,aAAa,CAAC;IACjE,IAAI4C,SAAS,KAAK,oBAAoB,EAAE;MACpC,OAAO,IAAI;IACf,CAAC,MAAM,IAAIC,SAAS,KAAK,IAAI,EAAE;MAC3B,OAAO,IAAI;IACf,CAAC,MAAM,IAAI,CAAAE,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEJ,OAAO,CAAC,QAAQ,CAAC,MAAK,CAAC,CAAC,EAAE;MAC5C,OAAO,IAAI;IACf,CAAC,MAAM,IAAI,CAAAI,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEJ,OAAO,CAAC,QAAQ,CAAC,MAAK,CAAC,CAAC,EAAE;MAC5C,OAAO,IAAI;IACf,CAAC,MAAM;MACH,OAAO,KAAK;IAChB;EACJ,CAAC;EAAAlF,eAAA,uCAEsC,YAAmC;IAAA,IAAAuF,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;IACtE,IAAMC,MAAmC,GAAG;MACxCC,MAAM,GAAAR,qBAAA,GAAEzF,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACgD,SAAS,CAAC,CAAC,cAAAT,qBAAA,cAAAA,qBAAA,GAAI,OAAO;MACxDU,IAAI,GAAAT,sBAAA,GAAE1F,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,CAACzB,QAAQ,CAAC,CAAC,cAAAgE,sBAAA,cAAAA,sBAAA,GAAI,SAAS;MAC7EU,QAAQ,GAAAT,sBAAA,GAAE3F,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACmD,WAAW,CAAC,CAAC,cAAAV,sBAAA,cAAAA,sBAAA,GAAI,SAAS;MAC9DlE,QAAQ,GAAAmE,sBAAA,GAAE5F,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACoD,WAAW,CAAC,CAAC,cAAAV,sBAAA,cAAAA,sBAAA,GAAI,OAAO;MAC5DrE,QAAQ,GAAAsE,sBAAA,GAAE7F,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACqD,WAAW,CAAC,CAAC,cAAAV,sBAAA,cAAAA,sBAAA,GAAI,QAAQ;MAC7DW,cAAc,GAAAV,sBAAA,GAAE9F,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACuD,iBAAiB,CAAC,CAAC,cAAAX,sBAAA,cAAAA,sBAAA,GAAI,OAAO;MACxEnE,IAAI,GAAAoE,sBAAA,GAAE/F,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACwD,OAAO,CAAC,CAAC,cAAAX,sBAAA,cAAAA,sBAAA,GAAI;IACjD,CAAC;IACD,IAAMY,OAAgB,GAClB3G,KAAI,CAACgC,SAAS,CAACuD,gBAAgB,CAAC,aAAa,CAAC,KAAK3G,SAAS,GAAG,IAAI,GAAG,KAAK;IAC/E,IAAI+H,OAAO,EAAE;MACTX,MAAM,CAACW,OAAO,GAAG,IAAI;MACrBX,MAAM,CAACY,WAAW,GAAG5G,KAAI,CAACgC,SAAS,CAACuD,gBAAgB,CAAC,aAAa,CAAC;MACnES,MAAM,CAACa,aAAa,GAAG7G,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,gBAAgB,CAAC;IAC7E;IACA,OAAOuD,MAAM;EACjB,CAAC;EAAA9F,eAAA,mCAEkC,YAAqB;IAAA,IAAA4G,sBAAA,EAAAC,sBAAA,EAAAC,uBAAA,EAAAC,uBAAA,EAAAC,uBAAA,EAAAC,uBAAA,EAAAC,uBAAA;IACpD,IAAMC,QAAuB,GAAG;MAC5BlB,IAAI,GAAAW,sBAAA,GAAE9G,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,CAACzB,QAAQ,CAAC,CAAC,cAAAoF,sBAAA,cAAAA,sBAAA,GAAI,SAAS;MAC7Eb,MAAM,GAAAc,sBAAA,GAAE/G,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACgD,SAAS,CAAC,CAAC,cAAAa,sBAAA,cAAAA,sBAAA,GAAI,OAAO;MACxDX,QAAQ,GAAAY,uBAAA,GAAEhH,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACmD,WAAW,CAAC,CAAC,cAAAW,uBAAA,cAAAA,uBAAA,GAAI,SAAS;MAC9DvF,QAAQ,GAAAwF,uBAAA,GAAEjH,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACoD,WAAW,CAAC,CAAC,cAAAW,uBAAA,cAAAA,uBAAA,GAAI,OAAO;MAC5D1F,QAAQ,GAAA2F,uBAAA,GAAElH,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACqD,WAAW,CAAC,CAAC,cAAAW,uBAAA,cAAAA,uBAAA,GAAI,QAAQ;MAC7DV,cAAc,GAAAW,uBAAA,GAAEnH,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACuD,iBAAiB,CAAC,CAAC,cAAAU,uBAAA,cAAAA,uBAAA,GAAI,OAAO;MACxExF,IAAI,GAAAyF,uBAAA,GAAEpH,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACwD,OAAO,CAAC,CAAC,cAAAU,uBAAA,cAAAA,uBAAA,GAAI;IACjD,CAAC;IACD,IAAMT,OAAgB,GAClB3G,KAAI,CAACgC,SAAS,CAACuD,gBAAgB,CAAC,aAAa,CAAC,KAAK3G,SAAS,GAAG,IAAI,GAAG,KAAK;IAC/E,IAAI+H,OAAO,EAAE;MACTU,QAAQ,CAACV,OAAO,GAAG,IAAI;MACvBU,QAAQ,CAACT,WAAW,GAAG5G,KAAI,CAACgC,SAAS,CAACuD,gBAAgB,CAAC,aAAa,CAAC;MACrE8B,QAAQ,CAACR,aAAa,GAAG7G,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,gBAAgB,CAAC;IAC/E;IACA,OAAO4E,QAAQ;EACnB,CAAC;EAAAnH,eAAA,wBAEsB,YAAc;IACjC,OAAO,eAAe;EAC1B,CAAC;EAAAA,eAAA,mBACiB,YAAgB;IAC9B,OAAOF,KAAI,CAACgC,SAAS;EACzB,CAAC;EAAA9B,eAAA,0BAEyB,YAAW;IAAA,IAAAoH,kBAAA;IACjC,IAAMC,OAAkC,GAAG;MACvCpD,IAAI,EAAE,SAAS;MACfE,IAAI,EAAE;IACV,CAAC;IACD,IAAMmD,aAAa,GAAGxH,KAAI,CAACgC,SAAS,CAACyF,iBAAiB,CAAC,CAAC;IACxD;IACA,OAAO;MACHC,eAAe,EAAE1H,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,CAACzB,QAAQ,CAAC,CAAC;MAE3E8F,aAAa,EAAEA,aAAa;MAC5BpD,MAAM,EAAEmD,OAAO;MAEfI,mBAAmB,EAAE3H,KAAI,CAAC2C,aAAa,CAAC,CAAC,CAACiF,WAAW,CAAC,CAAC;MACvDC,mBAAmB,EAAE7H,KAAI,CAAC2C,aAAa,CAAC,CAAC,CAACmF,WAAW,CAAC,CAAC;MACvDC,cAAc,EAAE,OAAO;MACvBC,YAAY,GAAAV,kBAAA,GAAEtH,KAAI,CAACiI,YAAY,CAAC,CAAC,cAAAX,kBAAA,cAAAA,kBAAA,GAAI,KAAK;MAC1C;;MAEAY,mBAAmB,EACflI,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,yBAAyB,CAAC,KAC5D,0BAA0B,GACpB,IAAI,GACJ,KAAK;MACf0F,qBAAqB,EACjBnI,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,yBAAyB,CAAC,KAC5D,8CAA8C,GACxC,IAAI,GACJ;IACd,CAAC;EACL,CAAC;EAAAvC,eAAA,gCAE+B,YAA6B;IACzD,OAAO;MACHqH,OAAO,EAAE,CACL;QACIpD,IAAI,EAAE,SAAS;QACfE,IAAI,EAAE;MACV,CAAC;IAET,CAAC;EACL,CAAC;EAAAnE,eAAA,oBAEmB,UAACwE,aAAqB,EAAc;IAAA,IAAA0D,qBAAA;IACpD,QAAQ1D,aAAa;MACjB,KAAK,aAAa;QACd,OACI,EAAA0D,qBAAA,GAAApI,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,aAAa,CAAC,cAAA2F,qBAAA,uBAA/CA,qBAAA,CAAiDhD,OAAO,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;MAE5E,KAAK,kBAAkB;QACnB,OAAO,KAAK;MAChB,KAAK,cAAc;QACf,OAAO,KAAK;MAChB;QACI,OAAO,IAAI;IACnB;EACJ,CAAC;EAAAlF,eAAA,oBAEmB,UAACwE,aAAqB,EAAc;IACpD,IAAM2D,cAAc,GAAGrI,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,aAAa,CAAC;IACtE,QAAQiC,aAAa;MACjB,KAAK,aAAa;QACd,IACI2D,cAAc,KAAKhI,gEAAe,CAACW,MAAM,IACzCqH,cAAc,KAAKhI,gEAAe,CAACiI,YAAY,EACjD;UACE,OAAO,IAAI;QACf,CAAC,MAAM;UACH,OAAO,KAAK;QAChB;MACJ,KAAK,cAAc;QACf,IAAID,cAAc,IAAIhI,gEAAe,CAACE,QAAQ,EAAE;UAC5C,OAAO,KAAK;QAChB,CAAC,MAAM;UACH,OAAO,IAAI;QACf;MACJ,KAAK,aAAa;QACd,IACI8H,cAAc,IAAIhI,gEAAe,CAACG,QAAQ,IAC1C6H,cAAc,IAAIhI,gEAAe,CAACQ,cAAc,EAClD;UACE,OAAO,KAAK;QAChB,CAAC,MAAM;UACH,OAAO,IAAI;QACf;MACJ;QACI,OAAO,IAAI;IACnB;EACJ,CAAC;EAAAX,eAAA,yBACwB,YAA0B;IAAA,IAAAqI,qBAAA,EAAAC,sBAAA,EAAAC,YAAA,EAAAC,IAAA;IAC/C,IAAMC,WAAW,IAAAJ,qBAAA,IAAAC,sBAAA,GACbxI,KAAI,CAACgC,SAAS,CAAC4G,WAAW,CAAC,CAAC,cAAAJ,sBAAA,gBAAAA,sBAAA,GAA5BA,sBAAA,CAA8BK,aAAa,CAAC,CAAC,cAAAL,sBAAA,gBAAAA,sBAAA,GAA7CA,sBAAA,CAA+CM,SAAS,CAACC,MAAM,cAAAP,sBAAA,gBAAAA,sBAAA,GAA/DA,sBAAA,CAAiEQ,QAAQ,cAAAR,sBAAA,uBAAzEA,sBAAA,CACMS,KAAK,CAACC,OAAO,cAAAX,qBAAA,cAAAA,qBAAA,GAAI,EAAE;IAC7B,IAAIY,UAA8B;IAClC,IAAIC,MAAM,GAAGzI,QAAQ,EAAA8H,YAAA,IAAAC,IAAA,GAAC,OAAO,cAAAA,IAAA,uBAAPA,IAAA,CAAS9H,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAA6H,YAAA,cAAAA,YAAA,GAAI,CAAC,CAAC;IACxD,IAAIE,WAAW,EAAE;MACbA,WAAW,CAACU,OAAO,CAAC,UAACC,MAAM,EAAK;QAAA,IAAAC,oBAAA,EAAAC,YAAA;QAC5B,IAAMpJ,KAAK,GAAGO,QAAQ,EAAA4I,oBAAA,IAAAC,YAAA,GAACF,MAAM,CAACnF,IAAI,cAAAqF,YAAA,uBAAXA,YAAA,CAAa5I,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAA2I,oBAAA,cAAAA,oBAAA,GAAI,CAAC,CAAC;QAE7D,IAAInJ,KAAK,GAAGgJ,MAAM,EAAE;UAChBA,MAAM,GAAGhJ,KAAK;UACd+I,UAAU,GAAGG,MAAM,CAACnF,IAAI;QAC5B;MACJ,CAAC,CAAC;IACN;IACA,OAAOgF,UAAU;EACrB,CAAC;EAAAjJ,eAAA,+BAE8B,UAACwE,aAAqB,EAAU;IAC3D,IAAI+E,MAA0B,GAAG7K,SAAS;IAC1C,QAAQ8F,aAAa;MACjB,KAAK,aAAa;QACd+E,MAAM,GAAGzJ,KAAI,CAAC0J,cAAc,CAAC,CAAC;QAC9B;IACR;IACA,OAAOD,MAAM;EACjB,CAAC;EAAAvJ,eAAA,sBAEqB,YAAyB;IAAA,IAAAyJ,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;IAC3C,IAAMnH,MAAyB,GAAG,EAAE;IACpC,IAAMoC,iBAAyB,IAAA2E,qBAAA,GAC3B3J,KAAI,CAACkF,8BAA8B,CAAC,SAAS,CAAC,cAAAyE,qBAAA,cAAAA,qBAAA,GAAI,EAAE;IACxD,IAAMK,WAAW,GAAGhK,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,aAAa,CAAC;IAEnE,IACIuH,WAAW,KAAK3J,gEAAe,CAACiI,YAAY,IAC5C0B,WAAW,KAAK3J,gEAAe,CAACW,MAAM,EACxC;MACE4B,MAAM,CAACqH,IAAI,CAAC;QACRC,IAAI,EAAEC,8EAAoB,CAACC,IAAI;QAC/BC,IAAI,EAAE;MACV,CAAC,CAAC;IACN;IAEA,IACIL,WAAW,KAAK3J,gEAAe,CAACiI,YAAY,KAC3C,EAAAsB,sBAAA,GAAC5J,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAAmH,sBAAA,cAAAA,sBAAA,GAAI,CAAC,KACnD5J,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACjC,OAAO,IACjC,EAAA4I,sBAAA,GAAC7J,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAAoH,sBAAA,cAAAA,sBAAA,GAAI,CAAC,IAClD7J,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAAChC,OAAO,CAAC,EAC5C;MACE0B,MAAM,CAACqH,IAAI,CAAC;QACRC,IAAI,EAAEC,8EAAoB,CAACG,OAAO;QAClCD,IAAI,EAAE;MACV,CAAC,CAAC;IACN;IAEA,IACIL,WAAW,KAAK3J,gEAAe,CAACiI,YAAY,IAC5C0B,WAAW,KAAK3J,gEAAe,CAACW,MAAM,EACxC;MAAA,IAAAuJ,sBAAA;MACE,IACI,CAAAvF,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAEI,OAAO,CAAC,gBAAgB,CAAC,KAAI,CAAC,CAAC,IAClDpF,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,GAC3C9C,gEAAe,CAACmK,gBAAgB,EACtC;QACE5H,MAAM,CAACqH,IAAI,CAAC;UACRC,IAAI,EAAEC,8EAAoB,CAACG,OAAO;UAClCD,IAAI,EACA,8DAA8D,GAC9DhK,gEAAe,CAACmK,gBAAgB,GAChC;QACR,CAAC,CAAC;MACN;MACA,IACI,CAAAxF,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAEI,OAAO,CAAC,oBAAoB,CAAC,KAAI,CAAC,CAAC,IACtD,EAAAmF,sBAAA,GAACvK,KAAI,CAACwC,QAAQ,CAAC,CAAC,CAACC,iBAAiB,CAAC,aAAa,CAAC,cAAA8H,sBAAA,cAAAA,sBAAA,GAAI,CAAC,IAAI,QAAQ,IAClEvK,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,GAC3C9C,gEAAe,CAACoK,gBAAgB,EACtC;QACE7H,MAAM,CAACqH,IAAI,CAAC;UACRC,IAAI,EAAEC,8EAAoB,CAACG,OAAO;UAClCD,IAAI,EACA,8DAA8D,GAC9DhK,gEAAe,CAACoK,gBAAgB,GAChC;QACR,CAAC,CAAC;MACN;MACA,IACIzF,iBAAiB,CAACI,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,IACzDpF,KAAI,CAACkD,kBAAkB,CAAC,CAAC,CAACC,mBAAmB,CAAC,CAAC,GAC3C9C,gEAAe,CAACqK,gBAAgB,EACtC;QACE9H,MAAM,CAACqH,IAAI,CAAC;UACRC,IAAI,EAAEC,8EAAoB,CAACG,OAAO;UAClCD,IAAI,EACA,8DAA8D,GAC9DhK,gEAAe,CAACqK,gBAAgB,GAChC;QACR,CAAC,CAAC;MACN;IACJ;IAEA,IAAMtK,KAAK,GAAGO,QAAQ,EAAAmJ,sBAAA,IAAAC,sBAAA,GAClB/J,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,aAAa,CAAC,cAAAsH,sBAAA,uBAA/CA,sBAAA,CAAiDnJ,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAAkJ,sBAAA,cAAAA,sBAAA,GAAI,GAC5E,CAAC;IACD,IACI9J,KAAI,CAACgC,SAAS,CAACS,iBAAiB,CAAC,aAAa,CAAC,KAC3CpC,gEAAe,CAACQ,cAAc,KACjCT,KAAK,IAAI,CAAC,IAAIA,KAAK,IAAI,CAAC,IAAIA,KAAK,IAAI,CAAC,IAAIA,KAAK,IAAI,EAAE,CAAC,EACzD;MACEwC,MAAM,CAACqH,IAAI,CAAC;QACRC,IAAI,EAAEC,8EAAoB,CAACG,OAAO;QAClCD,IAAI,EAAE;MACV,CAAC,CAAC;IACN;IAEA,OAAOzH,MAAM;EACjB,CAAC;EA3XG,IAAI,CAACZ,SAAS,GAAGA,SAAS;AAC9B,CAAC,E;;;;;;;;;;;;;;;;;;;;;;;;;;ACxCoE;AAGzE;AACO,IAAM9C,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,QAAkB,EAAU;EAC3D;EACA,OAAO,CAAC,CAAC;AACb,CAAC;;AAED;AACO,SAASC,UAAUA,CAACD,QAAkB,EAAEE,OAAgB,EAAuB;EAAA,IAAAsL,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EAClF,IAAIC,cAAmC,GAAG1L,OAAO;EACjD,IAAI2L,UAAe,GAAG,EAAE;EACxB,IAAMC,cAAc,IAAAN,qBAAA,GAAGxL,QAAQ,CAAC2F,cAAc,CAAC,4BAA4B,CAAC,cAAA6F,qBAAA,gBAAAA,qBAAA,GAArDA,qBAAA,CACjB5F,WAAW,cAAA4F,qBAAA,uBADMA,qBAAA,CACH,UAAU,CAAC;EAE/B,IAAIM,cAAc,EAAE;IAAA,IAAAC,qBAAA;IAChB,OAAOD,cAAc,CAAC,SAAS,CAAC;IAChC,OAAOA,cAAc,CAAC,sBAAsB,CAAC;IAC7C,IAAME,cAAsB,GAAGF,cAAc,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;IAEtE,IAAIE,cAAc,CAAC/F,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,EAAE;MAC5D,IAAI/F,OAAO,CAAC8E,IAAI,KAAK,UAAU,EAAE;QAC7B4G,cAAc,GAAA1M,aAAA,CAAAA,aAAA,KACP0M,cAAc;UACjBK,aAAa,EAAE;YAAEC,YAAY,EAAE;UAAS;QAAC,EAC5C;MACL;IACJ;IAEA,IAAMC,aAAsB,GACxBH,cAAc,KAAK,4BAA4B,IAC/CA,cAAc,KAAK,6BAA6B,GAC1C,IAAI,GACJ,KAAK;IACf,IAAMI,SAAS,IAAAL,qBAAA,GAAG/L,QAAQ,CACrBqM,YAAY,cAAAN,qBAAA,uBADCA,qBAAA,CAAAO,IAAA,CAAAtM,QACE,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,UAAU,CAAC,CACvBC,YAAY,CAACX,cAAc,CAAC,CAC5BY,mBAAmB,CAChB,QAAQ,EACRP,aAAa,GACP,4BAA4B,GAC5B,0DACV,CAAC,CACAQ,qBAAqB,CAClB,IAAI,EACJR,aAAa,GACP,6BAA6B,GAC7B,iEACV,CAAC,CACAS,KAAK,CAAC,CAAC;IACZ;IAAA,IAAAC,SAAA,GAAAC,0BAAA,CACyBV,SAAS;MAAAW,KAAA;IAAA;MAAlC,KAAAF,SAAA,CAAAG,CAAA,MAAAD,KAAA,GAAAF,SAAA,CAAAI,CAAA,IAAAC,IAAA,GAAoC;QAAA,IAAzBC,UAAU,GAAAJ,KAAA,CAAAK,KAAA;QACjB,IAAMC,WAAW,GAAGF,UAAU,CAACxK,KAAK,CAAC2K,6EAAS,CAACC,MAAM,CAAC;QACtD,IAAIF,WAAW,EAAE;UAAA,IAAAG,qBAAA;UACbH,WAAW,CAACI,IAAI,GAAG;YACfC,EAAE,GAAAF,qBAAA,GAAExN,QAAQ,CAAC2N,iBAAiB,CAAC,4BAA4B,CAAC,cAAAH,qBAAA,gBAAAA,qBAAA,GAAxDA,qBAAA,CAA0DI,MAAM,cAAAJ,qBAAA,uBAAhEA,qBAAA,CACEK;UACV,CAAC;QACL;QACA,IAAMC,aAAa,GAAGX,UAAU,CAACxK,KAAK,CAAC2K,6EAAS,CAACS,MAAM,CAAC;QACxD,IAAID,aAAa,EAAE;UAAA,IAAAE,sBAAA;UACfF,aAAa,CAACL,IAAI,GAAG;YACjBC,EAAE,GAAAM,sBAAA,GAAEhO,QAAQ,CAAC2N,iBAAiB,CAAC,4BAA4B,CAAC,cAAAK,sBAAA,gBAAAA,sBAAA,GAAxDA,sBAAA,CAA0DJ,MAAM,cAAAI,sBAAA,uBAAhEA,sBAAA,CACEH;UACV,CAAC;QACL;QACAhC,UAAU,CAACf,IAAI,CAACqC,UAAU,CAAC;MAC/B;IAAC,SAAAc,GAAA;MAAApB,SAAA,CAAAqB,CAAA,CAAAD,GAAA;IAAA;MAAApB,SAAA,CAAAsB,CAAA;IAAA;EACL;EAEA,IAAMC,YAAY,IAAA3C,sBAAA,GAAGzL,QAAQ,CAAC2F,cAAc,CAAC,4BAA4B,CAAC,cAAA8F,sBAAA,gBAAAA,sBAAA,GAArDA,sBAAA,CACf7F,WAAW,cAAA6F,sBAAA,uBADIA,sBAAA,CACD,SAAS,CAAC;EAE9B,IAAI2C,YAAY,EAAE;IAAA,IAAAC,qBAAA;IACd,OAAOD,YAAY,CAAC,SAAS,CAAC;IAC9B,OAAOA,YAAY,CAAC,sBAAsB,CAAC;IAE3C,IAAMpC,eAAsB,GAAGoC,YAAY,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;IAEpE,IACIpC,eAAc,CAAC/F,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAChD+F,eAAc,CAAC/F,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EACpC;MACE,IAAI/F,OAAO,CAAC8E,IAAI,KAAK,MAAM,IAAI9E,OAAO,CAAC8E,IAAI,KAAK,MAAM,EAAE;QACpD4G,cAAc,GAAGnM,SAAS;MAC9B;IACJ;IAEA,IAAIuM,eAAc,CAAC/F,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,EAAE;MACtD,IAAI/F,OAAO,CAAC8E,IAAI,KAAK,SAAS,EAAE;QAC5B4G,cAAc,GAAGnM,SAAS;MAC9B;IACJ;IAEA,IACIuM,eAAc,CAAC/F,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,IACtD+F,eAAc,CAAC/F,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAC1C;MACE,IACI/F,OAAO,CAAC8E,IAAI,KAAK,SAAS,IAC1B9E,OAAO,CAAC8E,IAAI,KAAK,MAAM,IACvB9E,OAAO,CAAC8E,IAAI,KAAK,MAAM,EACzB;QACE4G,cAAc,GAAGnM,SAAS;MAC9B;IACJ;IACA;IACA,IAAM6O,OAAO,IAAAD,qBAAA,GAAGrO,QAAQ,CAACuO,YAAY,CAAC,eAAe,CAAC,cAAAF,qBAAA,uBAAtCA,qBAAA,CAAwCG,SAAS;IACjE,IAAIF,OAAO,EAAE;MAAA,IAAAG,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;MACT9C,UAAU,GAAGA,UAAU,CAAC+C,MAAM,EAAAH,sBAAA,GAC1BzO,QAAQ,CACHqM,YAAY,cAAAoC,sBAAA,uBADjBA,sBAAA,CAAAnC,IAAA,CAAAtM,QACoB,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,SAAS,CAAC,CACtBC,YAAY,CAAC6B,OAAO,CAAC,CACrB5B,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC7BC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC/BC,KAAK,CAAC,CACf,CAAC;MAEDf,UAAU,GAAGA,UAAU,CAAC+C,MAAM,EAAAF,sBAAA,GAC1B1O,QAAQ,CACHqM,YAAY,cAAAqC,sBAAA,uBADjBA,sBAAA,CAAApC,IAAA,CAAAtM,QACoB,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,MAAM,CAAC,CACnBC,YAAY,CAAC6B,OAAO,CAAC,CACrB5B,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC7BC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC/BC,KAAK,CAAC,CACf,CAAC;MAEDf,UAAU,GAAGA,UAAU,CAAC+C,MAAM,EAAAD,sBAAA,GAC1B3O,QAAQ,CACHqM,YAAY,cAAAsC,sBAAA,uBADjBA,sBAAA,CAAArC,IAAA,CAAAtM,QACoB,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,MAAM,CAAC,CACnBC,YAAY,CAAC6B,OAAO,CAAC,CACrB5B,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC7BC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC/BC,KAAK,CAAC,CACf,CAAC;IACL;EACJ;EAEA,IAAMiC,UAAU,IAAAnD,sBAAA,GAAG1L,QAAQ,CAAC2F,cAAc,CAAC,4BAA4B,CAAC,cAAA+F,sBAAA,gBAAAA,sBAAA,GAArDA,sBAAA,CACb9F,WAAW,cAAA8F,sBAAA,uBADEA,sBAAA,CACC,OAAO,CAAC;EAC5B,IAAMoD,SAAS,IAAAnD,sBAAA,GAAG3L,QAAQ,CAAC2F,cAAc,CAAC,4BAA4B,CAAC,cAAAgG,sBAAA,gBAAAA,sBAAA,GAArDA,sBAAA,CACZ/F,WAAW,cAAA+F,sBAAA,uBADCA,sBAAA,CACE,KAAK,CAAC;EAE1B,IAAIkD,UAAU,IAAIC,SAAS,EAAE;IACzB,OAAOD,UAAU,CAAC,SAAS,CAAC;IAC5B,OAAOA,UAAU,CAAC,sBAAsB,CAAC;IACzC,IAAME,kBAA0B,GAAGF,UAAU,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;IAEtE,OAAOC,SAAS,CAAC,SAAS,CAAC;IAC3B,OAAOA,SAAS,CAAC,sBAAsB,CAAC;IACxC,IAAME,iBAAyB,GAAGF,SAAS,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC;IAEpE,IACIE,iBAAiB,CAAC/I,OAAO,CAAC,6CAA6C,CAAC,IACpE,CAAC,CAAC,IACN+I,iBAAiB,CAAC/I,OAAO,CACrB,uDACJ,CAAC,IAAI,CAAC,CAAC,EACT;MACE,IACI8I,kBAAkB,CAAC9I,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,IACpD8I,kBAAkB,CAAC9I,OAAO,CAAC,mCAAmC,CAAC,IAAI,CAAC,CAAC,IACrE8I,kBAAkB,KAAK,wBAAwB,EACjD;QACE,IAAI7O,OAAO,CAAC8E,IAAI,KAAK,OAAO,IAAI4G,cAAc,EAAE;UAC5CA,cAAc,GAAA1M,aAAA,CAAAA,aAAA,KACP0M,cAAc;YACjBK,aAAa,EAAE;cAAEC,YAAY,EAAE;YAAO;UAAC,EAC1C;QACL;MACJ;MACA,IAAM+C,WAAoB,GACtBF,kBAAkB,KACd,qEAAqE,IACzEA,kBAAkB,KACd,4FAA4F,GAC1F,IAAI,GACJ,KAAK;MACf,IAAMG,SAAkB,GACpBH,kBAAkB,KAAK,wBAAwB,IAC/CA,kBAAkB,KACd,2EAA2E,GACzE,IAAI,GACJ,KAAK;MACf,IAAI3C,UAAc,GAAG,EAAE;;MAEvB;MACA,IAAI8C,SAAS,EAAE;QAAA,IAAAC,sBAAA;QACX/C,UAAS,IAAA+C,sBAAA,GAAGnP,QAAQ,CACfqM,YAAY,cAAA8C,sBAAA,uBADLA,sBAAA,CAAA7C,IAAA,CAAAtM,QACQ,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,OAAO,CAAC,CACpBC,YAAY,CAACoC,UAAU,CAAC,CACxBnC,mBAAmB,CAAC,MAAM,EAAE,wBAAwB,CAAC,CACrDC,qBAAqB,CAClB,IAAI,EACJ,2EACJ,CAAC,CACAC,KAAK,CAAC,CAAC;MAChB,CAAC,MAAM;QAAA,IAAAwC,sBAAA;QACHhD,UAAS,IAAAgD,sBAAA,GAAGpP,QAAQ,CACfqM,YAAY,cAAA+C,sBAAA,uBADLA,sBAAA,CAAA9C,IAAA,CAAAtM,QACQ,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,OAAO,CAAC,CACpBC,YAAY,CAACoC,UAAU,CAAC,CACxBnC,mBAAmB,CAChB,MAAM,EACNuC,WAAW,GACL,qEAAqE,GACrE,mCACV,CAAC,CACAtC,qBAAqB,CAClB,IAAI,EACJsC,WAAW,GACL,4FAA4F,GAC5F,4CACV,CAAC,CACArC,KAAK,CAAC,CAAC;MAChB;;MAEA;MAAA,IAAAyC,UAAA,GAAAvC,0BAAA,CACyBV,UAAS;QAAAkD,MAAA;MAAA;QAAlC,KAAAD,UAAA,CAAArC,CAAA,MAAAsC,MAAA,GAAAD,UAAA,CAAApC,CAAA,IAAAC,IAAA,GAAoC;UAAA,IAAzBC,WAAU,GAAAmC,MAAA,CAAAlC,KAAA;UACjB,IAAMC,YAAW,GAAGF,WAAU,CAACxK,KAAK,CAAC2K,6EAAS,CAACC,MAAM,CAAC;UACtD,IAAIF,YAAW,EAAE;YAAA,IAAAkC,sBAAA;YACblC,YAAW,CAACI,IAAI,GAAG;cACfC,EAAE,GAAA6B,sBAAA,GAAEvP,QAAQ,CAAC2N,iBAAiB,CAAC,4BAA4B,CAAC,cAAA4B,sBAAA,gBAAAA,sBAAA,GAAxDA,sBAAA,CACE3B,MAAM,cAAA2B,sBAAA,uBADRA,sBAAA,CACU1B;YAClB,CAAC;UACL;UACA,IAAMC,cAAa,GAAGX,WAAU,CAACxK,KAAK,CAAC2K,6EAAS,CAACS,MAAM,CAAC;UACxD,IAAID,cAAa,EAAE;YAAA,IAAA0B,sBAAA;YACf1B,cAAa,CAACL,IAAI,GAAG;cACjBC,EAAE,GAAA8B,sBAAA,GAAExP,QAAQ,CAAC2N,iBAAiB,CAAC,4BAA4B,CAAC,cAAA6B,sBAAA,gBAAAA,sBAAA,GAAxDA,sBAAA,CACE5B,MAAM,cAAA4B,sBAAA,uBADRA,sBAAA,CACU3B;YAClB,CAAC;UACL;UACAhC,UAAU,CAACf,IAAI,CAACqC,WAAU,CAAC;QAC/B;MAAC,SAAAc,GAAA;QAAAoB,UAAA,CAAAnB,CAAA,CAAAD,GAAA;MAAA;QAAAoB,UAAA,CAAAlB,CAAA;MAAA;IACL,CAAC,MAAM;MAAA,IAAAsB,sBAAA;MACH,IAAIV,kBAAkB,EAAE;QACpB,IAAI7O,OAAO,CAAC8E,IAAI,KAAK,OAAO,IAAI4G,cAAc,EAAE;UAC5CA,cAAc,GAAA1M,aAAA,CAAAA,aAAA,KACP0M,cAAc;YACjBK,aAAa,EAAE;cAAEC,YAAY,EAAE;YAAO;UAAC,EAC1C;QACL;MACJ;MACA,IAAMoC,QAAO,IAAAmB,sBAAA,GAAGzP,QAAQ,CAACuO,YAAY,CAAC,eAAe,CAAC,cAAAkB,sBAAA,uBAAtCA,sBAAA,CAAwCjB,SAAS;MACjE,IAAIF,QAAO,EAAE;QAAA,IAAAoB,sBAAA;QACT7D,UAAU,GAAGA,UAAU,CAAC+C,MAAM,EAAAc,sBAAA,GAC1B1P,QAAQ,CACHqM,YAAY,cAAAqD,sBAAA,uBADjBA,sBAAA,CAAApD,IAAA,CAAAtM,QACoB,CAAC,CAChBuM,kBAAkB,CAACrM,OAAO,CAAC,CAC3BsM,WAAW,CAAC,OAAO,CAAC,CACpBC,YAAY,CAAC6B,QAAO,CAAC,CACrB5B,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC7BC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,CAC/BC,KAAK,CAAC,CACf,CAAC;MACL;IACJ;EACJ;EAEA,IAAM/B,WAAW,GAAG7K,QAAQ,CAACsD,iBAAiB,CAAC,aAAa,CAAC;EAC7D,IACIuH,WAAW,KAAK,UAAU,IAC1BA,WAAW,KAAK,UAAU,IAC1BA,WAAW,KAAK,MAAM,IACtBA,WAAW,KAAK,sBAAsB,EACxC;IACE,IAAI3K,OAAO,CAAC8E,IAAI,KAAK,SAAS,EAAE;MAC5B4G,cAAc,GAAGnM,SAAS;IAC9B;IACA,IAAIS,OAAO,CAAC8E,IAAI,KAAK,MAAM,EAAE;MACzB4G,cAAc,GAAGnM,SAAS;IAC9B;IACA,IAAIS,OAAO,CAAC8E,IAAI,KAAK,MAAM,EAAE;MACzB4G,cAAc,GAAGnM,SAAS;IAC9B;EACJ;EAEA,IAAIS,OAAO,CAAC8E,IAAI,KAAK,OAAO,EAAE;IAC1B,IAAI6F,WAAW,KAAK,MAAM,IAAIe,cAAc,EAAE;MAC1CA,cAAc,GAAA1M,aAAA,CAAAA,aAAA,KACP0M,cAAc;QACjBK,aAAa,EAAE;UAAEC,YAAY,EAAE;QAAQ;MAAC,EAC3C;IACL,CAAC,MAAM;MACHN,cAAc,GAAGnM,SAAS;IAC9B;EACJ;EAEA,IAAIS,OAAO,CAAC8E,IAAI,KAAK,OAAO,EAAE;IAC1B,IAAI6F,WAAW,KAAK,MAAM,IAAIe,cAAc,EAAE;MAC1CA,cAAc,GAAA1M,aAAA,CAAAA,aAAA,KACP0M,cAAc;QACjBK,aAAa,EAAE;UAAEC,YAAY,EAAE;QAAQ;MAAC,EAC3C;IACL,CAAC,MAAM;MACHN,cAAc,GAAGnM,SAAS;IAC9B;EACJ;EAEA,IAAImM,cAAc,EAAEA,cAAc,GAAA1M,aAAA,CAAAA,aAAA,KAAQ0M,cAAc;IAAE+D,OAAO,EAAE9D;EAAU,EAAE;EAE/E,OAAOD,cAAc;AACzB,C;;;;;;;;;;;;;;;;;;;;;AC3TO,IAAM1K,eAAe,gBAAAV,YAAA,UAAAU,gBAAA;EAAAJ,eAAA,OAAAI,eAAA;AAAA;AAY3BH,eAAA,CAZYG,eAAe,UACD,MAAM;AAAAH,eAAA,CADpBG,eAAe,cAEG,UAAU;AAAAH,eAAA,CAF5BG,eAAe,cAGG,UAAU;AAAAH,eAAA,CAH5BG,eAAe,oBAIS,sBAAsB;AAAAH,eAAA,CAJ9CG,eAAe,YAKC,QAAQ;AAAAH,eAAA,CALxBG,eAAe,kBAMO,oBAAoB;AAAAH,eAAA,CAN1CG,eAAe,oBAOS,uBAAuB;AAAAH,eAAA,CAP/CG,eAAe,QAQH,IAAI;AAAAH,eAAA,CARhBG,eAAe,sBASW,QAAQ;AAAAH,eAAA,CATlCG,eAAe,sBAUW,QAAQ;AAAAH,eAAA,CAVlCG,eAAe,sBAWW,QAAQ,E","file":"autoCreator.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./generated_module/src/autoCreator.ts\");\n","import { CreatorFunctions } from \"@microchip/melody-automodule-interface\";\nimport {\n getCreatorFunctions as getCreatorFunctionsUser,\n getModuleConfigFromFile,\n} from \"./getUserData\";\n\nconst createAutoCreator = (\n getCreatorFunctions: () => CreatorFunctions,\n): (() => CreatorFunctions) => {\n return (): CreatorFunctions => {\n return {\n getModuleConfig: getModuleConfigFromFile,\n ...getCreatorFunctions(),\n };\n };\n};\n\nexport const getCreatorFunctions = createAutoCreator(getCreatorFunctionsUser);\n","import { ModuleConfig } from \"@microchip/melody-automodule-interface/lib/src/ModuleConfig\";\nimport { PinsData } from \"@microchip/melody-automodule-interface/lib/src/pins\";\nimport { PinsLogic } from \"@microchip/melody-automodule-interface/lib/src/types\";\nexport { getCreatorFunctions } from \"../../src/CreatorFunctions\";\nexport { getDerivedData } from \"../../src/DerivedData\";\n\nexport const getPinsDataFromFile = (): PinsData | undefined => {\n try {\n return require(\"../../src/pinsdata.json\");\n } catch {\n return undefined;\n }\n};\n\nexport const getPinsLogicFromFile = (): PinsLogic | undefined => {\n try {\n return require(\"../../src/PinsLogic.ts\");\n } catch {\n return undefined;\n }\n};\n\nexport const getModuleConfigFromFile = (): ModuleConfig | undefined => {\n try {\n return require(\"../../src/moduleConfig.json\");\n } catch {\n return undefined;\n }\n};\n","import { pin_row } from \"@microchip/pins-interface/lib/types\";\nimport { PinsData } from \"@microchip/melody-automodule-interface/lib/src/pins\";\nimport {\n AppModel,\n PinsLogic,\n} from \"@microchip/melody-automodule-interface/lib/src/types\";\nimport { getPinsDataFromFile, getPinsLogicFromFile } from \"../getUserData\";\n\nconst mockPinsLogic = (getPinsData: GetPinsData): PinsLogic => {\n const getCompletePinData = (appModel: AppModel): any => {\n return {};\n };\n const getRowData = (appModel: AppModel, rowData: pin_row): pin_row => {\n return rowData;\n };\n return {\n getCompletePinData: getCompletePinData,\n getRowData: getRowData,\n getPinsData: getPinsData,\n };\n};\n\ntype GetPinsData = typeof getPinsData;\nexport const getPinsData = (): PinsData => getPinsDataFromFile() ?? { rows: [] };\n\nexport const getPinsLogic = (): PinsLogic => {\n const pinsLogic = getPinsLogicFromFile();\n if (pinsLogic) {\n return {\n ...pinsLogic,\n getPinsData: getPinsData,\n };\n } else {\n return mockPinsLogic(getPinsData);\n }\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.data_schema = exports.PIN_ARCH = exports.behaviour = exports.direction = exports.actiontype = exports.pin_attribs_enum = exports.pin_interrupts_enum = exports.pin_state = exports.QueryAdapterKey = void 0;\nvar QueryAdapterKey;\n(function (QueryAdapterKey) {\n QueryAdapterKey[\"ALLPINS\"] = \"allpins\";\n QueryAdapterKey[\"ALLPINS_FOR_ATTRIBS\"] = \"allpins_for_attribs\";\n QueryAdapterKey[\"PPS\"] = \"pps\";\n QueryAdapterKey[\"APFCON\"] = \"apfcon\";\n QueryAdapterKey[\"PORTMUX\"] = \"portmux\";\n QueryAdapterKey[\"HASPPS\"] = \"hasPPS\";\n})(QueryAdapterKey = exports.QueryAdapterKey || (exports.QueryAdapterKey = {}));\nvar pin_state;\n(function (pin_state) {\n pin_state[\"EMPTY\"] = \"E\";\n pin_state[\"LOCKED\"] = \"L\";\n pin_state[\"UNLOCK\"] = \"UL\";\n pin_state[\"DiSABLE_LOCK\"] = \"DL\";\n pin_state[\"UNLOCKED_DISABLED\"] = \"DUL\";\n pin_state[\"LOCKED_LINK\"] = \"LL\";\n pin_state[\"UNLOCKED_MUX\"] = \"MUL\";\n pin_state[\"LOCKED_CONFLICT\"] = \"CL\";\n})(pin_state = exports.pin_state || (exports.pin_state = {}));\nvar pin_interrupts_enum;\n(function (pin_interrupts_enum) {\n pin_interrupts_enum[\"INTDIS_BUFFEN\"] = \"INTDIS_BUFFEN\";\n pin_interrupts_enum[\"BOTH_EDGES\"] = \"BOTH_EDGES\";\n pin_interrupts_enum[\"RISING_EDGE\"] = \"RISING_EDGE\";\n pin_interrupts_enum[\"FALLING_EDGE\"] = \"FALLING_EDGE\";\n pin_interrupts_enum[\"NONE\"] = \"NONE\";\n pin_interrupts_enum[\"LOW_LEVEL\"] = \"LOW_LEVEL\";\n})(pin_interrupts_enum = exports.pin_interrupts_enum || (exports.pin_interrupts_enum = {}));\nvar pin_attribs_enum;\n(function (pin_attribs_enum) {\n pin_attribs_enum[\"aliasReEx\"] = \"aliasReEx\";\n pin_attribs_enum[\"cname\"] = \"cname\";\n pin_attribs_enum[\"high\"] = \"high\";\n pin_attribs_enum[\"inv\"] = \"inv\";\n pin_attribs_enum[\"wpu\"] = \"wpu\";\n pin_attribs_enum[\"wpd\"] = \"wpd\";\n pin_attribs_enum[\"od\"] = \"od\";\n pin_attribs_enum[\"analog\"] = \"analog\";\n pin_attribs_enum[\"ioc\"] = \"ioc\";\n pin_attribs_enum[\"intcallback\"] = \"intcallback\";\n pin_attribs_enum[\"alias\"] = \"alias\";\n pin_attribs_enum[\"advInpBuff\"] = \"advInpBuff\";\n})(pin_attribs_enum = exports.pin_attribs_enum || (exports.pin_attribs_enum = {}));\nvar actiontype;\n(function (actiontype) {\n actiontype[\"SETACTION\"] = \"SETACTION\";\n actiontype[\"ATTRIBACTION\"] = \"ATTRIBACTION\";\n})(actiontype = exports.actiontype || (exports.actiontype = {}));\nvar direction;\n(function (direction) {\n direction[\"output\"] = \"output\";\n direction[\"input\"] = \"input\";\n direction[\"bidirectional\"] = \"bidirectional\";\n})(direction = exports.direction || (exports.direction = {}));\nvar behaviour;\n(function (behaviour) {\n behaviour[\"LOCK_UNLOCK\"] = \"LOCK_UNLOCK\";\n behaviour[\"ALWAYS_LOCKED\"] = \"ALWAYS_LOCKED\";\n behaviour[\"SINGLE_PIN_MUX\"] = \"SINGLE_PIN_MUX\";\n behaviour[\"OPTIONAL_PIN_MUX\"] = \"OPTIONAL_PIN_MUX\";\n behaviour[\"PPS\"] = \"PPS\";\n behaviour[\"APFCON\"] = \"APFCON\";\n behaviour[\"PORTMUX\"] = \"PORTMUX\";\n behaviour[\"EXCLUSIVE_LOCK\"] = \"EXCLUSIVE_LOCK\";\n behaviour[\"LOCKED_DISABLED\"] = \"LOCKED_DISABLED\";\n})(behaviour = exports.behaviour || (exports.behaviour = {}));\nvar PIN_ARCH;\n(function (PIN_ARCH) {\n PIN_ARCH[\"PIC18F\"] = \"PIC18F\";\n PIN_ARCH[\"AVR8\"] = \"AVR8\";\n PIN_ARCH[\"PIC16F\"] = \"PIC16F\";\n PIN_ARCH[\"PIC24F\"] = \"PIC24F\";\n})(PIN_ARCH = exports.PIN_ARCH || (exports.PIN_ARCH = {}));\n//------------------------------------ schema ------------------------------------//\nexports.data_schema = {\n $schema: \"http://json-schema.org/draft-07/schema#\",\n $ref: \"#/definitions/intf_data\",\n definitions: {\n intf_data: {\n type: \"object\",\n properties: {\n rows: {\n type: \"array\",\n items: {\n $ref: \"#/definitions/pin_row\",\n },\n },\n },\n required: [\"rows\"],\n additionalProperties: false,\n },\n pin_row: {\n type: \"object\",\n properties: {\n name: {\n type: \"string\",\n },\n module: {\n type: \"string\",\n },\n function: {\n type: \"string\",\n },\n direction: {\n $ref: \"#/definitions/direction\",\n },\n filter: {\n $ref: \"#/definitions/filter\",\n },\n behaviour: {\n $ref: \"#/definitions/behaviour\",\n },\n behaviourMeta: {\n $ref: \"#/definitions/behaviourMeta\",\n },\n attribs: {\n type: \"array\",\n items: {\n $ref: \"#/definitions/pin_attribs\",\n },\n },\n groupsdata: {\n $ref: \"#/definitions/pingroups_data\",\n },\n actions: {},\n },\n required: [\"name\", \"module\", \"function\", \"direction\", \"filter\", \"behaviour\"],\n additionalProperties: false,\n },\n direction: {\n type: \"string\",\n enum: [\"output\", \"input\", \"bidirectional\"],\n },\n filter: {\n type: \"object\",\n properties: {\n module: {\n type: \"string\",\n },\n aliasReEx: {\n type: \"string\",\n },\n },\n required: [\"module\", \"aliasReEx\"],\n additionalProperties: false,\n },\n behaviour: {\n type: \"string\",\n enum: [\n \"LOCK_UNLOCK\",\n \"ALWAYS_LOCKED\",\n \"SINGLE_PIN_MUX\",\n \"OPTIONAL_PIN_MUX\",\n \"PPS\",\n \"PORTMUX\",\n \"EXCLUSIVE_LOCK\",\n \"LOCKED_DISABLED\",\n ],\n },\n behaviourMeta: {\n type: \"object\",\n properties: {\n lockPinRegEx: {\n type: \"string\",\n },\n },\n required: [\"lockPinRegEx\"],\n additionalProperties: false,\n },\n pin_attribs: {\n type: \"object\",\n properties: {\n aliasReEx: {\n type: \"string\",\n },\n cname: {\n type: \"string\",\n },\n high: {\n type: \"boolean\",\n },\n inv: {\n type: \"boolean\",\n },\n wpu: {\n type: \"boolean\",\n },\n wpd: {\n type: \"boolean\",\n },\n od: {\n type: \"boolean\",\n },\n analog: {\n type: \"boolean\",\n },\n ioc: {\n $ref: \"#/definitions/pin_interrupts_enum\",\n },\n bidirection_out: {\n type: \"boolean\",\n },\n },\n required: [\"aliasReEx\"],\n additionalProperties: false,\n },\n pin_interrupts_enum: {\n type: \"string\",\n enum: [\n \"INTDIS_BUFFEN\",\n \"BOTH_EDGES\",\n \"RISING_EDGE\",\n \"FALLING_EDGE\",\n \"NONE\",\n \"LOW_LEVEL\",\n ],\n },\n pingroups_data: {\n type: \"object\",\n properties: {\n groups: {\n type: \"array\",\n items: {\n $ref: \"#/definitions/pins_group\",\n },\n },\n },\n required: [\"groups\"],\n additionalProperties: false,\n },\n pins_group: {\n type: \"object\",\n properties: {\n name: {\n type: \"string\",\n },\n filter: {\n $ref: \"#/definitions/grpfilter\",\n },\n datapath: {\n type: \"string\",\n },\n },\n required: [\"name\", \"filter\"],\n additionalProperties: false,\n },\n grpfilter: {\n type: \"object\",\n properties: {\n aliasReEx: {\n type: \"string\",\n },\n },\n required: [\"aliasReEx\"],\n additionalProperties: false,\n },\n },\n};\n//# sourceMappingURL=types.js.map","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mapOptionLabels = exports.filterOptions = exports.isSingleton = exports.isUnassigned = exports.isAssigned = exports.hasOptions = exports.AlertTypes = void 0;\nvar AlertTypes;\n(function (AlertTypes) {\n AlertTypes[\"Error\"] = \"error\";\n AlertTypes[\"Warning\"] = \"warning\";\n AlertTypes[\"Hint\"] = \"hint\";\n})(AlertTypes = exports.AlertTypes || (exports.AlertTypes = {}));\n/**\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n */\nfunction hasOptions(dep) {\n return dep.options !== undefined;\n}\nexports.hasOptions = hasOptions;\n/**\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n */\nfunction isAssigned(dep) {\n return typeof dep.handle !== \"undefined\";\n}\nexports.isAssigned = isAssigned;\n/**\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n */\nfunction isUnassigned(dep) {\n return typeof dep.handle === \"undefined\";\n}\nexports.isUnassigned = isUnassigned;\n/**\n * Type guard function for SingletonExport\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n * @param resource the export to check on being a singleton\n * @deprecated No longer used. Replaced with dynamic singleton identification\n * at runtime.\n */\nfunction isSingleton(resource) {\n return typeof resource.isSingleton !== \"undefined\" && resource.isSingleton;\n}\nexports.isSingleton = isSingleton;\n/**\n * Returns a copy of `populatedImport` with all options removed which\n * cause `optionFilter` to return false.\n */\nfunction filterOptions(populatedImport, optionFilter) {\n if (populatedImport.options) {\n return __assign(__assign({}, populatedImport), { options: populatedImport.options.filter(optionFilter) });\n }\n return populatedImport;\n}\nexports.filterOptions = filterOptions;\n/**\n * Returns a copy of `populatedImport` with the options' handle labels\n * mapped according to `labelFactory`.\n */\nfunction mapOptionLabels(populatedImport, labelFactory) {\n if (populatedImport.options) {\n return __assign(__assign({}, populatedImport), { options: populatedImport.options.map(function (option) {\n return __assign(__assign({}, option), { handle: __assign(__assign({}, option.handle), { label: labelFactory(option) }) });\n }) });\n }\n return populatedImport;\n}\nexports.mapOptionLabels = mapOptionLabels;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.buildSimpleApi = function (functions) {\n var api = {};\n for (var key in functions) {\n api[key] = buildFunction(functions[key]);\n }\n return api;\n};\nvar buildFunction = function (cFunction) {\n return cFunction.returns + \" \" + cFunction.name + \"(\" + buildArguments(cFunction.arguments) + \")\";\n};\nvar buildArguments = function (args) {\n if (args) {\n return args.map(function (arg) { return arg.type + \" \" + arg.name; }).join(\", \");\n }\n else {\n return \"void\";\n }\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getInterfaceName = function (pkgJson) {\n var strReplace = \"@microchip/\";\n var interfaceName;\n if (pkgJson) {\n interfaceName = pkgJson[\"name\"];\n if (interfaceName) {\n interfaceName = interfaceName.replace(strReplace, \"\");\n }\n }\n if (!interfaceName) {\n throw new Error(\"Invalid Interface Name...!\");\n }\n return interfaceName;\n};\nexports.getInterfaceVersion = function (pkgJson) {\n var versionRegex = new RegExp(\"\\\\d+.\\\\d+.\\\\d+\");\n var version;\n if (pkgJson) {\n version = pkgJson[\"version\"];\n }\n if (!version && !versionRegex.test(version)) {\n throw new Error(\"Invalid Interface Version...!\");\n }\n return version;\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar c_function_types_1 = require(\"./c-function-types\");\nexports.buildSimpleApi = c_function_types_1.buildSimpleApi;\nvar helpers_1 = require(\"./helpers\");\nexports.getInterfaceName = helpers_1.getInterfaceName;\nexports.getInterfaceVersion = helpers_1.getInterfaceVersion;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createPrototypeExport = exports.createPrototypeImport = exports.getInterfaceId = void 0;\nvar InterfaceTypes = __importStar(require(\"@microchip/scf-interface\"));\nvar pkgJson = require(\"../package.json\");\nexports.getInterfaceId = function () {\n return {\n name: InterfaceTypes.getInterfaceName(pkgJson),\n version: InterfaceTypes.getInterfaceVersion(pkgJson),\n };\n};\nexports.createPrototypeImport = function () {\n return {\n interfaceId: exports.getInterfaceId(),\n };\n};\nexports.createPrototypeExport = function () {\n return {\n interfaces: [{ interfaceId: exports.getInterfaceId() }],\n };\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar sys_init_basic_interface_1 = require(\"./sys-init-basic-interface\");\nObject.defineProperty(exports, \"Interface\", { enumerable: true, get: function () { return sys_init_basic_interface_1.Interface; } });\nObject.defineProperty(exports, \"INIT_PRIORITY\", { enumerable: true, get: function () { return sys_init_basic_interface_1.INIT_PRIORITY; } });\nObject.defineProperty(exports, \"prioritySorter\", { enumerable: true, get: function () { return sys_init_basic_interface_1.prioritySorter; } });\nObject.defineProperty(exports, \"sortSysInitInitializers\", { enumerable: true, get: function () { return sys_init_basic_interface_1.sortSysInitInitializers; } });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createMock = void 0;\nvar api_1 = require(\"./api\");\nexports.createMock = function () {\n return {\n interfaceId: api_1.getInterfaceId(),\n payload: {\n moduleName: \"MyModule\",\n },\n args: {},\n results: {\n requestId: {\n initializers: [\n {\n name: \"mymodule_init1();\",\n header: {\n name: \"../mymodule.h\",\n path: \"include/\",\n },\n priority: 1,\n },\n ],\n localInitializers: [\n {\n funcDec: \"void mymodule_init2(void);\",\n name: \"mymodule_init2();\",\n funcBody: \"/** \\n * @ingroup systemdriver\\n * @brief Initializes the Peripheral module.\\n * @param None.\\n * @return None.\\n * void mymodule_init2(void){\\n * //IOCMD IOC enabled; CLKRMD CLKR enabled;\\n * PMD0 = 0x0;\\n * }\\n */\",\n priority: 1,\n },\n ],\n },\n },\n };\n};\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Interface = exports.sortSysInitInitializers = exports.prioritySorter = exports.INIT_PRIORITY = void 0;\nvar mock_1 = require(\"./mock\");\nvar api_1 = require(\"./api\");\nvar INIT_PRIORITY;\n(function (INIT_PRIORITY) {\n INIT_PRIORITY[INIT_PRIORITY[\"START\"] = 1] = \"START\";\n INIT_PRIORITY[INIT_PRIORITY[\"PRE_PERIPHERAL\"] = 50] = \"PRE_PERIPHERAL\";\n INIT_PRIORITY[INIT_PRIORITY[\"PERIPHERAL\"] = 100] = \"PERIPHERAL\";\n INIT_PRIORITY[INIT_PRIORITY[\"POST_PERIPHERAL\"] = 150] = \"POST_PERIPHERAL\";\n INIT_PRIORITY[INIT_PRIORITY[\"DEFAULT\"] = 200] = \"DEFAULT\";\n INIT_PRIORITY[INIT_PRIORITY[\"PRE_SOFTWARE\"] = 250] = \"PRE_SOFTWARE\";\n INIT_PRIORITY[INIT_PRIORITY[\"SOFTWARE\"] = 300] = \"SOFTWARE\";\n INIT_PRIORITY[INIT_PRIORITY[\"POST_SOFTWARE\"] = 350] = \"POST_SOFTWARE\";\n INIT_PRIORITY[INIT_PRIORITY[\"END\"] = 400] = \"END\";\n})(INIT_PRIORITY = exports.INIT_PRIORITY || (exports.INIT_PRIORITY = {}));\n/** Sorting initializer based on the priority. */\nexports.prioritySorter = function (a, b) {\n var _a, _b, _c, _d;\n var result = 0;\n var apriority = (_a = a === null || a === void 0 ? void 0 : a.initializer.priority) !== null && _a !== void 0 ? _a : INIT_PRIORITY.DEFAULT;\n var bpriority = (_b = b === null || b === void 0 ? void 0 : b.initializer.priority) !== null && _b !== void 0 ? _b : INIT_PRIORITY.DEFAULT;\n if (apriority < bpriority) {\n result = -1;\n }\n else if (apriority > bpriority) {\n result = 1;\n }\n else {\n //same priority sort via intializer name alphabetically\n result = (_d = (_c = a === null || a === void 0 ? void 0 : a.initializer.name) === null || _c === void 0 ? void 0 : _c.localeCompare(b === null || b === void 0 ? void 0 : b.initializer.name)) !== null && _d !== void 0 ? _d : 0;\n }\n return result;\n};\n/**Creating list - combination of initializers and localInitializers */\nexports.sortSysInitInitializers = function (data) {\n var retinitializers = __spreadArrays(data);\n var initSystemList = [];\n //iterating initializers[]\n for (var _i = 0, retinitializers_1 = retinitializers; _i < retinitializers_1.length; _i++) {\n var entry = retinitializers_1[_i];\n if (entry.initializers) {\n for (var _a = 0, _b = entry.initializers; _a < _b.length; _a++) {\n var subentry = _b[_a];\n // if (subentry) {\n var temp = {\n initializer: __assign(__assign({}, subentry), { isLocalInit: false, isNewInterface: true }),\n };\n initSystemList.push(temp);\n // }\n }\n }\n }\n //iterating localInitializers[]\n for (var _c = 0, retinitializers_2 = retinitializers; _c < retinitializers_2.length; _c++) {\n var entry = retinitializers_2[_c];\n if (entry.localInitializers) {\n for (var _d = 0, _e = entry.localInitializers; _d < _e.length; _d++) {\n var subentry = _e[_d];\n // if (subentry) {\n var temp = {\n initializer: __assign(__assign({}, subentry), { isLocalInit: true, isNewInterface: true }),\n };\n initSystemList.push(temp);\n // }\n }\n }\n }\n initSystemList.sort(exports.prioritySorter);\n return initSystemList;\n};\nexports.Interface = {\n createPrototypeExport: api_1.createPrototypeExport,\n createPrototypeImport: api_1.createPrototypeImport,\n getInterfaceId: api_1.getInterfaceId,\n createMock: mock_1.createMock,\n};\n","import { StringConstants } from \"./StringConstants\";\n\nexport class ClockCalculator {\n private lfintosc = \"31000\";\n private mfintosc = \"500000\";\n private mfintosc_31KHz = \"31250\";\n private sosc = \"32768\";\n private oscSelect: string;\n private HFInternalClk: string;\n private externalClk: number;\n private clkDivider: number;\n\n MAX_PLL = 16000000; // in Hz\n MIN_PLL = 3000000; // in Hz\n\n public constructor(\n oscSelect: string,\n HFInternalClk: string,\n externalClk: number,\n clkDivider: number,\n ) {\n this.oscSelect = oscSelect;\n this.HFInternalClk = HFInternalClk;\n this.externalClk = externalClk;\n this.clkDivider = clkDivider;\n }\n\n public getCurrentSystemClk = (): number => {\n let currentSystemClk: number;\n let HFClk: number;\n\n if (this.oscSelect === StringConstants.SOSC) {\n currentSystemClk = 32768 / this.clkDivider;\n } else if (this.oscSelect === StringConstants.LFINTOSC) {\n currentSystemClk = 31000 / this.clkDivider;\n } else if (this.oscSelect === StringConstants.HFINTOSC) {\n HFClk = parseInt(this.HFInternalClk?.replace(\"_MHz\", \"\") ?? \"1000000\");\n currentSystemClk = (HFClk * 1000000) / this.clkDivider;\n } else if (this.oscSelect === StringConstants.HFINTOSC_2xPLL) {\n HFClk = parseInt(this.HFInternalClk?.replace(\"_MHz\", \"\") ?? \"1000000\");\n if (HFClk == 8 || HFClk == 12 || HFClk == 16) {\n currentSystemClk = (HFClk * 2 * 1000000) / this.clkDivider;\n } else {\n currentSystemClk = (HFClk * 1000000) / this.clkDivider;\n }\n } else if (this.oscSelect === StringConstants.EXTOSC) {\n currentSystemClk = this.externalClk / this.clkDivider;\n } else {\n if (this.externalClk <= this.MIN_PLL || this.externalClk > this.MAX_PLL) {\n currentSystemClk = this.externalClk / this.clkDivider;\n } else {\n currentSystemClk = (this.externalClk * 4) / this.clkDivider;\n }\n }\n return Math.round(currentSystemClk);\n };\n\n public getHfIntOsc = (): string => {\n return this.HFInternalClk?.replace(\"_MHz\", \"000000\") ?? \"1000000\";\n };\n\n public getMfIntOsc = (): string => {\n return this.mfintosc;\n };\n\n public getMfIntOsc_31KHz = (): string => {\n return this.mfintosc_31KHz;\n };\n\n public getLfIntOsc = (): string => {\n return this.lfintosc;\n };\n\n public getExtOsc = (): string => {\n return this.externalClk.toString();\n };\n\n public getSosc = (): string => {\n return this.sosc;\n };\n}\n","import { CreatorFunctions } from \"@microchip/melody-automodule-interface\";\nimport { State } from \"../generated_module/src/types/State\";\n\nexport const getCreatorFunctions = (): CreatorFunctions => {\n return {\n shouldImport: shouldImport,\n };\n};\n\nconst shouldImport = (importKey: string, state: State): boolean => {\n return true;\n};\n","import * as Processor from \"@microchip/scf-common/lib/Processor\";\nimport { ClockCalculator } from \"./ClockCalculator\";\nimport * as config_device from \"@microchip/config-device\";\nimport { StringConstants } from \"./StringConstants\";\nimport osc_clocks from \"@microchip/osc-clocks\";\nimport * as clock from \"@microchip/clock-basic-interface\";\nimport {\n AppModel,\n DerivedData,\n DerivedFunctions,\n} from \"../generated_module/src/types/AutoModuleTypes\";\nimport * as InterfaceTypes from \"@microchip/scf-interface\";\nimport { getPinsLogic } from \"../generated_module/src/pins/PCPHelper\";\nimport * as configbits_basic_interface from \"@microchip/configbits-basic-interface\";\nimport * as sys_init_basic_interface from \"@microchip/sys-init-basic-interface\";\n\nexport const getDerivedData = (dataModel: AppModel): DerivedData => {\n if (dataModel) {\n return new MyDerivedData(dataModel);\n }\n return new EmptyDerivedData();\n};\n\n//This data will be used at the creator stage and relies on only the state\nexport class EmptyDerivedData implements DerivedData {\n getMyFunctions = (): DerivedFunctions => {\n return {};\n };\n getModel = (): AppModel | undefined => {\n return undefined;\n };\n}\n\n//This data will be used at the processor stage\nexport class MyDerivedData implements DerivedData {\n private dataModel: AppModel;\n private clockCalculator: ClockCalculator;\n\n constructor(dataModel: AppModel) {\n this.dataModel = dataModel;\n }\n\n getClockCalculator = (): ClockCalculator => {\n if (!this.clockCalculator) {\n this.clockCalculator = new ClockCalculator(\n this.getModel().getComponentValue(\"noscOsccon1\") ?? \"\",\n this.getModel().getComponentValue(\"hffrqOscfrq\") ?? \"\",\n this.getModel().getComponentValue(\"externalClk\") ?? 32768,\n parseInt(this.getModel().getComponentValue(\"ndivOsccon1\") ?? \"\"),\n );\n }\n return this.clockCalculator;\n };\n\n getMyFunctions = (): DerivedFunctions => {\n return {\n moduleName: this.getModuleName,\n alerts: this.getMyAlerts,\n isEnabled: this.isEnabled,\n isVisible: this.isVisible,\n coscOsccon2: this.getResOscValue,\n currentSystemClk: (): number =>\n this.getClockCalculator().getCurrentSystemClk(),\n \"fosc-hz_payload\": (): string =>\n this.getClockCalculator().getCurrentSystemClk().toString(),\n sys_init_basic_interface_results: this.sys_init_basic_interface_results,\n config_device_results: this.config_device_results,\n templateData: this.getTemplateData,\n overrideDefaultValues: this.overrideDefaultValue,\n configbits_basic_interface_args: this.getConfigbitsBasicInterfaceArgs,\n \"osc-clocks_payload\": this.getOscClocksProcessedPayload,\n \"clock-basic-interface_payload\": this.getClockProcessedPayload,\n doNotShow: (): boolean => false,\n getPinsLogic: getPinsLogic,\n importName: this.friendlyImportName,\n };\n };\n\n private friendlyImportName = (importKey: string): string => {\n if (importKey === \"scf_pic8_osc_v1\") return \"Oscillator Hardware\";\n if (importKey === \"sys_init_basic_interface\") return \"system.c Initialize()\";\n if (importKey === \"config_device\") return \"Configuration Device\";\n if (importKey === \"configbits_basic_interface\") return \"Configuration Request\";\n if (importKey === \"pins_interface\") return \"Pins\";\n return importKey;\n };\n private sys_init_basic_interface_results = (): sys_init_basic_interface.Results => {\n return {\n initializers: [\n {\n name: \"CLOCK_Initialize();\",\n header: {\n name: \"clock.h\",\n path: \"system/\",\n },\n priority: sys_init_basic_interface.INIT_PRIORITY.START,\n },\n ],\n };\n };\n private getConfigbitsBasicInterfaceArgs =\n (): configbits_basic_interface.Arguments => {\n return {\n configsReq: [\"FEXTOSC\", \"CLKOUTEN\", \"MCLRE\", \"LVP\", \"RSTOSC\"],\n };\n };\n\n private getDynamicComponetDefaultValue = (\n componentName: string,\n ): string | undefined => {\n const externalClkSelectedOptions = this.dataModel.getImportValue(\n \"configbits_basic_interface\",\n )?.configsResp?.[componentName];\n let selectedOptionVal: string | undefined;\n\n if (externalClkSelectedOptions) {\n selectedOptionVal = externalClkSelectedOptions[\"defaultValue\"][\"value\"];\n }\n return selectedOptionVal ?? undefined;\n };\n\n private getResOscValue = (): string => {\n const resetOscValue = this.getDynamicComponetDefaultValue(\"RSTOSC\");\n let actualOscValue;\n if (resetOscValue?.indexOf(\"4x PLL\") !== -1) {\n actualOscValue = \"EXTOSC with 4x PLL\";\n } else if (resetOscValue?.indexOf(\"Secondary Oscillator\") !== -1) {\n actualOscValue = \"SOSC\";\n } else if (resetOscValue?.indexOf(\"Low-Frequency\") !== -1) {\n actualOscValue = \"LFINTOSC\";\n } else if (\n resetOscValue?.indexOf(\"HFINTOSC with HFFRQ = 4 MHz and CDIV = 4:1\") !== -1\n ) {\n actualOscValue = \"HFINTOSC\";\n } else if (\n resetOscValue?.indexOf(\"HFINTOSC with HFFRQ = 64 MHz and CDIV = 1:1\") !== -1\n ) {\n actualOscValue = \"HFINTOSC\";\n } else if (resetOscValue?.indexOf(\"FEXTOSC\") !== -1) {\n actualOscValue = \"EXTOSC\";\n } else {\n actualOscValue = undefined;\n }\n return actualOscValue;\n };\n\n private getPLLStatus = (): boolean => {\n const pllStatus = this.getResOscValue();\n const pllEnable = this.dataModel.isComponentValue(\"pllenOscen\");\n const clkSrcVal = this.dataModel.getComponentValue(\"noscOsccon1\");\n if (pllStatus === \"EXTOSC with 4x PLL\") {\n return true;\n } else if (pllEnable === true) {\n return true;\n } else if (clkSrcVal?.indexOf(\"4x PLL\") !== -1) {\n return true;\n } else if (clkSrcVal?.indexOf(\"2x PLL\") !== -1) {\n return true;\n } else {\n return false;\n }\n };\n\n private getOscClocksProcessedPayload = (): osc_clocks.ProcessedPayload => {\n const oscObj: osc_clocks.ProcessedPayload = {\n extosc: this.getClockCalculator().getExtOsc() ?? \"32768\",\n fosc: this.getClockCalculator().getCurrentSystemClk().toString() ?? \"1000000\",\n hfintosc: this.getClockCalculator().getHfIntOsc() ?? \"1000000\",\n lfintosc: this.getClockCalculator().getLfIntOsc() ?? \"31000\",\n mfintosc: this.getClockCalculator().getMfIntOsc() ?? \"500000\",\n mfintosc_31Khz: this.getClockCalculator().getMfIntOsc_31KHz() ?? \"31250\",\n sosc: this.getClockCalculator().getSosc() ?? \"32768\",\n };\n const hasSosc: boolean =\n this.dataModel.isComponentValue(\"soscenOscen\") !== undefined ? true : false;\n if (hasSosc) {\n oscObj.hasSosc = true;\n oscObj.soscEnabled = this.dataModel.isComponentValue(\"soscenOscen\");\n oscObj.soscPowerMode = this.dataModel.getComponentValue(\"soscpwrOsccon3\");\n }\n return oscObj;\n };\n\n private getClockProcessedPayload = (): clock.Payload => {\n const clockObj: clock.Payload = {\n fosc: this.getClockCalculator().getCurrentSystemClk().toString() ?? \"1000000\",\n extosc: this.getClockCalculator().getExtOsc() ?? \"32768\",\n hfintosc: this.getClockCalculator().getHfIntOsc() ?? \"1000000\",\n lfintosc: this.getClockCalculator().getLfIntOsc() ?? \"31000\",\n mfintosc: this.getClockCalculator().getMfIntOsc() ?? \"500000\",\n mfintosc_31Khz: this.getClockCalculator().getMfIntOsc_31KHz() ?? \"31250\",\n sosc: this.getClockCalculator().getSosc() ?? \"32768\",\n };\n const hasSosc: boolean =\n this.dataModel.isComponentValue(\"soscenOscen\") !== undefined ? true : false;\n if (hasSosc) {\n clockObj.hasSosc = true;\n clockObj.soscEnabled = this.dataModel.isComponentValue(\"soscenOscen\");\n clockObj.soscPowerMode = this.dataModel.getComponentValue(\"soscpwrOsccon3\");\n }\n return clockObj;\n };\n\n public getModuleName = (): string => {\n return \"Clock Control\";\n };\n public getModel = (): AppModel => {\n return this.dataModel;\n };\n\n private getTemplateData = (): any => {\n const headers: InterfaceTypes.HeaderFile = {\n name: \"clock.h\",\n path: \"../\",\n };\n const initRegisters = this.dataModel.getRegisterValues();\n //const registerValues = this.dataModel.getRegisterValues();\n return {\n deviceFrequency: this.getClockCalculator().getCurrentSystemClk().toString(),\n\n initRegisters: initRegisters,\n header: headers,\n\n moduleNameUpperCase: this.getModuleName().toUpperCase(),\n moduleNameLowerCase: this.getModuleName().toLowerCase(),\n PackageVersion: \"4.3.6\",\n isPllEnabled: this.getPLLStatus() ?? false,\n //...registerValues,\n\n initializerOptimize:\n this.getModel().getComponentValue(\"generateInitializerCode\") !==\n \"Initialize all registers\"\n ? true\n : false,\n generateCommentedCode:\n this.getModel().getComponentValue(\"generateInitializerCode\") ===\n \"Generate with commented unmodified registers\"\n ? true\n : false,\n };\n };\n\n private config_device_results = (): config_device.Results => {\n return {\n headers: [\n {\n name: \"clock.h\",\n path: \"system/\",\n },\n ],\n };\n };\n\n private isEnabled = (componentName: string): boolean => {\n switch (componentName) {\n case \"hffrqOscfrq\":\n return (\n this.dataModel.getComponentValue(\"noscOsccon1\")?.indexOf(\"HF\") != -1\n );\n case \"currentSystemClk\":\n return false;\n case \"lfIntOscFreq\":\n return false;\n default:\n return true;\n }\n };\n\n private isVisible = (componentName: string): boolean => {\n const componentValue = this.dataModel.getComponentValue(\"noscOsccon1\");\n switch (componentName) {\n case \"externalClk\":\n if (\n componentValue === StringConstants.EXTOSC ||\n componentValue === StringConstants.EXTOSC_4xPLL\n ) {\n return true;\n } else {\n return false;\n }\n case \"lfIntOscFreq\":\n if (componentValue != StringConstants.LFINTOSC) {\n return false;\n } else {\n return true;\n }\n case \"hffrqOscfrq\":\n if (\n componentValue != StringConstants.HFINTOSC &&\n componentValue != StringConstants.HFINTOSC_2xPLL\n ) {\n return false;\n } else {\n return true;\n }\n default:\n return true;\n }\n };\n private getfoscOptions = (): string | undefined => {\n const foscOptions =\n this.dataModel.getHardware()?.getPeripheral()?.registers.OSCFRQ?.settings\n ?.HFFRQ.options ?? [];\n let defaultVal: string | undefined;\n let refClk = parseInt(\"1_MHz\"?.replace(\"_MHz\", \"\") ?? 0);\n if (foscOptions) {\n foscOptions.forEach((option) => {\n const HFClk = parseInt(option.name?.replace(\"_MHz\", \"\") ?? 0);\n\n if (HFClk > refClk) {\n refClk = HFClk;\n defaultVal = option.name;\n }\n });\n }\n return defaultVal;\n };\n\n private overrideDefaultValue = (componentName: string): any => {\n let defVal: string | undefined = undefined;\n switch (componentName) {\n case \"hffrqOscfrq\":\n defVal = this.getfoscOptions();\n break;\n }\n return defVal;\n };\n\n private getMyAlerts = (): Processor.Alert[] => {\n const alerts: Processor.Alert[] = [];\n const selectedOptionVal: string =\n this.getDynamicComponetDefaultValue(\"FEXTOSC\") ?? \"\";\n const noscOsccon1 = this.dataModel.getComponentValue(\"noscOsccon1\");\n\n if (\n noscOsccon1 === StringConstants.EXTOSC_4xPLL ||\n noscOsccon1 === StringConstants.EXTOSC\n ) {\n alerts.push({\n type: Processor.AlertTypes.Hint,\n text: 'Please configure required \"External Oscillator Selection\" in System Module config bits',\n });\n }\n\n if (\n noscOsccon1 === StringConstants.EXTOSC_4xPLL &&\n ((this.getModel().getComponentValue(\"externalClk\") ?? 0) <=\n this.getClockCalculator().MIN_PLL ||\n (this.getModel().getComponentValue(\"externalClk\") ?? 0) >\n this.getClockCalculator().MAX_PLL)\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text: \"The frequency selected does not fall within the PLL locking range. Therefore, the actual frequency produced by hardware maybe unpredictable when the PLL is enabled. Either change the clock frequency or select a different option in Oscillator select.\",\n });\n }\n\n if (\n noscOsccon1 === StringConstants.EXTOSC_4xPLL ||\n noscOsccon1 === StringConstants.EXTOSC\n ) {\n if (\n selectedOptionVal?.indexOf(\"external clock\") != -1 &&\n this.getClockCalculator().getCurrentSystemClk() >\n StringConstants.ExtClkFreq_64MHz\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text:\n \"External clock frequency is greater than recommended value (\" +\n StringConstants.ExtClkFreq_64MHz +\n \" Hz)\",\n });\n }\n if (\n selectedOptionVal?.indexOf(\"crystal oscillator\") != -1 &&\n (this.getModel().getComponentValue(\"externalClk\") ?? 0) > 16000000 &&\n this.getClockCalculator().getCurrentSystemClk() >\n StringConstants.ExtClkFreq_20MHz\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text:\n \"External clock frequency is greater than recommended value (\" +\n StringConstants.ExtClkFreq_20MHz +\n \" Hz)\",\n });\n }\n if (\n selectedOptionVal.indexOf(\"Oscillator not enabled\") != -1 &&\n this.getClockCalculator().getCurrentSystemClk() >\n StringConstants.ExtClkFreq_32MHz\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text:\n \"External clock frequency is greater than recommended value (\" +\n StringConstants.ExtClkFreq_32MHz +\n \" Hz)\",\n });\n }\n }\n\n const HFClk = parseInt(\n this.dataModel.getComponentValue(\"hffrqOscfrq\")?.replace(\"_MHz\", \"\") ?? \"0\",\n );\n if (\n this.dataModel.getComponentValue(\"noscOsccon1\") ===\n StringConstants.HFINTOSC_2xPLL &&\n (HFClk == 1 || HFClk == 2 || HFClk == 4 || HFClk == 32)\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text: \"The frequency set in HF Internal Clock may not get generated by the clock hardware properly since it does not fall within the 2xPLL range of 8-16 MHz. Therefore, it is recommended that the option 'HFINTOSC' be selected in the Oscillator select combo box.\",\n });\n }\n\n return alerts;\n };\n}\n","import { pin_row, pin_state } from \"@microchip/pins-interface/lib/types\";\nimport { AppModel } from \"../generated_module/src/types/AutoModuleTypes\";\n\n// provide complete dynamic data for all pin rows. It overrides static pindata.json\nexport const getCompletePinData = (appModel: AppModel): any => {\n // way to programatically override the json data\n return {};\n};\n\n// overrides pin data for a particular row based on model.\nexport function getRowData(appModel: AppModel, rowData: pin_row): pin_row | undefined {\n let retRowJSONdata: pin_row | undefined = rowData;\n let rowActions: any = [];\n const clockOutEnable = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"CLKOUTEN\"];\n\n if (clockOutEnable) {\n delete clockOutEnable[\"setting\"];\n delete clockOutEnable[\"displayOptionSetting\"];\n const selectedOption: string = clockOutEnable[\"defaultValue\"][\"value\"];\n\n if (selectedOption.indexOf(\"CLKOUT function is enabled\") != -1) {\n if (rowData.name === \"clockout\") {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"CLKOUT\" },\n };\n }\n }\n\n const isPic18ClkOut: boolean =\n selectedOption === \"CLKOUT function is enabled\" ||\n selectedOption === \"CLKOUT function is disabled\"\n ? true\n : false;\n const actionArr = appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"clockout\")\n .forComponent(clockOutEnable)\n .addIfLockedSetValue(\n \"CLKOUT\",\n isPic18ClkOut\n ? \"CLKOUT function is enabled\"\n : \"CLKOUT function is enabled; FOSC/4 clock appears at OSC2\",\n )\n .addIfUnLockedSetValue(\n \".*\",\n isPic18ClkOut\n ? \"CLKOUT function is disabled\"\n : \"CLKOUT function is disabled; i/o or oscillator function on OSC2\",\n )\n .build();\n // Provide the module reference(scriptID) of remote config bits module\n for (const eachAction of actionArr) {\n const lockedState = eachAction.state[pin_state.LOCKED];\n if (lockedState) {\n lockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")?.handle\n ?.providerId,\n };\n }\n const unlockedState = eachAction.state[pin_state.UNLOCK];\n if (unlockedState) {\n unlockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")?.handle\n ?.providerId,\n };\n }\n rowActions.push(eachAction);\n }\n }\n\n const extClkSelect = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"FEXTOSC\"];\n\n if (extClkSelect) {\n delete extClkSelect[\"setting\"];\n delete extClkSelect[\"displayOptionSetting\"];\n\n const selectedOption: string = extClkSelect[\"defaultValue\"][\"value\"];\n\n if (\n selectedOption.indexOf(\"(external clock)\") != -1 ||\n selectedOption.indexOf(\"EC\") != -1\n ) {\n if (rowData.name === \"osc1\" || rowData.name === \"osc2\") {\n retRowJSONdata = undefined;\n }\n }\n\n if (selectedOption.indexOf(\"(crystal oscillator)\") != -1) {\n if (rowData.name === \"clockin\") {\n retRowJSONdata = undefined;\n }\n }\n\n if (\n selectedOption.indexOf(\"Oscillator not enabled\") != -1 ||\n selectedOption.indexOf(\"Reserved\") != -1\n ) {\n if (\n rowData.name === \"clockin\" ||\n rowData.name === \"osc1\" ||\n rowData.name === \"osc2\"\n ) {\n retRowJSONdata = undefined;\n }\n }\n // Restricting pin actions for clockin, osc1 and osc2 pin rows\n const mclrKey = appModel.getComponent(\"mclrUnusedKey\")?.component;\n if (mclrKey) {\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"clockin\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"osc1\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"osc2\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n }\n }\n\n const mclrEnable = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"MCLRE\"];\n const lvpEnable = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"LVP\"];\n\n if (mclrEnable && lvpEnable) {\n delete mclrEnable[\"setting\"];\n delete mclrEnable[\"displayOptionSetting\"];\n const selectedMclrOption: string = mclrEnable[\"defaultValue\"][\"value\"];\n\n delete lvpEnable[\"setting\"];\n delete lvpEnable[\"displayOptionSetting\"];\n const selectedLvpOption: string = lvpEnable[\"defaultValue\"][\"value\"];\n\n if (\n selectedLvpOption.indexOf(\"HV on MCLR/VPP must be used for programming\") !=\n -1 ||\n selectedLvpOption.indexOf(\n \"High Voltage on MCLR/Vpp must be used for programming\",\n ) != -1\n ) {\n if (\n selectedMclrOption.indexOf(\"MCLR pin is MCLR\") != -1 ||\n selectedMclrOption.indexOf(\"MCLR pin is Master Clear function\") != -1 ||\n selectedMclrOption === \"MCLR pin (RE3) is MCLR\"\n ) {\n if (rowData.name === \"reset\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"MCLR\" },\n };\n }\n }\n const isPic18Mclr: boolean =\n selectedMclrOption ===\n \"If LVP = 0, MCLR pin is MCLR; If LVP = 1, RE3 pin function is MCLR \" ||\n selectedMclrOption ===\n \"If LVP = 0, MCLR pin function is port defined function; If LVP =1, RE3 pin fuction is MCLR\"\n ? true\n : false;\n const isQ10Mclr: boolean =\n selectedMclrOption === \"MCLR pin (RE3) is MCLR\" ||\n selectedMclrOption ===\n \"If LVP = 0, MCLR pin (RE3) is an input; If LVP =1, MCLR pin (RE3) is MCLR\"\n ? true\n : false;\n let actionArr: any = [];\n\n // For handling Q10 devices\n if (isQ10Mclr) {\n actionArr = appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"reset\")\n .forComponent(mclrEnable)\n .addIfLockedSetValue(\"MCLR\", \"MCLR pin (RE3) is MCLR\")\n .addIfUnLockedSetValue(\n \".*\",\n \"If LVP = 0, MCLR pin (RE3) is an input; If LVP =1, MCLR pin (RE3) is MCLR\",\n )\n .build();\n } else {\n actionArr = appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"reset\")\n .forComponent(mclrEnable)\n .addIfLockedSetValue(\n \"MCLR\",\n isPic18Mclr\n ? \"If LVP = 0, MCLR pin is MCLR; If LVP = 1, RE3 pin function is MCLR \"\n : \"MCLR pin is Master Clear function\",\n )\n .addIfUnLockedSetValue(\n \".*\",\n isPic18Mclr\n ? \"If LVP = 0, MCLR pin function is port defined function; If LVP =1, RE3 pin fuction is MCLR\"\n : \"MCLR pin function is port defined function\",\n )\n .build();\n }\n\n // Provide the module reference(scriptID) of remote config bits module\n for (const eachAction of actionArr) {\n const lockedState = eachAction.state[pin_state.LOCKED];\n if (lockedState) {\n lockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")\n ?.handle?.providerId,\n };\n }\n const unlockedState = eachAction.state[pin_state.UNLOCK];\n if (unlockedState) {\n unlockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")\n ?.handle?.providerId,\n };\n }\n rowActions.push(eachAction);\n }\n } else {\n if (selectedMclrOption) {\n if (rowData.name === \"reset\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"MCLR\" },\n };\n }\n }\n const mclrKey = appModel.getComponent(\"mclrUnusedKey\")?.component;\n if (mclrKey) {\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"reset\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n }\n }\n }\n\n const noscOsccon1 = appModel.getComponentValue(\"noscOsccon1\");\n if (\n noscOsccon1 === \"HFINTOSC\" ||\n noscOsccon1 === \"LFINTOSC\" ||\n noscOsccon1 === \"SOSC\" ||\n noscOsccon1 === \"HFINTOSC with 2x PLL\"\n ) {\n if (rowData.name === \"clockin\") {\n retRowJSONdata = undefined;\n }\n if (rowData.name === \"osc1\") {\n retRowJSONdata = undefined;\n }\n if (rowData.name === \"osc2\") {\n retRowJSONdata = undefined;\n }\n }\n\n if (rowData.name === \"sosci\") {\n if (noscOsccon1 === \"SOSC\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"SOSCI\" },\n };\n } else {\n retRowJSONdata = undefined;\n }\n }\n\n if (rowData.name === \"sosco\") {\n if (noscOsccon1 === \"SOSC\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"SOSCO\" },\n };\n } else {\n retRowJSONdata = undefined;\n }\n }\n\n if (retRowJSONdata) retRowJSONdata = { ...retRowJSONdata, actions: rowActions };\n\n return retRowJSONdata;\n}\n","export class StringConstants {\n static readonly SOSC = \"SOSC\";\n static readonly LFINTOSC = \"LFINTOSC\";\n static readonly HFINTOSC = \"HFINTOSC\";\n static readonly HFINTOSC_2xPLL = \"HFINTOSC with 2x PLL\";\n static readonly EXTOSC = \"EXTOSC\";\n static readonly EXTOSC_4xPLL = \"EXTOSC with 4x PLL\";\n static readonly OSC_NOT_NEEDED = \"Oscillator not needed\";\n static readonly ON = \"ON\";\n static readonly ExtClkFreq_64MHz = 64000000;\n static readonly ExtClkFreq_20MHz = 20000000;\n static readonly ExtClkFreq_32MHz = 32000000;\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://autoCreator/webpack/bootstrap","webpack://autoCreator/./generated_module/src/autoCreator.ts","webpack://autoCreator/./generated_module/src/getUserData.ts","webpack://autoCreator/./generated_module/src/pins/PCPHelper.ts","webpack://autoCreator/./node_modules/@microchip/pins-interface/lib/types.js","webpack://autoCreator/./node_modules/@microchip/scf-common/lib/Processor.js","webpack://autoCreator/./node_modules/@microchip/scf-interface/lib/c-function-types.js","webpack://autoCreator/./node_modules/@microchip/scf-interface/lib/helpers.js","webpack://autoCreator/./node_modules/@microchip/scf-interface/lib/index.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/api.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/index.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/mock.js","webpack://autoCreator/./node_modules/@microchip/sys-init-basic-interface/lib/sys-init-basic-interface.js","webpack://autoCreator/./src/ClockCalculator.ts","webpack://autoCreator/./src/CreatorFunctions.ts","webpack://autoCreator/./src/DerivedData.ts","webpack://autoCreator/./src/PinsLogic.ts","webpack://autoCreator/./src/StringConstants.ts"],"names":["createAutoCreator","getCreatorFunctions","_objectSpread","getModuleConfig","getModuleConfigFromFile","getCreatorFunctionsUser","getPinsDataFromFile","require","_unused","undefined","getPinsLogicFromFile","_unused2","_unused3","mockPinsLogic","getPinsData","getCompletePinData","appModel","getRowData","rowData","_getPinsDataFromFile","rows","getPinsLogic","pinsLogic","ClockCalculator","_createClass","oscSelect","HFInternalClk","externalClk","clkDivider","_this","_classCallCheck","_defineProperty","currentSystemClk","HFClk","StringConstants","SOSC","LFINTOSC","HFINTOSC","_this$HFInternalClk$r","_this$HFInternalClk","parseInt","replace","HFINTOSC_2xPLL","_this$HFInternalClk$r2","_this$HFInternalClk2","EXTOSC","MIN_PLL","MAX_PLL","Math","round","_this$HFInternalClk$r3","_this$HFInternalClk3","mfintosc","mfintosc_31KHz","lfintosc","toString","sosc","shouldImport","importKey","state","getDerivedData","dataModel","MyDerivedData","EmptyDerivedData","clockCalculator","_this$getModel$getCom","_this$getModel$getCom2","_this$getModel$getCom3","_this$getModel$getCom4","getModel","getComponentValue","moduleName","getModuleName","alerts","getMyAlerts","isEnabled","isVisible","coscOsccon2","getResOscValue","getClockCalculator","getCurrentSystemClk","foscHz_payload","sys_init_basic_interface_results","config_device_results","templateData","getTemplateData","overrideDefaultValues","overrideDefaultValue","configbits_basic_interface_args","getConfigbitsBasicInterfaceArgs","getOscClocksProcessedPayload","getClockProcessedPayload","doNotShow","importName","friendlyImportName","initializers","name","header","path","priority","sys_init_basic_interface","START","configsReq","componentName","_this$dataModel$getIm","_selectedOptionVal","externalClkSelectedOptions","getImportValue","configsResp","selectedOptionVal","resetOscValue","getDynamicComponetDefaultValue","actualOscValue","indexOf","pllStatus","pllEnable","isComponentValue","clkSrcVal","_this$getClockCalcula","_this$getClockCalcula2","_this$getClockCalcula3","_this$getClockCalcula4","_this$getClockCalcula5","_this$getClockCalcula6","_this$getClockCalcula7","oscObj","extosc","getExtOsc","fosc","hfintosc","getHfIntOsc","getLfIntOsc","getMfIntOsc","mfintosc_31Khz","getMfIntOsc_31KHz","getSosc","hasSosc","soscEnabled","soscPowerMode","_this$getClockCalcula8","_this$getClockCalcula9","_this$getClockCalcula10","_this$getClockCalcula11","_this$getClockCalcula12","_this$getClockCalcula13","_this$getClockCalcula14","clockObj","getComponent","_this$getPLLStatus","headers","initRegisters","getRegisterValues","deviceFrequency","moduleNameUpperCase","toUpperCase","moduleNameLowerCase","toLowerCase","PackageVersion","isPllEnabled","getPLLStatus","initializerOptimize","generateCommentedCode","_this$dataModel$getCo","componentValue","EXTOSC_4xPLL","_this$dataModel$getHa","_this$dataModel$getHa2","_MHz$replace","_MHz","foscOptions","getHardware","getPeripheral","registers","OSCFRQ","settings","HFFRQ","options","defaultVal","refClk","forEach","option","_option$name$replace","_option$name","defVal","getfoscOptions","_this$getDynamicCompo","_this$getModel$getCom5","_this$getModel$getCom6","_this$dataModel$getCo2","_this$dataModel$getCo3","noscOsccon1","push","type","Processor","Hint","text","Warning","_this$getModel$getCom7","ExtClkFreq_64MHz","ExtClkFreq_20MHz","ExtClkFreq_32MHz","_appModel$getImportVa","_appModel$getImportVa2","_appModel$getImportVa3","_appModel$getImportVa4","retRowJSONdata","rowActions","clockOutEnable","_appModel$getPCPHelpe","selectedOption","behaviourMeta","lockPinRegEx","isPic18ClkOut","actionArr","getPCPHelper","call","stateActionBuilder","rowWithName","forComponent","addIfLockedSetValue","addIfUnLockedSetValue","build","_iterator","_createForOfIteratorHelper","_step","s","n","done","eachAction","value","lockedState","pin_state","LOCKED","_appModel$getAssigned","meta","to","getAssignedImport","handle","providerId","unlockedState","UNLOCK","_appModel$getAssigned2","err","e","f","extClkSelect","_appModel$getComponen","mclrKey","component","_appModel$getPCPHelpe2","_appModel$getPCPHelpe3","_appModel$getPCPHelpe4","concat","mclrEnable","lvpEnable","selectedMclrOption","selectedLvpOption","isPic18Mclr","isQ10Mclr","_appModel$getPCPHelpe5","_appModel$getPCPHelpe6","_iterator2","_step2","_appModel$getAssigned3","_appModel$getAssigned4","_appModel$getComponen2","_appModel$getPCPHelpe7","actions"],"mappings":"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CA,CAAC,0DAA0D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,0DAA0D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,uDAAuD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,2BAA2B;AAC3B,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA,iC;;;;;;;;;;;;ACtQa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,6DAA6D;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,qBAAqB,wDAAwD;AAChH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,qBAAqB;AACxD,2CAA2C,YAAY,6BAA6B,mBAAmB,8BAA8B,GAAG;AACxI,aAAa,GAAG;AAChB;AACA;AACA;AACA;;;;;;;;;;;;;AC/Ea;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,kCAAkC,EAAE;AAC5E;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACnBa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC1Ba;AACb,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,2FAAoB;AACrD;AACA,gBAAgB,mBAAO,CAAC,yEAAW;AACnC;AACA;;;;;;;;;;;;;ACNa;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","file":"autoCreator.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./generated_module/src/autoCreator.ts\");\n","import { CreatorFunctions } from \"@microchip/melody-automodule-interface\";\nimport {\n getCreatorFunctions as getCreatorFunctionsUser,\n getModuleConfigFromFile,\n} from \"./getUserData\";\n\nconst createAutoCreator = (\n getCreatorFunctions: () => CreatorFunctions,\n): (() => CreatorFunctions) => {\n return (): CreatorFunctions => {\n return {\n getModuleConfig: getModuleConfigFromFile,\n ...getCreatorFunctions(),\n };\n };\n};\n\nexport const getCreatorFunctions = createAutoCreator(getCreatorFunctionsUser);\n","import { ModuleConfig } from \"@microchip/melody-automodule-interface/lib/src/ModuleConfig\";\nimport { PinsData } from \"@microchip/melody-automodule-interface/lib/src/pins\";\nimport { PinsLogic } from \"@microchip/melody-automodule-interface/lib/src/types\";\nexport { getCreatorFunctions } from \"../../src/CreatorFunctions\";\nexport { getDerivedData } from \"../../src/DerivedData\";\n\nexport const getPinsDataFromFile = (): PinsData | undefined => {\n try {\n return require(\"../../src/pinsdata.json\");\n } catch {\n return undefined;\n }\n};\n\nexport const getPinsLogicFromFile = (): PinsLogic | undefined => {\n try {\n return require(\"../../src/PinsLogic.ts\");\n } catch {\n return undefined;\n }\n};\n\nexport const getModuleConfigFromFile = (): ModuleConfig | undefined => {\n try {\n return require(\"../../src/moduleConfig.json\");\n } catch {\n return undefined;\n }\n};\n","import { pin_row } from \"@microchip/pins-interface/lib/types\";\nimport { PinsData } from \"@microchip/melody-automodule-interface/lib/src/pins\";\nimport {\n AppModel,\n PinsLogic,\n} from \"@microchip/melody-automodule-interface/lib/src/types\";\nimport { getPinsDataFromFile, getPinsLogicFromFile } from \"../getUserData\";\n\nconst mockPinsLogic = (getPinsData: GetPinsData): PinsLogic => {\n const getCompletePinData = (appModel: AppModel): any => {\n return {};\n };\n const getRowData = (appModel: AppModel, rowData: pin_row): pin_row => {\n return rowData;\n };\n return {\n getCompletePinData: getCompletePinData,\n getRowData: getRowData,\n getPinsData: getPinsData,\n };\n};\n\ntype GetPinsData = typeof getPinsData;\nexport const getPinsData = (): PinsData => getPinsDataFromFile() ?? { rows: [] };\n\nexport const getPinsLogic = (): PinsLogic => {\n const pinsLogic = getPinsLogicFromFile();\n if (pinsLogic) {\n return {\n ...pinsLogic,\n getPinsData: getPinsData,\n };\n } else {\n return mockPinsLogic(getPinsData);\n }\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.data_schema = exports.PIN_ARCH = exports.behaviour = exports.direction = exports.actiontype = exports.pin_attribs_enum = exports.pin_interrupts_enum = exports.pin_state = exports.QueryAdapterKey = void 0;\nvar QueryAdapterKey;\n(function (QueryAdapterKey) {\n QueryAdapterKey[\"ALLPINS\"] = \"allpins\";\n QueryAdapterKey[\"ALLPINS_FOR_ATTRIBS\"] = \"allpins_for_attribs\";\n QueryAdapterKey[\"PPS\"] = \"pps\";\n QueryAdapterKey[\"APFCON\"] = \"apfcon\";\n QueryAdapterKey[\"PORTMUX\"] = \"portmux\";\n QueryAdapterKey[\"HASPPS\"] = \"hasPPS\";\n})(QueryAdapterKey = exports.QueryAdapterKey || (exports.QueryAdapterKey = {}));\nvar pin_state;\n(function (pin_state) {\n pin_state[\"EMPTY\"] = \"E\";\n pin_state[\"LOCKED\"] = \"L\";\n pin_state[\"UNLOCK\"] = \"UL\";\n pin_state[\"DiSABLE_LOCK\"] = \"DL\";\n pin_state[\"UNLOCKED_DISABLED\"] = \"DUL\";\n pin_state[\"LOCKED_LINK\"] = \"LL\";\n pin_state[\"UNLOCKED_MUX\"] = \"MUL\";\n pin_state[\"LOCKED_CONFLICT\"] = \"CL\";\n})(pin_state = exports.pin_state || (exports.pin_state = {}));\nvar pin_interrupts_enum;\n(function (pin_interrupts_enum) {\n pin_interrupts_enum[\"INTDIS_BUFFEN\"] = \"INTDIS_BUFFEN\";\n pin_interrupts_enum[\"BOTH_EDGES\"] = \"BOTH_EDGES\";\n pin_interrupts_enum[\"RISING_EDGE\"] = \"RISING_EDGE\";\n pin_interrupts_enum[\"FALLING_EDGE\"] = \"FALLING_EDGE\";\n pin_interrupts_enum[\"NONE\"] = \"NONE\";\n pin_interrupts_enum[\"LOW_LEVEL\"] = \"LOW_LEVEL\";\n})(pin_interrupts_enum = exports.pin_interrupts_enum || (exports.pin_interrupts_enum = {}));\nvar pin_attribs_enum;\n(function (pin_attribs_enum) {\n pin_attribs_enum[\"aliasReEx\"] = \"aliasReEx\";\n pin_attribs_enum[\"cname\"] = \"cname\";\n pin_attribs_enum[\"high\"] = \"high\";\n pin_attribs_enum[\"inv\"] = \"inv\";\n pin_attribs_enum[\"wpu\"] = \"wpu\";\n pin_attribs_enum[\"wpd\"] = \"wpd\";\n pin_attribs_enum[\"od\"] = \"od\";\n pin_attribs_enum[\"analog\"] = \"analog\";\n pin_attribs_enum[\"ioc\"] = \"ioc\";\n pin_attribs_enum[\"intcallback\"] = \"intcallback\";\n pin_attribs_enum[\"alias\"] = \"alias\";\n pin_attribs_enum[\"advInpBuff\"] = \"advInpBuff\";\n})(pin_attribs_enum = exports.pin_attribs_enum || (exports.pin_attribs_enum = {}));\nvar actiontype;\n(function (actiontype) {\n actiontype[\"SETACTION\"] = \"SETACTION\";\n actiontype[\"ATTRIBACTION\"] = \"ATTRIBACTION\";\n})(actiontype = exports.actiontype || (exports.actiontype = {}));\nvar direction;\n(function (direction) {\n direction[\"output\"] = \"output\";\n direction[\"input\"] = \"input\";\n direction[\"bidirectional\"] = \"bidirectional\";\n})(direction = exports.direction || (exports.direction = {}));\nvar behaviour;\n(function (behaviour) {\n behaviour[\"LOCK_UNLOCK\"] = \"LOCK_UNLOCK\";\n behaviour[\"ALWAYS_LOCKED\"] = \"ALWAYS_LOCKED\";\n behaviour[\"SINGLE_PIN_MUX\"] = \"SINGLE_PIN_MUX\";\n behaviour[\"OPTIONAL_PIN_MUX\"] = \"OPTIONAL_PIN_MUX\";\n behaviour[\"PPS\"] = \"PPS\";\n behaviour[\"APFCON\"] = \"APFCON\";\n behaviour[\"PORTMUX\"] = \"PORTMUX\";\n behaviour[\"EXCLUSIVE_LOCK\"] = \"EXCLUSIVE_LOCK\";\n behaviour[\"LOCKED_DISABLED\"] = \"LOCKED_DISABLED\";\n})(behaviour = exports.behaviour || (exports.behaviour = {}));\nvar PIN_ARCH;\n(function (PIN_ARCH) {\n PIN_ARCH[\"PIC18F\"] = \"PIC18F\";\n PIN_ARCH[\"AVR8\"] = \"AVR8\";\n PIN_ARCH[\"PIC16F\"] = \"PIC16F\";\n PIN_ARCH[\"PIC24F\"] = \"PIC24F\";\n})(PIN_ARCH = exports.PIN_ARCH || (exports.PIN_ARCH = {}));\n//------------------------------------ schema ------------------------------------//\nexports.data_schema = {\n $schema: \"http://json-schema.org/draft-07/schema#\",\n $ref: \"#/definitions/intf_data\",\n definitions: {\n intf_data: {\n type: \"object\",\n properties: {\n rows: {\n type: \"array\",\n items: {\n $ref: \"#/definitions/pin_row\",\n },\n },\n },\n required: [\"rows\"],\n additionalProperties: false,\n },\n pin_row: {\n type: \"object\",\n properties: {\n name: {\n type: \"string\",\n },\n module: {\n type: \"string\",\n },\n function: {\n type: \"string\",\n },\n direction: {\n $ref: \"#/definitions/direction\",\n },\n filter: {\n $ref: \"#/definitions/filter\",\n },\n behaviour: {\n $ref: \"#/definitions/behaviour\",\n },\n behaviourMeta: {\n $ref: \"#/definitions/behaviourMeta\",\n },\n attribs: {\n type: \"array\",\n items: {\n $ref: \"#/definitions/pin_attribs\",\n },\n },\n groupsdata: {\n $ref: \"#/definitions/pingroups_data\",\n },\n actions: {},\n },\n required: [\"name\", \"module\", \"function\", \"direction\", \"filter\", \"behaviour\"],\n additionalProperties: false,\n },\n direction: {\n type: \"string\",\n enum: [\"output\", \"input\", \"bidirectional\"],\n },\n filter: {\n type: \"object\",\n properties: {\n module: {\n type: \"string\",\n },\n aliasReEx: {\n type: \"string\",\n },\n },\n required: [\"module\", \"aliasReEx\"],\n additionalProperties: false,\n },\n behaviour: {\n type: \"string\",\n enum: [\n \"LOCK_UNLOCK\",\n \"ALWAYS_LOCKED\",\n \"SINGLE_PIN_MUX\",\n \"OPTIONAL_PIN_MUX\",\n \"PPS\",\n \"PORTMUX\",\n \"EXCLUSIVE_LOCK\",\n \"LOCKED_DISABLED\",\n ],\n },\n behaviourMeta: {\n type: \"object\",\n properties: {\n lockPinRegEx: {\n type: \"string\",\n },\n },\n required: [\"lockPinRegEx\"],\n additionalProperties: false,\n },\n pin_attribs: {\n type: \"object\",\n properties: {\n aliasReEx: {\n type: \"string\",\n },\n cname: {\n type: \"string\",\n },\n high: {\n type: \"boolean\",\n },\n inv: {\n type: \"boolean\",\n },\n wpu: {\n type: \"boolean\",\n },\n wpd: {\n type: \"boolean\",\n },\n od: {\n type: \"boolean\",\n },\n analog: {\n type: \"boolean\",\n },\n ioc: {\n $ref: \"#/definitions/pin_interrupts_enum\",\n },\n bidirection_out: {\n type: \"boolean\",\n },\n },\n required: [\"aliasReEx\"],\n additionalProperties: false,\n },\n pin_interrupts_enum: {\n type: \"string\",\n enum: [\n \"INTDIS_BUFFEN\",\n \"BOTH_EDGES\",\n \"RISING_EDGE\",\n \"FALLING_EDGE\",\n \"NONE\",\n \"LOW_LEVEL\",\n ],\n },\n pingroups_data: {\n type: \"object\",\n properties: {\n groups: {\n type: \"array\",\n items: {\n $ref: \"#/definitions/pins_group\",\n },\n },\n },\n required: [\"groups\"],\n additionalProperties: false,\n },\n pins_group: {\n type: \"object\",\n properties: {\n name: {\n type: \"string\",\n },\n filter: {\n $ref: \"#/definitions/grpfilter\",\n },\n datapath: {\n type: \"string\",\n },\n },\n required: [\"name\", \"filter\"],\n additionalProperties: false,\n },\n grpfilter: {\n type: \"object\",\n properties: {\n aliasReEx: {\n type: \"string\",\n },\n },\n required: [\"aliasReEx\"],\n additionalProperties: false,\n },\n },\n};\n//# sourceMappingURL=types.js.map","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mapOptionLabels = exports.filterOptions = exports.isSingleton = exports.isUnassigned = exports.isAssigned = exports.hasOptions = exports.AlertTypes = void 0;\nvar AlertTypes;\n(function (AlertTypes) {\n AlertTypes[\"Error\"] = \"error\";\n AlertTypes[\"Warning\"] = \"warning\";\n AlertTypes[\"Hint\"] = \"hint\";\n})(AlertTypes = exports.AlertTypes || (exports.AlertTypes = {}));\n/**\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n */\nfunction hasOptions(dep) {\n return dep.options !== undefined;\n}\nexports.hasOptions = hasOptions;\n/**\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n */\nfunction isAssigned(dep) {\n return typeof dep.handle !== \"undefined\";\n}\nexports.isAssigned = isAssigned;\n/**\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n */\nfunction isUnassigned(dep) {\n return typeof dep.handle === \"undefined\";\n}\nexports.isUnassigned = isUnassigned;\n/**\n * Type guard function for SingletonExport\n * See User-Defined Type Guards in the Typescript Handbook on Advanced Types\n * @see https://www.typescriptlang.org/docs/handbook/advanced-types.html\n * @param resource the export to check on being a singleton\n * @deprecated No longer used. Replaced with dynamic singleton identification\n * at runtime.\n */\nfunction isSingleton(resource) {\n return typeof resource.isSingleton !== \"undefined\" && resource.isSingleton;\n}\nexports.isSingleton = isSingleton;\n/**\n * Returns a copy of `populatedImport` with all options removed which\n * cause `optionFilter` to return false.\n */\nfunction filterOptions(populatedImport, optionFilter) {\n if (populatedImport.options) {\n return __assign(__assign({}, populatedImport), { options: populatedImport.options.filter(optionFilter) });\n }\n return populatedImport;\n}\nexports.filterOptions = filterOptions;\n/**\n * Returns a copy of `populatedImport` with the options' handle labels\n * mapped according to `labelFactory`.\n */\nfunction mapOptionLabels(populatedImport, labelFactory) {\n if (populatedImport.options) {\n return __assign(__assign({}, populatedImport), { options: populatedImport.options.map(function (option) {\n return __assign(__assign({}, option), { handle: __assign(__assign({}, option.handle), { label: labelFactory(option) }) });\n }) });\n }\n return populatedImport;\n}\nexports.mapOptionLabels = mapOptionLabels;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.buildSimpleApi = function (functions) {\n var api = {};\n for (var key in functions) {\n api[key] = buildFunction(functions[key]);\n }\n return api;\n};\nvar buildFunction = function (cFunction) {\n return cFunction.returns + \" \" + cFunction.name + \"(\" + buildArguments(cFunction.arguments) + \")\";\n};\nvar buildArguments = function (args) {\n if (args) {\n return args.map(function (arg) { return arg.type + \" \" + arg.name; }).join(\", \");\n }\n else {\n return \"void\";\n }\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getInterfaceName = function (pkgJson) {\n var strReplace = \"@microchip/\";\n var interfaceName;\n if (pkgJson) {\n interfaceName = pkgJson[\"name\"];\n if (interfaceName) {\n interfaceName = interfaceName.replace(strReplace, \"\");\n }\n }\n if (!interfaceName) {\n throw new Error(\"Invalid Interface Name...!\");\n }\n return interfaceName;\n};\nexports.getInterfaceVersion = function (pkgJson) {\n var versionRegex = new RegExp(\"\\\\d+.\\\\d+.\\\\d+\");\n var version;\n if (pkgJson) {\n version = pkgJson[\"version\"];\n }\n if (!version && !versionRegex.test(version)) {\n throw new Error(\"Invalid Interface Version...!\");\n }\n return version;\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar c_function_types_1 = require(\"./c-function-types\");\nexports.buildSimpleApi = c_function_types_1.buildSimpleApi;\nvar helpers_1 = require(\"./helpers\");\nexports.getInterfaceName = helpers_1.getInterfaceName;\nexports.getInterfaceVersion = helpers_1.getInterfaceVersion;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createPrototypeExport = exports.createPrototypeImport = exports.getInterfaceId = void 0;\nvar InterfaceTypes = __importStar(require(\"@microchip/scf-interface\"));\nvar pkgJson = require(\"../package.json\");\nexports.getInterfaceId = function () {\n return {\n name: InterfaceTypes.getInterfaceName(pkgJson),\n version: InterfaceTypes.getInterfaceVersion(pkgJson),\n };\n};\nexports.createPrototypeImport = function () {\n return {\n interfaceId: exports.getInterfaceId(),\n };\n};\nexports.createPrototypeExport = function () {\n return {\n interfaces: [{ interfaceId: exports.getInterfaceId() }],\n };\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar sys_init_basic_interface_1 = require(\"./sys-init-basic-interface\");\nObject.defineProperty(exports, \"Interface\", { enumerable: true, get: function () { return sys_init_basic_interface_1.Interface; } });\nObject.defineProperty(exports, \"INIT_PRIORITY\", { enumerable: true, get: function () { return sys_init_basic_interface_1.INIT_PRIORITY; } });\nObject.defineProperty(exports, \"prioritySorter\", { enumerable: true, get: function () { return sys_init_basic_interface_1.prioritySorter; } });\nObject.defineProperty(exports, \"sortSysInitInitializers\", { enumerable: true, get: function () { return sys_init_basic_interface_1.sortSysInitInitializers; } });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createMock = void 0;\nvar api_1 = require(\"./api\");\nexports.createMock = function () {\n return {\n interfaceId: api_1.getInterfaceId(),\n payload: {\n moduleName: \"MyModule\",\n },\n args: {},\n results: {\n requestId: {\n initializers: [\n {\n name: \"mymodule_init1();\",\n header: {\n name: \"../mymodule.h\",\n path: \"include/\",\n },\n priority: 1,\n },\n ],\n localInitializers: [\n {\n funcDec: \"void mymodule_init2(void);\",\n name: \"mymodule_init2();\",\n funcBody: \"/** \\n * @ingroup systemdriver\\n * @brief Initializes the Peripheral module.\\n * @param None.\\n * @return None.\\n * void mymodule_init2(void){\\n * //IOCMD IOC enabled; CLKRMD CLKR enabled;\\n * PMD0 = 0x0;\\n * }\\n */\",\n priority: 1,\n },\n ],\n },\n },\n };\n};\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Interface = exports.sortSysInitInitializers = exports.prioritySorter = exports.INIT_PRIORITY = void 0;\nvar mock_1 = require(\"./mock\");\nvar api_1 = require(\"./api\");\nvar INIT_PRIORITY;\n(function (INIT_PRIORITY) {\n INIT_PRIORITY[INIT_PRIORITY[\"START\"] = 1] = \"START\";\n INIT_PRIORITY[INIT_PRIORITY[\"PRE_PERIPHERAL\"] = 50] = \"PRE_PERIPHERAL\";\n INIT_PRIORITY[INIT_PRIORITY[\"PERIPHERAL\"] = 100] = \"PERIPHERAL\";\n INIT_PRIORITY[INIT_PRIORITY[\"POST_PERIPHERAL\"] = 150] = \"POST_PERIPHERAL\";\n INIT_PRIORITY[INIT_PRIORITY[\"DEFAULT\"] = 200] = \"DEFAULT\";\n INIT_PRIORITY[INIT_PRIORITY[\"PRE_SOFTWARE\"] = 250] = \"PRE_SOFTWARE\";\n INIT_PRIORITY[INIT_PRIORITY[\"SOFTWARE\"] = 300] = \"SOFTWARE\";\n INIT_PRIORITY[INIT_PRIORITY[\"POST_SOFTWARE\"] = 350] = \"POST_SOFTWARE\";\n INIT_PRIORITY[INIT_PRIORITY[\"END\"] = 400] = \"END\";\n})(INIT_PRIORITY = exports.INIT_PRIORITY || (exports.INIT_PRIORITY = {}));\n/** Sorting initializer based on the priority. */\nexports.prioritySorter = function (a, b) {\n var _a, _b, _c, _d;\n var result = 0;\n var apriority = (_a = a === null || a === void 0 ? void 0 : a.initializer.priority) !== null && _a !== void 0 ? _a : INIT_PRIORITY.DEFAULT;\n var bpriority = (_b = b === null || b === void 0 ? void 0 : b.initializer.priority) !== null && _b !== void 0 ? _b : INIT_PRIORITY.DEFAULT;\n if (apriority < bpriority) {\n result = -1;\n }\n else if (apriority > bpriority) {\n result = 1;\n }\n else {\n //same priority sort via intializer name alphabetically\n result = (_d = (_c = a === null || a === void 0 ? void 0 : a.initializer.name) === null || _c === void 0 ? void 0 : _c.localeCompare(b === null || b === void 0 ? void 0 : b.initializer.name)) !== null && _d !== void 0 ? _d : 0;\n }\n return result;\n};\n/**Creating list - combination of initializers and localInitializers */\nexports.sortSysInitInitializers = function (data) {\n var retinitializers = __spreadArrays(data);\n var initSystemList = [];\n //iterating initializers[]\n for (var _i = 0, retinitializers_1 = retinitializers; _i < retinitializers_1.length; _i++) {\n var entry = retinitializers_1[_i];\n if (entry.initializers) {\n for (var _a = 0, _b = entry.initializers; _a < _b.length; _a++) {\n var subentry = _b[_a];\n // if (subentry) {\n var temp = {\n initializer: __assign(__assign({}, subentry), { isLocalInit: false, isNewInterface: true }),\n };\n initSystemList.push(temp);\n // }\n }\n }\n }\n //iterating localInitializers[]\n for (var _c = 0, retinitializers_2 = retinitializers; _c < retinitializers_2.length; _c++) {\n var entry = retinitializers_2[_c];\n if (entry.localInitializers) {\n for (var _d = 0, _e = entry.localInitializers; _d < _e.length; _d++) {\n var subentry = _e[_d];\n // if (subentry) {\n var temp = {\n initializer: __assign(__assign({}, subentry), { isLocalInit: true, isNewInterface: true }),\n };\n initSystemList.push(temp);\n // }\n }\n }\n }\n initSystemList.sort(exports.prioritySorter);\n return initSystemList;\n};\nexports.Interface = {\n createPrototypeExport: api_1.createPrototypeExport,\n createPrototypeImport: api_1.createPrototypeImport,\n getInterfaceId: api_1.getInterfaceId,\n createMock: mock_1.createMock,\n};\n","import { StringConstants } from \"./StringConstants\";\n\nexport class ClockCalculator {\n private lfintosc = \"31000\";\n private mfintosc = \"500000\";\n private mfintosc_31KHz = \"31250\";\n private sosc = \"32768\";\n private oscSelect: string;\n private HFInternalClk: string;\n private externalClk: number;\n private clkDivider: number;\n\n MAX_PLL = 16000000; // in Hz\n MIN_PLL = 3000000; // in Hz\n\n public constructor(\n oscSelect: string,\n HFInternalClk: string,\n externalClk: number,\n clkDivider: number,\n ) {\n this.oscSelect = oscSelect;\n this.HFInternalClk = HFInternalClk;\n this.externalClk = externalClk;\n this.clkDivider = clkDivider;\n }\n\n public getCurrentSystemClk = (): number => {\n let currentSystemClk: number;\n let HFClk: number;\n\n if (this.oscSelect === StringConstants.SOSC) {\n currentSystemClk = 32768 / this.clkDivider;\n } else if (this.oscSelect === StringConstants.LFINTOSC) {\n currentSystemClk = 31000 / this.clkDivider;\n } else if (this.oscSelect === StringConstants.HFINTOSC) {\n HFClk = parseInt(this.HFInternalClk?.replace(\"_MHz\", \"\") ?? \"1000000\");\n currentSystemClk = (HFClk * 1000000) / this.clkDivider;\n } else if (this.oscSelect === StringConstants.HFINTOSC_2xPLL) {\n HFClk = parseInt(this.HFInternalClk?.replace(\"_MHz\", \"\") ?? \"1000000\");\n if (HFClk == 8 || HFClk == 12 || HFClk == 16) {\n currentSystemClk = (HFClk * 2 * 1000000) / this.clkDivider;\n } else {\n currentSystemClk = (HFClk * 1000000) / this.clkDivider;\n }\n } else if (this.oscSelect === StringConstants.EXTOSC) {\n currentSystemClk = this.externalClk / this.clkDivider;\n } else {\n if (this.externalClk <= this.MIN_PLL || this.externalClk > this.MAX_PLL) {\n currentSystemClk = this.externalClk / this.clkDivider;\n } else {\n currentSystemClk = (this.externalClk * 4) / this.clkDivider;\n }\n }\n return Math.round(currentSystemClk);\n };\n\n public getHfIntOsc = (): string => {\n return this.HFInternalClk?.replace(\"_MHz\", \"000000\") ?? \"1000000\";\n };\n\n public getMfIntOsc = (): string => {\n return this.mfintosc;\n };\n\n public getMfIntOsc_31KHz = (): string => {\n return this.mfintosc_31KHz;\n };\n\n public getLfIntOsc = (): string => {\n return this.lfintosc;\n };\n\n public getExtOsc = (): string => {\n return this.externalClk.toString();\n };\n\n public getSosc = (): string => {\n return this.sosc;\n };\n}\n","import { CreatorFunctions } from \"@microchip/melody-automodule-interface\";\nimport { State } from \"../generated_module/src/types/State\";\n\nexport const getCreatorFunctions = (): CreatorFunctions => {\n return {\n shouldImport: shouldImport,\n };\n};\n\nconst shouldImport = (importKey: string, state: State): boolean => {\n return true;\n};\n","import * as Processor from \"@microchip/scf-common/lib/Processor\";\nimport { ClockCalculator } from \"./ClockCalculator\";\nimport * as config_device from \"@microchip/config-device\";\nimport { StringConstants } from \"./StringConstants\";\nimport osc_clocks from \"@microchip/osc-clocks\";\nimport * as clock from \"@microchip/clock-basic-interface\";\nimport {\n AppModel,\n DerivedData,\n DerivedFunctions,\n} from \"../generated_module/src/types/AutoModuleTypes\";\nimport * as InterfaceTypes from \"@microchip/scf-interface\";\nimport { getPinsLogic } from \"../generated_module/src/pins/PCPHelper\";\nimport * as configbits_basic_interface from \"@microchip/configbits-basic-interface\";\nimport * as sys_init_basic_interface from \"@microchip/sys-init-basic-interface\";\n\nexport const getDerivedData = (dataModel: AppModel): DerivedData => {\n if (dataModel) {\n return new MyDerivedData(dataModel);\n }\n return new EmptyDerivedData();\n};\n\n//This data will be used at the creator stage and relies on only the state\nexport class EmptyDerivedData implements DerivedData {\n getMyFunctions = (): DerivedFunctions => {\n return {};\n };\n getModel = (): AppModel | undefined => {\n return undefined;\n };\n}\n\n//This data will be used at the processor stage\nexport class MyDerivedData implements DerivedData {\n private dataModel: AppModel;\n private clockCalculator: ClockCalculator;\n\n constructor(dataModel: AppModel) {\n this.dataModel = dataModel;\n }\n\n getClockCalculator = (): ClockCalculator => {\n if (!this.clockCalculator) {\n this.clockCalculator = new ClockCalculator(\n this.getModel().getComponentValue(\"noscOsccon1\") ?? \"\",\n this.getModel().getComponentValue(\"hffrqOscfrq\") ?? \"\",\n this.getModel().getComponentValue(\"externalClk\") ?? 32768,\n parseInt(this.getModel().getComponentValue(\"ndivOsccon1\") ?? \"\"),\n );\n }\n return this.clockCalculator;\n };\n\n getMyFunctions = (): DerivedFunctions => {\n return {\n moduleName: this.getModuleName,\n alerts: this.getMyAlerts,\n isEnabled: this.isEnabled,\n isVisible: this.isVisible,\n coscOsccon2: this.getResOscValue,\n currentSystemClk: (): number =>\n this.getClockCalculator().getCurrentSystemClk(),\n \"fosc-hz_payload\": (): string =>\n this.getClockCalculator().getCurrentSystemClk().toString(),\n sys_init_basic_interface_results: this.sys_init_basic_interface_results,\n config_device_results: this.config_device_results,\n templateData: this.getTemplateData,\n overrideDefaultValues: this.overrideDefaultValue,\n configbits_basic_interface_args: this.getConfigbitsBasicInterfaceArgs,\n \"osc-clocks_payload\": this.getOscClocksProcessedPayload,\n \"clock-basic-interface_payload\": this.getClockProcessedPayload,\n doNotShow: (): boolean => false,\n getPinsLogic: getPinsLogic,\n importName: this.friendlyImportName,\n };\n };\n\n private friendlyImportName = (importKey: string): string => {\n if (importKey === \"scf_pic8_osc_v1\") return \"Oscillator Hardware\";\n if (importKey === \"sys_init_basic_interface\") return \"system.c Initialize()\";\n if (importKey === \"config_device\") return \"Configuration Device\";\n if (importKey === \"configbits_basic_interface\") return \"Configuration Request\";\n if (importKey === \"pins_interface\") return \"Pins\";\n return importKey;\n };\n private sys_init_basic_interface_results = (): sys_init_basic_interface.Results => {\n return {\n initializers: [\n {\n name: \"CLOCK_Initialize();\",\n header: {\n name: \"clock.h\",\n path: \"system/\",\n },\n priority: sys_init_basic_interface.INIT_PRIORITY.START,\n },\n ],\n };\n };\n private getConfigbitsBasicInterfaceArgs =\n (): configbits_basic_interface.Arguments => {\n return {\n configsReq: [\"FEXTOSC\", \"CLKOUTEN\", \"MCLRE\", \"LVP\", \"RSTOSC\"],\n };\n };\n\n private getDynamicComponetDefaultValue = (\n componentName: string,\n ): string | undefined => {\n const externalClkSelectedOptions = this.dataModel.getImportValue(\n \"configbits_basic_interface\",\n )?.configsResp?.[componentName];\n let selectedOptionVal: string | undefined;\n\n if (externalClkSelectedOptions) {\n selectedOptionVal = externalClkSelectedOptions[\"defaultValue\"][\"value\"];\n }\n return selectedOptionVal ?? undefined;\n };\n\n private getResOscValue = (): string => {\n const resetOscValue = this.getDynamicComponetDefaultValue(\"RSTOSC\");\n let actualOscValue;\n if (resetOscValue?.indexOf(\"4x PLL\") !== -1) {\n actualOscValue = \"EXTOSC with 4x PLL\";\n } else if (resetOscValue?.indexOf(\"Secondary Oscillator\") !== -1) {\n actualOscValue = \"SOSC\";\n } else if (resetOscValue?.indexOf(\"Low-Frequency\") !== -1) {\n actualOscValue = \"LFINTOSC\";\n } else if (\n resetOscValue?.indexOf(\"HFINTOSC with HFFRQ = 4 MHz and CDIV = 4:1\") !== -1\n ) {\n actualOscValue = \"HFINTOSC\";\n } else if (\n resetOscValue?.indexOf(\"HFINTOSC with HFFRQ = 64 MHz and CDIV = 1:1\") !== -1\n ) {\n actualOscValue = \"HFINTOSC\";\n } else if (resetOscValue?.indexOf(\"FEXTOSC\") !== -1) {\n actualOscValue = \"EXTOSC\";\n } else {\n actualOscValue = undefined;\n }\n return actualOscValue;\n };\n\n private getPLLStatus = (): boolean => {\n const pllStatus = this.getResOscValue();\n const pllEnable = this.dataModel.isComponentValue(\"pllenOscen\");\n const clkSrcVal = this.dataModel.getComponentValue(\"noscOsccon1\");\n if (pllStatus === \"EXTOSC with 4x PLL\") {\n return true;\n } else if (pllEnable === true) {\n return true;\n } else if (clkSrcVal?.indexOf(\"4x PLL\") !== -1) {\n return true;\n } else if (clkSrcVal?.indexOf(\"2x PLL\") !== -1) {\n return true;\n } else {\n return false;\n }\n };\n\n private getOscClocksProcessedPayload = (): osc_clocks.ProcessedPayload => {\n const oscObj: osc_clocks.ProcessedPayload = {\n extosc: this.getClockCalculator().getExtOsc() ?? \"32768\",\n fosc: this.getClockCalculator().getCurrentSystemClk().toString() ?? \"1000000\",\n hfintosc: this.getClockCalculator().getHfIntOsc() ?? \"1000000\",\n lfintosc: this.getClockCalculator().getLfIntOsc() ?? \"31000\",\n mfintosc: this.getClockCalculator().getMfIntOsc() ?? \"500000\",\n mfintosc_31Khz: this.getClockCalculator().getMfIntOsc_31KHz() ?? \"31250\",\n sosc: this.getClockCalculator().getSosc() ?? \"32768\",\n };\n const hasSosc: boolean =\n this.dataModel.isComponentValue(\"soscenOscen\") !== undefined ? true : false;\n if (hasSosc) {\n oscObj.hasSosc = true;\n oscObj.soscEnabled = this.dataModel.isComponentValue(\"soscenOscen\");\n oscObj.soscPowerMode = this.dataModel.getComponentValue(\"soscpwrOsccon3\");\n }\n return oscObj;\n };\n\n private getClockProcessedPayload = (): clock.Payload => {\n const clockObj: clock.Payload = {\n fosc: this.getClockCalculator().getCurrentSystemClk().toString() ?? \"1000000\",\n extosc: this.getClockCalculator().getExtOsc() ?? \"32768\",\n hfintosc: this.getClockCalculator().getHfIntOsc() ?? \"1000000\",\n lfintosc: this.getClockCalculator().getLfIntOsc() ?? \"31000\",\n mfintosc: this.getClockCalculator().getMfIntOsc() ?? \"500000\",\n mfintosc_31Khz: this.getClockCalculator().getMfIntOsc_31KHz() ?? \"31250\",\n sosc: this.getClockCalculator().getSosc() ?? \"32768\",\n };\n const hasSosc: boolean =\n this.dataModel.getComponent(\"soscenOscen\") !== undefined ? true : false;\n if (hasSosc) {\n clockObj.hasSosc = true;\n clockObj.soscEnabled = this.dataModel.isComponentValue(\"soscenOscen\");\n clockObj.soscPowerMode = this.dataModel.getComponentValue(\"soscpwrOsccon3\");\n }\n return clockObj;\n };\n\n public getModuleName = (): string => {\n return \"Clock Control\";\n };\n public getModel = (): AppModel => {\n return this.dataModel;\n };\n\n private getTemplateData = (): any => {\n const headers: InterfaceTypes.HeaderFile = {\n name: \"clock.h\",\n path: \"../\",\n };\n const initRegisters = this.dataModel.getRegisterValues();\n //const registerValues = this.dataModel.getRegisterValues();\n return {\n deviceFrequency: this.getClockCalculator().getCurrentSystemClk().toString(),\n\n initRegisters: initRegisters,\n header: headers,\n\n moduleNameUpperCase: this.getModuleName().toUpperCase(),\n moduleNameLowerCase: this.getModuleName().toLowerCase(),\n PackageVersion: \"4.3.7\",\n isPllEnabled: this.getPLLStatus() ?? false,\n //...registerValues,\n\n initializerOptimize:\n this.getModel().getComponentValue(\"generateInitializerCode\") !==\n \"Initialize all registers\"\n ? true\n : false,\n generateCommentedCode:\n this.getModel().getComponentValue(\"generateInitializerCode\") ===\n \"Generate with commented unmodified registers\"\n ? true\n : false,\n };\n };\n\n private config_device_results = (): config_device.Results => {\n return {\n headers: [\n {\n name: \"clock.h\",\n path: \"system/\",\n },\n ],\n };\n };\n\n private isEnabled = (componentName: string): boolean => {\n switch (componentName) {\n case \"hffrqOscfrq\":\n return (\n this.dataModel.getComponentValue(\"noscOsccon1\")?.indexOf(\"HF\") != -1\n );\n case \"currentSystemClk\":\n return false;\n case \"lfIntOscFreq\":\n return false;\n default:\n return true;\n }\n };\n\n private isVisible = (componentName: string): boolean => {\n const componentValue = this.dataModel.getComponentValue(\"noscOsccon1\");\n switch (componentName) {\n case \"externalClk\":\n if (\n componentValue === StringConstants.EXTOSC ||\n componentValue === StringConstants.EXTOSC_4xPLL\n ) {\n return true;\n } else {\n return false;\n }\n case \"lfIntOscFreq\":\n if (componentValue != StringConstants.LFINTOSC) {\n return false;\n } else {\n return true;\n }\n case \"hffrqOscfrq\":\n if (\n componentValue != StringConstants.HFINTOSC &&\n componentValue != StringConstants.HFINTOSC_2xPLL\n ) {\n return false;\n } else {\n return true;\n }\n default:\n return true;\n }\n };\n private getfoscOptions = (): string | undefined => {\n const foscOptions =\n this.dataModel.getHardware()?.getPeripheral()?.registers.OSCFRQ?.settings\n ?.HFFRQ.options ?? [];\n let defaultVal: string | undefined;\n let refClk = parseInt(\"1_MHz\"?.replace(\"_MHz\", \"\") ?? 0);\n if (foscOptions) {\n foscOptions.forEach((option) => {\n const HFClk = parseInt(option.name?.replace(\"_MHz\", \"\") ?? 0);\n\n if (HFClk > refClk) {\n refClk = HFClk;\n defaultVal = option.name;\n }\n });\n }\n return defaultVal;\n };\n\n private overrideDefaultValue = (componentName: string): any => {\n let defVal: string | undefined = undefined;\n switch (componentName) {\n case \"hffrqOscfrq\":\n defVal = this.getfoscOptions();\n break;\n }\n return defVal;\n };\n\n private getMyAlerts = (): Processor.Alert[] => {\n const alerts: Processor.Alert[] = [];\n const selectedOptionVal: string =\n this.getDynamicComponetDefaultValue(\"FEXTOSC\") ?? \"\";\n const noscOsccon1 = this.dataModel.getComponentValue(\"noscOsccon1\");\n\n if (\n noscOsccon1 === StringConstants.EXTOSC_4xPLL ||\n noscOsccon1 === StringConstants.EXTOSC\n ) {\n alerts.push({\n type: Processor.AlertTypes.Hint,\n text: 'Please configure required \"External Oscillator Selection\" in System Module config bits',\n });\n }\n\n if (\n noscOsccon1 === StringConstants.EXTOSC_4xPLL &&\n ((this.getModel().getComponentValue(\"externalClk\") ?? 0) <=\n this.getClockCalculator().MIN_PLL ||\n (this.getModel().getComponentValue(\"externalClk\") ?? 0) >\n this.getClockCalculator().MAX_PLL)\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text: \"The frequency selected does not fall within the PLL locking range. Therefore, the actual frequency produced by hardware maybe unpredictable when the PLL is enabled. Either change the clock frequency or select a different option in Oscillator select.\",\n });\n }\n\n if (\n noscOsccon1 === StringConstants.EXTOSC_4xPLL ||\n noscOsccon1 === StringConstants.EXTOSC\n ) {\n if (\n selectedOptionVal?.indexOf(\"external clock\") != -1 &&\n this.getClockCalculator().getCurrentSystemClk() >\n StringConstants.ExtClkFreq_64MHz\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text:\n \"External clock frequency is greater than recommended value (\" +\n StringConstants.ExtClkFreq_64MHz +\n \" Hz)\",\n });\n }\n if (\n selectedOptionVal?.indexOf(\"crystal oscillator\") != -1 &&\n (this.getModel().getComponentValue(\"externalClk\") ?? 0) > 16000000 &&\n this.getClockCalculator().getCurrentSystemClk() >\n StringConstants.ExtClkFreq_20MHz\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text:\n \"External clock frequency is greater than recommended value (\" +\n StringConstants.ExtClkFreq_20MHz +\n \" Hz)\",\n });\n }\n if (\n selectedOptionVal.indexOf(\"Oscillator not enabled\") != -1 &&\n this.getClockCalculator().getCurrentSystemClk() >\n StringConstants.ExtClkFreq_32MHz\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text:\n \"External clock frequency is greater than recommended value (\" +\n StringConstants.ExtClkFreq_32MHz +\n \" Hz)\",\n });\n }\n }\n\n const HFClk = parseInt(\n this.dataModel.getComponentValue(\"hffrqOscfrq\")?.replace(\"_MHz\", \"\") ?? \"0\",\n );\n if (\n this.dataModel.getComponentValue(\"noscOsccon1\") ===\n StringConstants.HFINTOSC_2xPLL &&\n (HFClk == 1 || HFClk == 2 || HFClk == 4 || HFClk == 32)\n ) {\n alerts.push({\n type: Processor.AlertTypes.Warning,\n text: \"The frequency set in HF Internal Clock may not get generated by the clock hardware properly since it does not fall within the 2xPLL range of 8-16 MHz. Therefore, it is recommended that the option 'HFINTOSC' be selected in the Oscillator select combo box.\",\n });\n }\n\n return alerts;\n };\n}\n","import { pin_row, pin_state } from \"@microchip/pins-interface/lib/types\";\nimport { AppModel } from \"../generated_module/src/types/AutoModuleTypes\";\n\n// provide complete dynamic data for all pin rows. It overrides static pindata.json\nexport const getCompletePinData = (appModel: AppModel): any => {\n // way to programatically override the json data\n return {};\n};\n\n// overrides pin data for a particular row based on model.\nexport function getRowData(appModel: AppModel, rowData: pin_row): pin_row | undefined {\n let retRowJSONdata: pin_row | undefined = rowData;\n let rowActions: any = [];\n const clockOutEnable = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"CLKOUTEN\"];\n\n if (clockOutEnable) {\n delete clockOutEnable[\"setting\"];\n delete clockOutEnable[\"displayOptionSetting\"];\n const selectedOption: string = clockOutEnable[\"defaultValue\"][\"value\"];\n\n if (selectedOption.indexOf(\"CLKOUT function is enabled\") != -1) {\n if (rowData.name === \"clockout\") {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"CLKOUT\" },\n };\n }\n }\n\n const isPic18ClkOut: boolean =\n selectedOption === \"CLKOUT function is enabled\" ||\n selectedOption === \"CLKOUT function is disabled\"\n ? true\n : false;\n const actionArr = appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"clockout\")\n .forComponent(clockOutEnable)\n .addIfLockedSetValue(\n \"CLKOUT\",\n isPic18ClkOut\n ? \"CLKOUT function is enabled\"\n : \"CLKOUT function is enabled; FOSC/4 clock appears at OSC2\",\n )\n .addIfUnLockedSetValue(\n \".*\",\n isPic18ClkOut\n ? \"CLKOUT function is disabled\"\n : \"CLKOUT function is disabled; i/o or oscillator function on OSC2\",\n )\n .build();\n // Provide the module reference(scriptID) of remote config bits module\n for (const eachAction of actionArr) {\n const lockedState = eachAction.state[pin_state.LOCKED];\n if (lockedState) {\n lockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")?.handle\n ?.providerId,\n };\n }\n const unlockedState = eachAction.state[pin_state.UNLOCK];\n if (unlockedState) {\n unlockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")?.handle\n ?.providerId,\n };\n }\n rowActions.push(eachAction);\n }\n }\n\n const extClkSelect = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"FEXTOSC\"];\n\n if (extClkSelect) {\n delete extClkSelect[\"setting\"];\n delete extClkSelect[\"displayOptionSetting\"];\n\n const selectedOption: string = extClkSelect[\"defaultValue\"][\"value\"];\n\n if (\n selectedOption.indexOf(\"(external clock)\") != -1 ||\n selectedOption.indexOf(\"EC\") != -1\n ) {\n if (rowData.name === \"osc1\" || rowData.name === \"osc2\") {\n retRowJSONdata = undefined;\n }\n }\n\n if (selectedOption.indexOf(\"(crystal oscillator)\") != -1) {\n if (rowData.name === \"clockin\") {\n retRowJSONdata = undefined;\n }\n }\n\n if (\n selectedOption.indexOf(\"Oscillator not enabled\") != -1 ||\n selectedOption.indexOf(\"Reserved\") != -1\n ) {\n if (\n rowData.name === \"clockin\" ||\n rowData.name === \"osc1\" ||\n rowData.name === \"osc2\"\n ) {\n retRowJSONdata = undefined;\n }\n }\n // Restricting pin actions for clockin, osc1 and osc2 pin rows\n const mclrKey = appModel.getComponent(\"mclrUnusedKey\")?.component;\n if (mclrKey) {\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"clockin\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"osc1\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"osc2\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n }\n }\n\n const mclrEnable = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"MCLRE\"];\n const lvpEnable = appModel.getImportValue(\"configbits_basic_interface\")\n ?.configsResp?.[\"LVP\"];\n\n if (mclrEnable && lvpEnable) {\n delete mclrEnable[\"setting\"];\n delete mclrEnable[\"displayOptionSetting\"];\n const selectedMclrOption: string = mclrEnable[\"defaultValue\"][\"value\"];\n\n delete lvpEnable[\"setting\"];\n delete lvpEnable[\"displayOptionSetting\"];\n const selectedLvpOption: string = lvpEnable[\"defaultValue\"][\"value\"];\n\n if (\n selectedLvpOption.indexOf(\"HV on MCLR/VPP must be used for programming\") !=\n -1 ||\n selectedLvpOption.indexOf(\n \"High Voltage on MCLR/Vpp must be used for programming\",\n ) != -1\n ) {\n if (\n selectedMclrOption.indexOf(\"MCLR pin is MCLR\") != -1 ||\n selectedMclrOption.indexOf(\"MCLR pin is Master Clear function\") != -1 ||\n selectedMclrOption === \"MCLR pin (RE3) is MCLR\"\n ) {\n if (rowData.name === \"reset\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"MCLR\" },\n };\n }\n }\n const isPic18Mclr: boolean =\n selectedMclrOption ===\n \"If LVP = 0, MCLR pin is MCLR; If LVP = 1, RE3 pin function is MCLR \" ||\n selectedMclrOption ===\n \"If LVP = 0, MCLR pin function is port defined function; If LVP =1, RE3 pin fuction is MCLR\"\n ? true\n : false;\n const isQ10Mclr: boolean =\n selectedMclrOption === \"MCLR pin (RE3) is MCLR\" ||\n selectedMclrOption ===\n \"If LVP = 0, MCLR pin (RE3) is an input; If LVP =1, MCLR pin (RE3) is MCLR\"\n ? true\n : false;\n let actionArr: any = [];\n\n // For handling Q10 devices\n if (isQ10Mclr) {\n actionArr = appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"reset\")\n .forComponent(mclrEnable)\n .addIfLockedSetValue(\"MCLR\", \"MCLR pin (RE3) is MCLR\")\n .addIfUnLockedSetValue(\n \".*\",\n \"If LVP = 0, MCLR pin (RE3) is an input; If LVP =1, MCLR pin (RE3) is MCLR\",\n )\n .build();\n } else {\n actionArr = appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"reset\")\n .forComponent(mclrEnable)\n .addIfLockedSetValue(\n \"MCLR\",\n isPic18Mclr\n ? \"If LVP = 0, MCLR pin is MCLR; If LVP = 1, RE3 pin function is MCLR \"\n : \"MCLR pin is Master Clear function\",\n )\n .addIfUnLockedSetValue(\n \".*\",\n isPic18Mclr\n ? \"If LVP = 0, MCLR pin function is port defined function; If LVP =1, RE3 pin fuction is MCLR\"\n : \"MCLR pin function is port defined function\",\n )\n .build();\n }\n\n // Provide the module reference(scriptID) of remote config bits module\n for (const eachAction of actionArr) {\n const lockedState = eachAction.state[pin_state.LOCKED];\n if (lockedState) {\n lockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")\n ?.handle?.providerId,\n };\n }\n const unlockedState = eachAction.state[pin_state.UNLOCK];\n if (unlockedState) {\n unlockedState.meta = {\n to: appModel.getAssignedImport(\"configbits_basic_interface\")\n ?.handle?.providerId,\n };\n }\n rowActions.push(eachAction);\n }\n } else {\n if (selectedMclrOption) {\n if (rowData.name === \"reset\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"MCLR\" },\n };\n }\n }\n const mclrKey = appModel.getComponent(\"mclrUnusedKey\")?.component;\n if (mclrKey) {\n rowActions = rowActions.concat(\n appModel\n .getPCPHelper?.()\n .stateActionBuilder(rowData)\n .rowWithName(\"reset\")\n .forComponent(mclrKey)\n .addIfLockedSetValue(\".*\", \"\")\n .addIfUnLockedSetValue(\".*\", \"\")\n .build(),\n );\n }\n }\n }\n\n const noscOsccon1 = appModel.getComponentValue(\"noscOsccon1\");\n if (\n noscOsccon1 === \"HFINTOSC\" ||\n noscOsccon1 === \"LFINTOSC\" ||\n noscOsccon1 === \"SOSC\" ||\n noscOsccon1 === \"HFINTOSC with 2x PLL\"\n ) {\n if (rowData.name === \"clockin\") {\n retRowJSONdata = undefined;\n }\n if (rowData.name === \"osc1\") {\n retRowJSONdata = undefined;\n }\n if (rowData.name === \"osc2\") {\n retRowJSONdata = undefined;\n }\n }\n\n if (rowData.name === \"sosci\") {\n if (noscOsccon1 === \"SOSC\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"SOSCI\" },\n };\n } else {\n retRowJSONdata = undefined;\n }\n }\n\n if (rowData.name === \"sosco\") {\n if (noscOsccon1 === \"SOSC\" && retRowJSONdata) {\n retRowJSONdata = {\n ...retRowJSONdata,\n behaviourMeta: { lockPinRegEx: \"SOSCO\" },\n };\n } else {\n retRowJSONdata = undefined;\n }\n }\n\n if (retRowJSONdata) retRowJSONdata = { ...retRowJSONdata, actions: rowActions };\n\n return retRowJSONdata;\n}\n","export class StringConstants {\n static readonly SOSC = \"SOSC\";\n static readonly LFINTOSC = \"LFINTOSC\";\n static readonly HFINTOSC = \"HFINTOSC\";\n static readonly HFINTOSC_2xPLL = \"HFINTOSC with 2x PLL\";\n static readonly EXTOSC = \"EXTOSC\";\n static readonly EXTOSC_4xPLL = \"EXTOSC with 4x PLL\";\n static readonly OSC_NOT_NEEDED = \"Oscillator not needed\";\n static readonly ON = \"ON\";\n static readonly ExtClkFreq_64MHz = 64000000;\n static readonly ExtClkFreq_20MHz = 20000000;\n static readonly ExtClkFreq_32MHz = 32000000;\n}\n"],"sourceRoot":""}