@iobroker/json-config 8.4.10 → 8.4.12
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/README.md +8 -0
- package/build/JsonConfigComponent/ConfigFile.d.ts +2 -2
- package/build/JsonConfigComponent/ConfigFile.js +1 -2
- package/build/JsonConfigComponent/ConfigFile.js.map +1 -1
- package/build/JsonConfigComponent/ConfigFileSelector.d.ts +2 -2
- package/build/JsonConfigComponent/ConfigFileSelector.js +6 -4
- package/build/JsonConfigComponent/ConfigFileSelector.js.map +1 -1
- package/build/JsonConfigComponent/ConfigGeneric.d.ts +12 -2
- package/build/JsonConfigComponent/ConfigGeneric.js +54 -20
- package/build/JsonConfigComponent/ConfigGeneric.js.map +1 -1
- package/build/JsonConfigComponent/ConfigObjectId.d.ts +2 -2
- package/build/JsonConfigComponent/ConfigObjectId.js +1 -2
- package/build/JsonConfigComponent/ConfigObjectId.js.map +1 -1
- package/build/JsonConfigComponent/ConfigSelect.js +2 -2
- package/build/JsonConfigComponent/ConfigSelect.js.map +1 -1
- package/build/JsonConfigComponent/i18n/de.json +20 -0
- package/build/JsonConfigComponent/i18n/es.json +20 -0
- package/build/JsonConfigComponent/i18n/fr.json +20 -0
- package/build/JsonConfigComponent/i18n/it.json +20 -0
- package/build/JsonConfigComponent/i18n/nl.json +20 -0
- package/build/JsonConfigComponent/i18n/pl.json +20 -0
- package/build/JsonConfigComponent/i18n/pt.json +20 -0
- package/build/JsonConfigComponent/i18n/ru.json +20 -0
- package/build/JsonConfigComponent/i18n/uk.json +20 -0
- package/build/JsonConfigComponent/i18n/zh-cn.json +20 -0
- package/build/types.d.ts +8 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigSelect.js","sourceRoot":"./src/","sources":["JsonConfigComponent/ConfigSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EACH,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,EACT,MAAM,EACN,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,KAAK,EACL,gBAAgB,EAChB,UAAU,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAGxD,OAAO,aAAmE,MAAM,iBAAiB,CAAC;AAElG,MAAM,MAAM,GAAwB;IAChC,SAAS,EAAE;QACP,KAAK,EAAE,MAAM;KAChB;IACD,QAAQ,EAAE;QACN,OAAO,EAAE;YACL,SAAS,EAAE,CAAC;SACf;KACJ;IACD,IAAI,EAAE;QACF,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,WAAW,EAAE,CAAC;KACjB;CACJ,CAAC;AAqBF,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAmE;IACjG,YAAY,GAAsB,EAAE,CAAC;IAE7C,KAAK,CAAC,iBAAiB;QACnB,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAChC,IAAI,KAAK,GAAsB,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAExF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5B,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;iBAAM,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/C,KAAK,GAAG,EAAE,CAAC;YACf,CAAC;QACL,CAAC;QAED,MAAM,aAAa,GASb,EAAE,CAAC;QAET,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACjD,cAAc;YACd,MAAM,SAAS,GAMX,IAMH,CAAC;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,UAAU,GAAe;oBAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;oBAChE,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;iBAC9C,CAAC;gBACF,UAAU,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACzD,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC/B,KAAK,MAAM,EAAE,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oBAC/B,MAAM,aAAa,GAAe;wBAC9B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;wBAC9D,KAAK,EAAE,EAAE,CAAC,KAAK;wBACf,MAAM,EAAE,EAAE,CAAC,MAAM;wBACjB,KAAK,EAAE,EAAE,CAAC,KAAK;wBACf,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC;wBACzC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAChB,CAAC;oBACF,aAAa,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;oBAC/D,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACtC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,UAAU,GAAe;oBAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;oBAChE,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;oBAC3C,IAAI,EAAE,IAAI,CAAC,IAAI;iBAClB,CAAC;gBACF,UAAU,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACzD,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;QAED,8DAA8D;QAC9D,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrD,MAAM,YAAY,GAA2B,EAAE,CAAC;YAChD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,KAAK,aAAa,CAAC,eAAe,EAAE,CAAC;oBAC5D,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;gBACnD,CAAC;YACL,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAClE,CAAC;QAED,iBAAiB;QACjB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;YAC/B,aAAa,CAAC,OAAO,CAAC;gBAClB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,eAAe,CAAC;gBAC5C,KAAK,EAAE,aAAa,CAAC,eAAe;aACvC,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,eAAe,EAAE,aAAa,EAAE,CAAC,CAAC;QAC3E,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC;IAED,SAAS;QACL,IAAI,KAAK,GACL,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS;YACvD,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAC1D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAE3B,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5B,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;iBAAM,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/C,KAAK,GAAG,EAAE,CAAC;YACf,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,IAAgB;QACnC,oCAAoC;QACpC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAC9B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,IAAI,CAAC,KAAK,CAAC,SAAS,EACpB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAC/B,IAAI,CAAC,KAAK,CAAC,UAAU,EACrB,IAAI,CAAC,KAAK,CAAC,UAAU,CACxB,CAAC,CAAC;QACP,CAAC;QACD,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CACxB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EACzB,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,IAAI,CAAC,KAAK,CAAC,UAAU,EACrB,IAAI,CAAC,KAAK,CAAC,UAAU,CACxB,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,KAAa,EAAE,QAAiB;QACxC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE/B,OAAO,CACH,oBAAC,WAAW,IACR,SAAS,QACT,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,EAAE,EAAE,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YAExG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAC,SAAS,QAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAa,CAAC,CAAC,CAAC,IAAI;YAChG,oBAAC,UAAU,IACP,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EACnC,KAAK,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,EACpE,QAAQ,EAAE,CAAC,CAAC,EAAE;oBACV,0EAA0E;oBAC1E,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC7E,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAClD,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE;wBACpC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;wBAC9D,IAAI,YAAY,YAAY,OAAO,EAAE,CAAC;4BAClC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC9C,CAAC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC,IAEA,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAC1B,oBAAC,gBAAgB,IACb,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAC1B,OAAO,EAAE,oBAAC,KAAK,OAAG,EAClB,KAAK,EAAE,EAAE,CAAC,WAAW,IAAI,EAAE,EAC3B,KAAK,EACD,8BAAM,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;oBACjD,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CACP,oBAAC,IAAI,IACD,GAAG,EAAE,EAAE,CAAC,IAAI,EACZ,KAAK,EAAE,MAAM,CAAC,IAAI,GACpB,CACL,CAAC,CAAC,CAAC,IAAI;oBACR,oBAAC,UAAU,IACP,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,IAEzB,EAAE,CAAC,KAAK,CACA,CACV,EAEX,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,GAC3E,CACL,CAAC,CACO;YACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,oBAAC,cAAc,QACV,IAAI,CAAC,UAAU,CACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAC1B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAClC,CACY,CACpB,CAAC,CAAC,CAAC,IAAI,CACE,CACjB,CAAC;IACN,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,QAAiB,CAAC,oBAAoB;QAC5D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QAE7E,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,0BAA0B;QAExH,OAAO,CACH,oBAAC,WAAW,IACR,OAAO,EAAC,UAAU,EAClB,SAAS,QACT,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAChE,EAAE,EAAE,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YAExG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAC,UAAU,QAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAc,CAAC,CAAC,CAAC,IAAI;YAClG,oBAAC,MAAM,IACH,OAAO,EAAC,UAAU,EAClB,KAAK,EAAE,CAAC,CAAC,KAAK,EACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EACpC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,KAAK,EAAE,KAAK,IAAI,GAAG,EACnB,WAAW,EAAE,CAAC,GAAsB,EAAE,EAAE,CACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CACzB,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IACrD,GAAgB,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE;oBACjC,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;oBAC1D,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;wBAClD,MAAM,KAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,CAAC;wBAC7B,OAAO,CACH,oBAAC,IAAI,IACD,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,KAAK,GACd,CACL,CAAC;oBACN,CAAC;oBACD,OAAO,IAAI,CAAC;gBAChB,CAAC,CAAC,CACA,CACT,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CACd,8BAAM,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;oBACjD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACT,oBAAC,IAAI,IACD,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,KAAK,EAAE,MAAM,CAAC,IAAI,GACpB,CACL,CAAC,CAAC,CAAC,IAAI;oBACR;wBACI,6BAAK,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAG,IAAI,CAAC,KAAK,IAAI,GAAG,CAAO;wBAC3D,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAChB,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IACjE,IAAI,CAAC,WAAW,CACf,CACT,CAAC,CAAC,CAAC,IAAI,CACL,CACJ,CACV,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAC5B,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CACT,8BAAM,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;oBAClD,oBAAC,IAAI,IACD,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,KAAK,EAAE,MAAM,CAAC,IAAI,GACpB;oBACD,GAAG,CACD,CACV,CAAC,CAAC,CAAC,CACA,GAAG,CACN,CACJ,CAAC,CAAC,CAAC,CACA,8BAAM,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;oBACjD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACT,oBAAC,IAAI,IACD,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,KAAK,EAAE,MAAM,CAAC,IAAI,GACpB,CACL,CAAC,CAAC,CAAC,IAAI;oBACR;wBACI,iCAAM,IAAI,CAAC,KAAK,CAAO;wBACtB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAChB,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IACjE,IAAI,CAAC,WAAW,CACf,CACT,CAAC,CAAC,CAAC,IAAI,CACL,CACJ,CACV,EAEL,QAAQ,EAAE,CAAC,CAAC,EAAE;oBACV,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE;wBACxE,IAAI,YAAkC,CAAC;wBACvC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,aAAa,CAAC,eAAe,EAAE,CAAC;4BACrD,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;wBACrE,CAAC;6BAAM,CAAC;4BACJ,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACpE,CAAC;wBACD,IAAI,YAAY,YAAY,OAAO,EAAE,CAAC;4BAClC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC9C,CAAC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC,IAEA,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;gBACzB,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,CACH,oBAAC,aAAa,IACV,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE;wBAE1B,iCAAM,EAAE,CAAC,KAAK,CAAO;wBACpB,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CACd,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IACjE,EAAE,CAAC,WAAW,CACb,CACT,CAAC,CAAC,CAAC,IAAI,CACI,CACnB,CAAC;gBACN,CAAC;gBACD,OAAO,CACH,oBAAC,QAAQ,IACL,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,EAAE,CAAC,KAAK,EACf,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE;oBAExE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC1B,oBAAC,QAAQ,IACL,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAe,CAAC,EAC3C,OAAO,EAAE,GAAG,EAAE;4BACV,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;4BAC5D,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAe,CAAC,CAAC;4BAC9C,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gCACb,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;4BAC1B,CAAC;iCAAM,CAAC;gCACJ,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;gCACtB,MAAM,CAAC,IAAI,EAAE,CAAC;4BAClB,CAAC;4BACD,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CACzC,CAAC;wBACN,CAAC,GACH,CACL,CAAC,CAAC,CAAC,IAAI;oBACP,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CACP,oBAAC,IAAI,IACD,GAAG,EAAE,EAAE,CAAC,IAAI,EACZ,KAAK,EAAE,MAAM,CAAC,IAAI,GACpB,CACL,CAAC,CAAC,CAAC,IAAI;oBACR,oBAAC,YAAY,IACT,OAAO,EAAE,EAAE,CAAC,KAAK,EACjB,SAAS,EAAE,EAAE,CAAC,WAAW,EACzB,SAAS,EAAE;4BACP,SAAS,EAAE;gCACP,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE;6BACpE;yBACJ,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,GAC5B,CACK,CACd,CAAC;YACN,CAAC,CAAC,CACG;YACR,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,oBAAC,cAAc,QACV,IAAI,CAAC,UAAU,CACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAC1B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAClC,CACY,CACpB,CAAC,CAAC,CAAC,IAAI,CACE,CACjB,CAAC;IACN,CAAC;CACJ","sourcesContent":["import React, { type JSX } from 'react';\n\nimport {\n InputLabel,\n FormHelperText,\n FormControl,\n FormLabel,\n Select,\n MenuItem,\n ListSubheader,\n Chip,\n ListItemText,\n Checkbox,\n RadioGroup,\n Radio,\n FormControlLabel,\n Typography,\n} from '@mui/material';\n\nimport { I18n, Icon } from '@iobroker/adapter-react-v5';\n\nimport type { ConfigItemSelect, ConfigItemSelectOption } from '../types';\nimport ConfigGeneric, { type ConfigGenericProps, type ConfigGenericState } from './ConfigGeneric';\n\nconst styles: Record<string, any> = {\n fullWidth: {\n width: '100%',\n },\n noMargin: {\n '&>div': {\n marginTop: 0,\n },\n },\n icon: {\n width: 20,\n height: 20,\n marginRight: 4,\n },\n};\n\ninterface ConfigInstanceSelectProps extends ConfigGenericProps {\n schema: ConfigItemSelect;\n}\n\ninterface SelectItem {\n label: string;\n value: number | string;\n group?: boolean;\n hidden?: string | boolean;\n color?: string;\n description?: string;\n icon?: string;\n hiddenValue?: boolean;\n}\n\ninterface ConfigInstanceSelectState extends ConfigGenericState {\n selectOptions?: SelectItem[];\n}\n\nexport default class ConfigSelect extends ConfigGeneric<ConfigInstanceSelectProps, ConfigInstanceSelectState> {\n private initialValue: string | string[] = '';\n\n async componentDidMount(): Promise<void> {\n await super.componentDidMount();\n let value: string | string[] = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n if (this.props.schema.multiple) {\n if (typeof value === 'string') {\n value = [value];\n } else if (value === null || value === undefined) {\n value = [];\n }\n }\n\n const selectOptions: {\n label: string;\n value: number | string;\n group?: boolean;\n hidden?: string | boolean;\n color?: string;\n description?: string;\n icon?: string;\n hiddenValue?: boolean;\n }[] = [];\n\n for (const item of this.props.schema.options || []) {\n // if optgroup\n const groupItem: {\n items: ConfigItemSelectOption[];\n label: ioBroker.StringOrTranslated;\n value?: number | string;\n hidden?: string | boolean;\n description?: string;\n } = item as {\n items: ConfigItemSelectOption[];\n label: ioBroker.StringOrTranslated;\n value?: number | string;\n hidden?: string | boolean;\n description?: string;\n };\n if (Array.isArray(groupItem.items)) {\n const selectItem: SelectItem = {\n label: this.getText(item.label, this.props.schema.noTranslation),\n value: item.value,\n group: true,\n color: item.color,\n description: this.getText(item.description),\n };\n selectItem.hiddenValue = await this.isHidden(selectItem);\n selectOptions.push(selectItem);\n for (const it of groupItem.items) {\n const selectSubItem: SelectItem = {\n label: this.getText(it.label, this.props.schema.noTranslation),\n value: it.value,\n hidden: it.hidden,\n color: it.color,\n description: this.getText(it.description),\n icon: it.icon,\n };\n selectSubItem.hiddenValue = await this.isHidden(selectSubItem);\n selectOptions.push(selectSubItem);\n }\n } else {\n const selectItem: SelectItem = {\n label: this.getText(item.label, this.props.schema.noTranslation),\n value: item.value,\n hidden: item.hidden,\n color: item.color,\n description: this.getText(item.description),\n icon: item.icon,\n };\n selectItem.hiddenValue = await this.isHidden(selectItem);\n selectOptions.push(selectItem);\n }\n }\n\n // Report value-to-label mapping to parent table for filtering\n if (this.props.onFilterLabelUpdate && this.props.table) {\n const valueToLabel: Record<string, string> = {};\n for (const opt of selectOptions) {\n if (!opt.group && opt.value !== ConfigGeneric.DIFFERENT_VALUE) {\n valueToLabel[opt.value.toString()] = opt.label;\n }\n }\n this.props.onFilterLabelUpdate(this.props.attr, valueToLabel);\n }\n\n // if __different\n if (Array.isArray(value) && !this.props.schema.multiple) {\n this.initialValue = [...value];\n selectOptions.unshift({\n label: I18n.t(ConfigGeneric.DIFFERENT_LABEL),\n value: ConfigGeneric.DIFFERENT_VALUE,\n });\n this.setState({ value: ConfigGeneric.DIFFERENT_VALUE, selectOptions });\n } else {\n this.setState({ value, selectOptions });\n }\n }\n\n _getValue(): string | string[] {\n let value =\n this.state.value === null || this.state.value === undefined\n ? ConfigGeneric.getValue(this.props.data, this.props.attr)\n : this.state.value;\n\n if (this.props.schema.multiple) {\n if (typeof value === 'string') {\n value = [value];\n } else if (value === null || value === undefined) {\n value = [];\n }\n }\n\n return value;\n }\n\n private async isHidden(item: SelectItem): Promise<boolean> {\n // if optgroup or no hidden function\n if (!item.hidden) {\n return false;\n }\n\n if (this.props.custom) {\n return !!(await this.executeCustom(\n item.hidden,\n this.props.data,\n this.props.customObj,\n this.props.oContext.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n ));\n }\n return !!(await this.execute(\n item.hidden,\n this.props.schema.default,\n this.props.data,\n this.props.arrayIndex,\n this.props.globalData,\n ));\n }\n\n renderRadio(error: string, disabled: boolean): JSX.Element {\n const selectOptions = this.state.selectOptions.filter(it => !it.hiddenValue && !it.group);\n const value = this._getValue();\n\n return (\n <FormControl\n fullWidth\n error={!!error}\n disabled={!!disabled}\n id={`jsonSelect_${this.props.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}\n >\n {this.props.schema.label ? <FormLabel>{this.getText(this.props.schema.label)}</FormLabel> : null}\n <RadioGroup\n row={!!this.props.schema.horizontal}\n value={value === undefined || value === null ? '' : value.toString()}\n onChange={e => {\n // find the original option value to preserve its type (number vs. string)\n const opt = selectOptions.find(it => it.value.toString() === e.target.value);\n const newValue = opt ? opt.value : e.target.value;\n this.setState({ value: newValue }, () => {\n const mayBePromise = this.onChange(this.props.attr, newValue);\n if (mayBePromise instanceof Promise) {\n mayBePromise.catch(e => console.error(e));\n }\n });\n }}\n >\n {selectOptions.map((it, i) => (\n <FormControlLabel\n key={i}\n value={it.value.toString()}\n control={<Radio />}\n title={it.description || ''}\n label={\n <span style={{ display: 'flex', alignItems: 'center' }}>\n {it.icon ? (\n <Icon\n src={it.icon}\n style={styles.icon}\n />\n ) : null}\n <Typography\n component=\"span\"\n style={{ color: it.color }}\n >\n {it.label}\n </Typography>\n </span>\n }\n style={it.value === ConfigGeneric.DIFFERENT_VALUE ? { opacity: 0.5 } : {}}\n />\n ))}\n </RadioGroup>\n {this.props.schema.help ? (\n <FormHelperText>\n {this.renderHelp(\n this.props.schema.help,\n this.props.schema.helpLink,\n this.props.schema.noTranslation,\n )}\n </FormHelperText>\n ) : null}\n </FormControl>\n );\n }\n\n renderItem(error: string, disabled: boolean /* , defaultValue */): JSX.Element {\n if (!this.state.selectOptions) {\n return null;\n }\n\n if (this.props.schema.format === 'radio') {\n return this.renderRadio(error, disabled);\n }\n\n const selectOptions = this.state.selectOptions.filter(it => !it.hiddenValue);\n\n const value = this._getValue();\n\n const item = this.props.schema.multiple ? null : selectOptions.find(it => it.value == value); // let \"==\" be and not ===\n\n return (\n <FormControl\n variant=\"standard\"\n fullWidth\n sx={this.props.table !== undefined ? styles.noMargin : undefined}\n id={`jsonSelect_${this.props.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}\n >\n {this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null}\n <Select\n variant=\"standard\"\n error={!!error}\n multiple={this.props.schema.multiple}\n disabled={!!disabled}\n value={value || '_'}\n renderValue={(val: string | string[]) =>\n this.props.schema.multiple ? (\n <div style={{ display: 'flex', flexWrap: 'wrap', gap: 0.5 }}>\n {(val as string[]).map((v: string) => {\n const it = selectOptions.find(_item => _item.value === v);\n if (it || this.props.schema.showAllValues !== false) {\n const label = it?.label || v;\n return (\n <Chip\n key={v}\n label={label}\n />\n );\n }\n return null;\n })}\n </div>\n ) : item?.color ? (\n <span style={{ display: 'flex', alignItems: 'center' }}>\n {item.icon ? (\n <Icon\n src={item.icon}\n style={styles.icon}\n />\n ) : null}\n <span>\n <div style={{ color: item.color }}>{item.label ?? val}</div>\n {item.description ? (\n <div style={{ opacity: 0.7, fontStyle: 'italic', fontSize: 'smaller' }}>\n {item.description}\n </div>\n ) : null}\n </span>\n </span>\n ) : item?.label === undefined ? (\n item?.icon ? (\n <span style={{ display: 'flex', alignItems: 'center' }}>\n <Icon\n src={item.icon}\n style={styles.icon}\n />\n {val}\n </span>\n ) : (\n val\n )\n ) : (\n <span style={{ display: 'flex', alignItems: 'center' }}>\n {item.icon ? (\n <Icon\n src={item.icon}\n style={styles.icon}\n />\n ) : null}\n <span>\n <div>{item.label}</div>\n {item.description ? (\n <div style={{ opacity: 0.7, fontStyle: 'italic', fontSize: 'smaller' }}>\n {item.description}\n </div>\n ) : null}\n </span>\n </span>\n )\n }\n onChange={e => {\n this.setState({ value: e.target.value === '_' ? '' : e.target.value }, () => {\n let mayBePromise: void | Promise<void>;\n if (this.state.value === ConfigGeneric.DIFFERENT_VALUE) {\n mayBePromise = this.onChange(this.props.attr, this.initialValue);\n } else {\n mayBePromise = this.onChange(this.props.attr, this.state.value);\n }\n if (mayBePromise instanceof Promise) {\n mayBePromise.catch(e => console.error(e));\n }\n });\n }}\n >\n {selectOptions.map((it, i) => {\n if (it.group) {\n return (\n <ListSubheader\n key={i}\n style={{ color: it.color }}\n >\n <div>{it.label}</div>\n {it.description ? (\n <div style={{ opacity: 0.7, fontStyle: 'italic', fontSize: 'smaller' }}>\n {it.description}\n </div>\n ) : null}\n </ListSubheader>\n );\n }\n return (\n <MenuItem\n key={i}\n value={it.value}\n style={it.value === ConfigGeneric.DIFFERENT_VALUE ? { opacity: 0.5 } : {}}\n >\n {this.props.schema.multiple ? (\n <Checkbox\n checked={value.includes(it.value as string)}\n onClick={() => {\n const _value = JSON.parse(JSON.stringify(this._getValue()));\n const pos = value.indexOf(it.value as string);\n if (pos !== -1) {\n _value.splice(pos, 1);\n } else {\n _value.push(it.value);\n _value.sort();\n }\n this.setState({ value: _value }, () =>\n this.onChange(this.props.attr, _value),\n );\n }}\n />\n ) : null}\n {it.icon ? (\n <Icon\n src={it.icon}\n style={styles.icon}\n />\n ) : null}\n <ListItemText\n primary={it.label}\n secondary={it.description}\n slotProps={{\n secondary: {\n style: { fontSize: 'smaller', fontStyle: 'italic', opacity: 0.7 },\n },\n }}\n style={{ color: it.color }}\n />\n </MenuItem>\n );\n })}\n </Select>\n {this.props.schema.help ? (\n <FormHelperText>\n {this.renderHelp(\n this.props.schema.help,\n this.props.schema.helpLink,\n this.props.schema.noTranslation,\n )}\n </FormHelperText>\n ) : null}\n </FormControl>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ConfigSelect.js","sourceRoot":"./src/","sources":["JsonConfigComponent/ConfigSelect.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { type JSX } from 'react';\n\nimport {\n InputLabel,\n FormHelperText,\n FormControl,\n FormLabel,\n Select,\n MenuItem,\n ListSubheader,\n Chip,\n ListItemText,\n Checkbox,\n RadioGroup,\n Radio,\n FormControlLabel,\n Typography,\n} from '@mui/material';\n\nimport { I18n, Icon } from '@iobroker/adapter-react-v5';\n\nimport type { ConfigItemSelect, ConfigItemSelectOption } from '../types';\nimport ConfigGeneric, { type ConfigGenericProps, type ConfigGenericState } from './ConfigGeneric';\n\nconst styles: Record<string, any> = {\n fullWidth: {\n width: '100%',\n },\n noMargin: {\n '&>div': {\n marginTop: 0,\n },\n },\n icon: {\n width: 20,\n height: 20,\n marginRight: 4,\n },\n};\n\ninterface ConfigInstanceSelectProps extends ConfigGenericProps {\n schema: ConfigItemSelect;\n}\n\ninterface SelectItem {\n label: string;\n value: number | string;\n group?: boolean;\n hidden?: string | boolean;\n color?: string;\n description?: string;\n icon?: string;\n hiddenValue?: boolean;\n}\n\ninterface ConfigInstanceSelectState extends ConfigGenericState {\n selectOptions?: SelectItem[];\n}\n\nexport default class ConfigSelect extends ConfigGeneric<ConfigInstanceSelectProps, ConfigInstanceSelectState> {\n private initialValue: string | string[] = '';\n\n async componentDidMount(): Promise<void> {\n await super.componentDidMount();\n let value: string | string[] = ConfigGeneric.getValue(this.props.data, this.props.attr);\n\n if (this.props.schema.multiple) {\n if (typeof value === 'string') {\n value = [value];\n } else if (value === null || value === undefined) {\n value = [];\n }\n }\n\n const selectOptions: {\n label: string;\n value: number | string;\n group?: boolean;\n hidden?: string | boolean;\n color?: string;\n description?: string;\n icon?: string;\n hiddenValue?: boolean;\n }[] = [];\n\n for (const item of this.props.schema.options || []) {\n // if optgroup\n const groupItem: {\n items: ConfigItemSelectOption[];\n label: ioBroker.StringOrTranslated;\n value?: number | string;\n hidden?: string | boolean;\n description?: string;\n } = item as {\n items: ConfigItemSelectOption[];\n label: ioBroker.StringOrTranslated;\n value?: number | string;\n hidden?: string | boolean;\n description?: string;\n };\n if (Array.isArray(groupItem.items)) {\n const selectItem: SelectItem = {\n label: this.getText(item.label, this.props.schema.noTranslation),\n value: item.value,\n group: true,\n color: item.color,\n description: this.getText(item.description),\n };\n selectItem.hiddenValue = await this.isHidden(selectItem);\n selectOptions.push(selectItem);\n for (const it of groupItem.items) {\n const selectSubItem: SelectItem = {\n label: this.getText(it.label, this.props.schema.noTranslation || it.noTranslation),\n value: it.value,\n hidden: it.hidden,\n color: it.color,\n description: this.getText(it.description),\n icon: it.icon,\n };\n selectSubItem.hiddenValue = await this.isHidden(selectSubItem);\n selectOptions.push(selectSubItem);\n }\n } else {\n const selectItem: SelectItem = {\n label: this.getText(item.label, this.props.schema.noTranslation || item.noTranslation),\n value: item.value,\n hidden: item.hidden,\n color: item.color,\n description: this.getText(item.description),\n icon: item.icon,\n };\n selectItem.hiddenValue = await this.isHidden(selectItem);\n selectOptions.push(selectItem);\n }\n }\n\n // Report value-to-label mapping to parent table for filtering\n if (this.props.onFilterLabelUpdate && this.props.table) {\n const valueToLabel: Record<string, string> = {};\n for (const opt of selectOptions) {\n if (!opt.group && opt.value !== ConfigGeneric.DIFFERENT_VALUE) {\n valueToLabel[opt.value.toString()] = opt.label;\n }\n }\n this.props.onFilterLabelUpdate(this.props.attr, valueToLabel);\n }\n\n // if __different\n if (Array.isArray(value) && !this.props.schema.multiple) {\n this.initialValue = [...value];\n selectOptions.unshift({\n label: I18n.t(ConfigGeneric.DIFFERENT_LABEL),\n value: ConfigGeneric.DIFFERENT_VALUE,\n });\n this.setState({ value: ConfigGeneric.DIFFERENT_VALUE, selectOptions });\n } else {\n this.setState({ value, selectOptions });\n }\n }\n\n _getValue(): string | string[] {\n let value =\n this.state.value === null || this.state.value === undefined\n ? ConfigGeneric.getValue(this.props.data, this.props.attr)\n : this.state.value;\n\n if (this.props.schema.multiple) {\n if (typeof value === 'string') {\n value = [value];\n } else if (value === null || value === undefined) {\n value = [];\n }\n }\n\n return value;\n }\n\n private async isHidden(item: SelectItem): Promise<boolean> {\n // if optgroup or no hidden function\n if (!item.hidden) {\n return false;\n }\n\n if (this.props.custom) {\n return !!(await this.executeCustom(\n item.hidden,\n this.props.data,\n this.props.customObj,\n this.props.oContext.instanceObj,\n this.props.arrayIndex,\n this.props.globalData,\n ));\n }\n return !!(await this.execute(\n item.hidden,\n this.props.schema.default,\n this.props.data,\n this.props.arrayIndex,\n this.props.globalData,\n ));\n }\n\n renderRadio(error: string, disabled: boolean): JSX.Element {\n const selectOptions = this.state.selectOptions.filter(it => !it.hiddenValue && !it.group);\n const value = this._getValue();\n\n return (\n <FormControl\n fullWidth\n error={!!error}\n disabled={!!disabled}\n id={`jsonSelect_${this.props.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}\n >\n {this.props.schema.label ? <FormLabel>{this.getText(this.props.schema.label)}</FormLabel> : null}\n <RadioGroup\n row={!!this.props.schema.horizontal}\n value={value === undefined || value === null ? '' : value.toString()}\n onChange={e => {\n // find the original option value to preserve its type (number vs. string)\n const opt = selectOptions.find(it => it.value.toString() === e.target.value);\n const newValue = opt ? opt.value : e.target.value;\n this.setState({ value: newValue }, () => {\n const mayBePromise = this.onChange(this.props.attr, newValue);\n if (mayBePromise instanceof Promise) {\n mayBePromise.catch(e => console.error(e));\n }\n });\n }}\n >\n {selectOptions.map((it, i) => (\n <FormControlLabel\n key={i}\n value={it.value.toString()}\n control={<Radio />}\n title={it.description || ''}\n label={\n <span style={{ display: 'flex', alignItems: 'center' }}>\n {it.icon ? (\n <Icon\n src={it.icon}\n style={styles.icon}\n />\n ) : null}\n <Typography\n component=\"span\"\n style={{ color: it.color }}\n >\n {it.label}\n </Typography>\n </span>\n }\n style={it.value === ConfigGeneric.DIFFERENT_VALUE ? { opacity: 0.5 } : {}}\n />\n ))}\n </RadioGroup>\n {this.props.schema.help ? (\n <FormHelperText>\n {this.renderHelp(\n this.props.schema.help,\n this.props.schema.helpLink,\n this.props.schema.noTranslation,\n )}\n </FormHelperText>\n ) : null}\n </FormControl>\n );\n }\n\n renderItem(error: string, disabled: boolean /* , defaultValue */): JSX.Element {\n if (!this.state.selectOptions) {\n return null;\n }\n\n if (this.props.schema.format === 'radio') {\n return this.renderRadio(error, disabled);\n }\n\n const selectOptions = this.state.selectOptions.filter(it => !it.hiddenValue);\n\n const value = this._getValue();\n\n const item = this.props.schema.multiple ? null : selectOptions.find(it => it.value == value); // let \"==\" be and not ===\n\n return (\n <FormControl\n variant=\"standard\"\n fullWidth\n sx={this.props.table !== undefined ? styles.noMargin : undefined}\n id={`jsonSelect_${this.props.attr}_${this.props.index || this.props.index === 0 ? this.props.index : ''}`}\n >\n {this.props.schema.label ? <InputLabel>{this.getText(this.props.schema.label)}</InputLabel> : null}\n <Select\n variant=\"standard\"\n error={!!error}\n multiple={this.props.schema.multiple}\n disabled={!!disabled}\n value={value || '_'}\n renderValue={(val: string | string[]) =>\n this.props.schema.multiple ? (\n <div style={{ display: 'flex', flexWrap: 'wrap', gap: 0.5 }}>\n {(val as string[]).map((v: string) => {\n const it = selectOptions.find(_item => _item.value === v);\n if (it || this.props.schema.showAllValues !== false) {\n const label = it?.label || v;\n return (\n <Chip\n key={v}\n label={label}\n />\n );\n }\n return null;\n })}\n </div>\n ) : item?.color ? (\n <span style={{ display: 'flex', alignItems: 'center' }}>\n {item.icon ? (\n <Icon\n src={item.icon}\n style={styles.icon}\n />\n ) : null}\n <span>\n <div style={{ color: item.color }}>{item.label ?? val}</div>\n {item.description ? (\n <div style={{ opacity: 0.7, fontStyle: 'italic', fontSize: 'smaller' }}>\n {item.description}\n </div>\n ) : null}\n </span>\n </span>\n ) : item?.label === undefined ? (\n item?.icon ? (\n <span style={{ display: 'flex', alignItems: 'center' }}>\n <Icon\n src={item.icon}\n style={styles.icon}\n />\n {val}\n </span>\n ) : (\n val\n )\n ) : (\n <span style={{ display: 'flex', alignItems: 'center' }}>\n {item.icon ? (\n <Icon\n src={item.icon}\n style={styles.icon}\n />\n ) : null}\n <span>\n <div>{item.label}</div>\n {item.description ? (\n <div style={{ opacity: 0.7, fontStyle: 'italic', fontSize: 'smaller' }}>\n {item.description}\n </div>\n ) : null}\n </span>\n </span>\n )\n }\n onChange={e => {\n this.setState({ value: e.target.value === '_' ? '' : e.target.value }, () => {\n let mayBePromise: void | Promise<void>;\n if (this.state.value === ConfigGeneric.DIFFERENT_VALUE) {\n mayBePromise = this.onChange(this.props.attr, this.initialValue);\n } else {\n mayBePromise = this.onChange(this.props.attr, this.state.value);\n }\n if (mayBePromise instanceof Promise) {\n mayBePromise.catch(e => console.error(e));\n }\n });\n }}\n >\n {selectOptions.map((it, i) => {\n if (it.group) {\n return (\n <ListSubheader\n key={i}\n style={{ color: it.color }}\n >\n <div>{it.label}</div>\n {it.description ? (\n <div style={{ opacity: 0.7, fontStyle: 'italic', fontSize: 'smaller' }}>\n {it.description}\n </div>\n ) : null}\n </ListSubheader>\n );\n }\n return (\n <MenuItem\n key={i}\n value={it.value}\n style={it.value === ConfigGeneric.DIFFERENT_VALUE ? { opacity: 0.5 } : {}}\n >\n {this.props.schema.multiple ? (\n <Checkbox\n checked={value.includes(it.value as string)}\n onClick={() => {\n const _value = JSON.parse(JSON.stringify(this._getValue()));\n const pos = value.indexOf(it.value as string);\n if (pos !== -1) {\n _value.splice(pos, 1);\n } else {\n _value.push(it.value);\n _value.sort();\n }\n this.setState({ value: _value }, () =>\n this.onChange(this.props.attr, _value),\n );\n }}\n />\n ) : null}\n {it.icon ? (\n <Icon\n src={it.icon}\n style={styles.icon}\n />\n ) : null}\n <ListItemText\n primary={it.label}\n secondary={it.description}\n slotProps={{\n secondary: {\n style: { fontSize: 'smaller', fontStyle: 'italic', opacity: 0.7 },\n },\n }}\n style={{ color: it.color }}\n />\n </MenuItem>\n );\n })}\n </Select>\n {this.props.schema.help ? (\n <FormHelperText>\n {this.renderHelp(\n this.props.schema.help,\n this.props.schema.helpLink,\n this.props.schema.noTranslation,\n )}\n </FormHelperText>\n ) : null}\n </FormControl>\n );\n }\n}\n"]}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
+
"jc_A credential with this name already exists": "Es existiert bereits eine Berechtigung mit diesem Namen.",
|
|
3
|
+
"jc_A unique name is required": "Ein eindeutiger Name ist erforderlich.",
|
|
2
4
|
"jc_Accept license": "Lizenz akzeptieren",
|
|
3
5
|
"jc_Actions": "Aktionen",
|
|
6
|
+
"jc_Add credential": "Anmeldeinformationen hinzufügen",
|
|
4
7
|
"jc_Add row": "Zeile hinzufügen",
|
|
5
8
|
"jc_All items are filtered out": "Alle Elemente sind herausgefiltert",
|
|
6
9
|
"jc_Append": "Anhängen",
|
|
@@ -9,10 +12,12 @@
|
|
|
9
12
|
"jc_Are you sure?": "Bist du sicher?",
|
|
10
13
|
"jc_Cancel": "Abbrechen",
|
|
11
14
|
"jc_Cannot add items with set filter": "Elemente mit festgelegtem Filter können nicht hinzugefügt werden",
|
|
15
|
+
"jc_Cannot create credential: %s": "Anmeldeinformationen konnten nicht erstellt werden: %s",
|
|
12
16
|
"jc_Cannot decode license": "Lizenz kann nicht entschlüsselt werden",
|
|
13
17
|
"jc_Cannot determine position: System settings are empty and GPS detection is disabled in browser": "Position kann nicht bestimmt werden: Die Systemeinstellungen sind leer und die GPS-Erkennung ist im Browser deaktiviert",
|
|
14
18
|
"jc_Cannot read licenses: %s": "Lizenzen können nicht gelesen werden: %s",
|
|
15
19
|
"jc_Cannot retrieve options, as instance is offline": "Optionen können nicht abgerufen werden, da die Instanz offline ist",
|
|
20
|
+
"jc_Cannot save configuration because of error in configuration": "Die Konfiguration konnte aufgrund eines Fehlers nicht gespeichert werden.",
|
|
16
21
|
"jc_Cannot upload": "Kann nicht hochladen",
|
|
17
22
|
"jc_Chained certificate": "Chained Zertifikat",
|
|
18
23
|
"jc_Checked": "Geprüft",
|
|
@@ -25,9 +30,11 @@
|
|
|
25
30
|
"jc_Copied %s": "\"%s\" kopiert",
|
|
26
31
|
"jc_Copy content": "Inhalte kopieren",
|
|
27
32
|
"jc_Create": "Erstellen",
|
|
33
|
+
"jc_Credential type": "Anmeldeinformationstyp",
|
|
28
34
|
"jc_Define schedule": "Zeitplan definieren",
|
|
29
35
|
"jc_Delete": "Löschen",
|
|
30
36
|
"jc_Delete current row": "Aktuelle Zeile löschen",
|
|
37
|
+
"jc_Disable/Enable translation": "Übersetzung deaktivieren/aktivieren",
|
|
31
38
|
"jc_Discard": "Verwerfen",
|
|
32
39
|
"jc_Do not use let's encrypt": "Let's encrypt nicht verwenden",
|
|
33
40
|
"jc_Docker is not available": "Docker ist nicht verfügbar",
|
|
@@ -38,8 +45,10 @@
|
|
|
38
45
|
"jc_Expand/Collapse card": "Karte ein-/ausklappen",
|
|
39
46
|
"jc_Export configuration section": "Konfigurationsabschnitt exportieren",
|
|
40
47
|
"jc_Export data to %s file": "Daten in %s-Datei exportieren",
|
|
48
|
+
"jc_Export setting to JSON file": "Einstellungen in eine JSON-Datei exportieren",
|
|
41
49
|
"jc_Fallback custom certificates": "Benutzerdefinierte Fallback-Zertifikate",
|
|
42
50
|
"jc_File is too big. Max %sk allowed. Try use SVG.": "Datei ist zu groß. Max %sk erlaubt. Versuchen Sie, SVG zu verwenden.",
|
|
51
|
+
"jc_File will be deleted": "Die Datei wird gelöscht",
|
|
43
52
|
"jc_Filter and Data Actions": "Filter- und Datenaktionen",
|
|
44
53
|
"jc_Get %s access": "%s Zugriff erhalten",
|
|
45
54
|
"jc_If the button above does not work, you can authorize manually this app by visiting this url": "Wenn die Schaltfläche oben nicht funktioniert, können Sie diese App manuell autorisieren, indem Sie diese URL besuchen",
|
|
@@ -47,11 +56,13 @@
|
|
|
47
56
|
"jc_Import and replace configuration section": "Konfigurationsabschnitt importieren und ersetzen",
|
|
48
57
|
"jc_Import data from %s file": "Daten aus %s-Datei importieren",
|
|
49
58
|
"jc_Import from %s": "Von %s importieren",
|
|
59
|
+
"jc_Import settings from JSON file": "Einstellungen aus einer JSON-Datei importieren",
|
|
50
60
|
"jc_Instance %s is alive": "Instanz %s ist aktiv",
|
|
51
61
|
"jc_Instance %s is not alive": "Instanz %s ist nicht aktiv",
|
|
52
62
|
"jc_Invalid JSON": "Ungültiges JSON",
|
|
53
63
|
"jc_Invalid JSON file.": "Ungültige JSON-Datei.",
|
|
54
64
|
"jc_Invalid JSON format. Expected an array.": "Ungültiges JSON-Format. Array erwartet.",
|
|
65
|
+
"jc_Invalid YAML": "Ungültiges YAML",
|
|
55
66
|
"jc_JSON editor": "JSON-Editor",
|
|
56
67
|
"jc_Latitude": "Breite",
|
|
57
68
|
"jc_License %s": "Lizenz %s",
|
|
@@ -59,6 +70,7 @@
|
|
|
59
70
|
"jc_License does not exist": "Lizenz existiert nicht",
|
|
60
71
|
"jc_License expired on %s": "Lizenz am %s abgelaufen",
|
|
61
72
|
"jc_License for other product \"%s\"": "Lizenz für anderes Produkt „%s“",
|
|
73
|
+
"jc_License is for version %s, but required version is %s": "Die Lizenz gilt für Version %s, benötigt wird jedoch Version %s.",
|
|
62
74
|
"jc_License must be converted": "Die Lizenz muss auf eine neuere Version konvertiert werden. Sie können dies in Ihrem iobroker.net-Profil tun.",
|
|
63
75
|
"jc_License not found in license manager. Do you want to read licenses from iobroker.net?": "Lizenz im Lizenzmanager nicht gefunden. Möchten Sie Lizenzen von iobroker.net aktualisieren?",
|
|
64
76
|
"jc_Listen on all IPs": "Zugriff von allen IPs zulassen",
|
|
@@ -68,6 +80,7 @@
|
|
|
68
80
|
"jc_Name": "Name",
|
|
69
81
|
"jc_No one license found in license manager": "Im Lizenzmanager wurde keine Lizenz gefunden",
|
|
70
82
|
"jc_No response from admin": "Keine Antwort vom Administrator",
|
|
83
|
+
"jc_Non-allowed duplicate entry \"%s\" in column \"%s\"": "Nicht zulässiger doppelter Eintrag \"%s\" in Spalte \"%s\"",
|
|
71
84
|
"jc_OAuth Client ID": "OAuth-Client-ID",
|
|
72
85
|
"jc_OAuth Client secret": "OAuth-Client-Secret",
|
|
73
86
|
"jc_Ok": "OK",
|
|
@@ -77,6 +90,7 @@
|
|
|
77
90
|
"jc_Please confirm": "Bitte bestätigen",
|
|
78
91
|
"jc_Please create license": "Bitte erstellen Sie eine Lizenz",
|
|
79
92
|
"jc_Please enter the license": "Bitte die Lizenz eingeben",
|
|
93
|
+
"jc_Please fill in all required fields": "Bitte füllen Sie alle Pflichtfelder aus.",
|
|
80
94
|
"jc_Port could be used by %s": "Port könnte von %s verwendet werden",
|
|
81
95
|
"jc_Port is already used by %s": "Port wird bereits von %s verwendet",
|
|
82
96
|
"jc_Press ENTER Key to add new item": "Die Eingabetaste drücken, um ein neues Element hinzuzufügen",
|
|
@@ -85,8 +99,11 @@
|
|
|
85
99
|
"jc_Public certificate": "Öffentliches Zertifikat",
|
|
86
100
|
"jc_Renew %s access": "%s Zugriff erneuern",
|
|
87
101
|
"jc_Replace": "Ersetzen",
|
|
102
|
+
"jc_Request data by instance": "Daten pro Instanz anfordern",
|
|
88
103
|
"jc_Request timed out": "Zeitüberschreitung der Anforderung",
|
|
104
|
+
"jc_Result": "Ergebnis",
|
|
89
105
|
"jc_Save": "Speichern",
|
|
106
|
+
"jc_Save configuration?": "Konfiguration speichern?",
|
|
90
107
|
"jc_Serial number (UUID)": "Seriennummer (UUID)",
|
|
91
108
|
"jc_Serial number (UUID) \"%s\" in license is for other device.": "Seriennummer (UUID) „%s“ in der Lizenz gilt für ein anderes Gerät.",
|
|
92
109
|
"jc_Show/hide filter input": "Filtereingabe ein-/ausblenden",
|
|
@@ -97,6 +114,7 @@
|
|
|
97
114
|
"jc_System language": "Systemsprache",
|
|
98
115
|
"jc_Take browser position": "Position vom Browser einnehmen",
|
|
99
116
|
"jc_Take position from system settings": "Position aus den Systemeinstellungen übernehmen",
|
|
117
|
+
"jc_Template": "Vorlage",
|
|
100
118
|
"jc_Use all available let's encrypt certificates": "Alle verfügbaren Zertifikate von Let's encrypt benutzen",
|
|
101
119
|
"jc_Use system settings for position": "Systemeinstellungen für die Position verwenden",
|
|
102
120
|
"jc_Used system settings": "Systemeinstellungen",
|
|
@@ -105,6 +123,8 @@
|
|
|
105
123
|
"jc_YAML editor": "YAML-Editor",
|
|
106
124
|
"jc_Yes": "Ja",
|
|
107
125
|
"jc_You can filter entries by entering here some text": "Sie können Einträge filtern, indem Sie hier Text eingeben",
|
|
126
|
+
"jc_[JsonConfig] Failed to open JSON File": "[JsonConfig] Fehler beim Öffnen der JSON-Datei",
|
|
127
|
+
"jc_[JsonConfig] Failed to parse JSON file": "[JsonConfig] Fehler beim Parsen der JSON-Datei",
|
|
108
128
|
"jc___different__": "unterschiedlich",
|
|
109
129
|
"jc_false": "FALSCH",
|
|
110
130
|
"jc_locally": "örtlich",
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
+
"jc_A credential with this name already exists": "Ya existe una credencial con ese nombre.",
|
|
3
|
+
"jc_A unique name is required": "Se requiere un nombre único.",
|
|
2
4
|
"jc_Accept license": "Aceptar licencia",
|
|
3
5
|
"jc_Actions": "Comportamiento",
|
|
6
|
+
"jc_Add credential": "Agregar credencial",
|
|
4
7
|
"jc_Add row": "Añadir fila",
|
|
5
8
|
"jc_All items are filtered out": "Todos los elementos se filtran",
|
|
6
9
|
"jc_Append": "Adjuntar",
|
|
@@ -9,10 +12,12 @@
|
|
|
9
12
|
"jc_Are you sure?": "¿Estás seguro?",
|
|
10
13
|
"jc_Cancel": "Cancelar",
|
|
11
14
|
"jc_Cannot add items with set filter": "No se pueden agregar elementos con el filtro establecido",
|
|
15
|
+
"jc_Cannot create credential: %s": "No se puede crear la credencial: %s",
|
|
12
16
|
"jc_Cannot decode license": "No se puede decodificar la licencia",
|
|
13
17
|
"jc_Cannot determine position: System settings are empty and GPS detection is disabled in browser": "No se puede determinar la posición: la configuración del sistema está vacía y la detección de GPS está deshabilitada en el navegador",
|
|
14
18
|
"jc_Cannot read licenses: %s": "No se pueden leer licencias: %s",
|
|
15
19
|
"jc_Cannot retrieve options, as instance is offline": "No se pueden recuperar las opciones, ya que la instancia está fuera de línea",
|
|
20
|
+
"jc_Cannot save configuration because of error in configuration": "No se puede guardar la configuración debido a un error en la configuración.",
|
|
16
21
|
"jc_Cannot upload": "no se puede cargar",
|
|
17
22
|
"jc_Chained certificate": "certificado encadenado",
|
|
18
23
|
"jc_Checked": "Comprobado",
|
|
@@ -25,9 +30,11 @@
|
|
|
25
30
|
"jc_Copied %s": "Copiado \"%s\"",
|
|
26
31
|
"jc_Copy content": "Copiar contenido",
|
|
27
32
|
"jc_Create": "Crear",
|
|
33
|
+
"jc_Credential type": "Tipo de credencial",
|
|
28
34
|
"jc_Define schedule": "Definir horario",
|
|
29
35
|
"jc_Delete": "Eliminar",
|
|
30
36
|
"jc_Delete current row": "Eliminar fila actual",
|
|
37
|
+
"jc_Disable/Enable translation": "Desactivar/Activar traducción",
|
|
31
38
|
"jc_Discard": "Desechar",
|
|
32
39
|
"jc_Do not use let's encrypt": "No use vamos a cifrar",
|
|
33
40
|
"jc_Docker is not available": "Docker no está disponible",
|
|
@@ -38,8 +45,10 @@
|
|
|
38
45
|
"jc_Expand/Collapse card": "Expandir/Contraer tarjeta",
|
|
39
46
|
"jc_Export configuration section": "Exportar sección de configuración",
|
|
40
47
|
"jc_Export data to %s file": "Exportar datos al archivo %s",
|
|
48
|
+
"jc_Export setting to JSON file": "Exportar configuración a un archivo JSON",
|
|
41
49
|
"jc_Fallback custom certificates": "Certificados personalizados alternativos",
|
|
42
50
|
"jc_File is too big. Max %sk allowed. Try use SVG.": "El archivo es demasiado grande. Máximo de %sk permitido. Intenta usar SVG.",
|
|
51
|
+
"jc_File will be deleted": "El archivo será eliminado",
|
|
43
52
|
"jc_Filter and Data Actions": "Acciones de filtrado y datos",
|
|
44
53
|
"jc_Get %s access": "Obtener %s acceso",
|
|
45
54
|
"jc_If the button above does not work, you can authorize manually this app by visiting this url": "Si el botón de arriba no funciona, puedes autorizar manualmente esta aplicación visitando esta URL",
|
|
@@ -47,11 +56,13 @@
|
|
|
47
56
|
"jc_Import and replace configuration section": "Importar y reemplazar sección de configuración",
|
|
48
57
|
"jc_Import data from %s file": "Importar datos del archivo %s",
|
|
49
58
|
"jc_Import from %s": "Importar desde %s",
|
|
59
|
+
"jc_Import settings from JSON file": "Importar configuración desde un archivo JSON",
|
|
50
60
|
"jc_Instance %s is alive": "Instancia %s está vivo",
|
|
51
61
|
"jc_Instance %s is not alive": "Instancia %s no está vivo",
|
|
52
62
|
"jc_Invalid JSON": "JSON no válido",
|
|
53
63
|
"jc_Invalid JSON file.": "Archivo JSON inválido.",
|
|
54
64
|
"jc_Invalid JSON format. Expected an array.": "Formato JSON inválido. Se esperaba un array.",
|
|
65
|
+
"jc_Invalid YAML": "YAML no válido",
|
|
55
66
|
"jc_JSON editor": "editor JSON",
|
|
56
67
|
"jc_Latitude": "Latitud",
|
|
57
68
|
"jc_License %s": "Licencia %s",
|
|
@@ -59,6 +70,7 @@
|
|
|
59
70
|
"jc_License does not exist": "La licencia no existe",
|
|
60
71
|
"jc_License expired on %s": "La licencia venció el %s",
|
|
61
72
|
"jc_License for other product \"%s\"": "Licencia para otro producto \"%s\"",
|
|
73
|
+
"jc_License is for version %s, but required version is %s": "La licencia es para la versión %s, pero la versión requerida es %s.",
|
|
62
74
|
"jc_License must be converted": "La licencia debe convertirse a una versión más reciente. Puedes hacerlo en tu perfil de iobroker.net.",
|
|
63
75
|
"jc_License not found in license manager. Do you want to read licenses from iobroker.net?": "Licencia no encontrada en el administrador de licencias. ¿Quieres actualizar las licencias de iobroker.net?",
|
|
64
76
|
"jc_Listen on all IPs": "Escuche en todas las IP",
|
|
@@ -68,6 +80,7 @@
|
|
|
68
80
|
"jc_Name": "Nombre",
|
|
69
81
|
"jc_No one license found in license manager": "No se encontró ninguna licencia en el administrador de licencias",
|
|
70
82
|
"jc_No response from admin": "No hay respuesta del administrador",
|
|
83
|
+
"jc_Non-allowed duplicate entry \"%s\" in column \"%s\"": "Entrada duplicada no permitida \"%s\" en la columna \"%s\"",
|
|
71
84
|
"jc_OAuth Client ID": "ID de cliente OAuth",
|
|
72
85
|
"jc_OAuth Client secret": "Secreto de cliente OAuth",
|
|
73
86
|
"jc_Ok": "Okay",
|
|
@@ -77,6 +90,7 @@
|
|
|
77
90
|
"jc_Please confirm": "Por favor confirmar",
|
|
78
91
|
"jc_Please create license": "Por favor cree una licencia",
|
|
79
92
|
"jc_Please enter the license": "Por favor ingrese la licencia",
|
|
93
|
+
"jc_Please fill in all required fields": "Por favor, rellene todos los campos obligatorios.",
|
|
80
94
|
"jc_Port could be used by %s": "El puerto podría ser utilizado por %s",
|
|
81
95
|
"jc_Port is already used by %s": "El puerto ya está en uso por %s",
|
|
82
96
|
"jc_Press ENTER Key to add new item": "Presione la tecla ENTER para agregar un nuevo elemento",
|
|
@@ -85,8 +99,11 @@
|
|
|
85
99
|
"jc_Public certificate": "Certificado público",
|
|
86
100
|
"jc_Renew %s access": "Renovar el acceso a %s",
|
|
87
101
|
"jc_Replace": "Reemplazar",
|
|
102
|
+
"jc_Request data by instance": "Solicitar datos por instancia",
|
|
88
103
|
"jc_Request timed out": "Tiempo de espera agotado",
|
|
104
|
+
"jc_Result": "Resultado",
|
|
89
105
|
"jc_Save": "Salvar",
|
|
106
|
+
"jc_Save configuration?": "¿Guardar configuración?",
|
|
90
107
|
"jc_Serial number (UUID)": "Número de serie (UUID)",
|
|
91
108
|
"jc_Serial number (UUID) \"%s\" in license is for other device.": "El número de serie (UUID) \"%s\" en la licencia es para otro dispositivo.",
|
|
92
109
|
"jc_Show/hide filter input": "Mostrar/ocultar entrada de filtro",
|
|
@@ -97,6 +114,7 @@
|
|
|
97
114
|
"jc_System language": "Lenguaje del sistema",
|
|
98
115
|
"jc_Take browser position": "Tomar posición desde el navegador",
|
|
99
116
|
"jc_Take position from system settings": "Tomar posición desde la configuración del sistema",
|
|
117
|
+
"jc_Template": "Plantilla",
|
|
100
118
|
"jc_Use all available let's encrypt certificates": "Utilice todos los certificados let's encrypt disponibles",
|
|
101
119
|
"jc_Use system settings for position": "Usar la configuración del sistema para la posición",
|
|
102
120
|
"jc_Used system settings": "Configuraciones del sistema usadas",
|
|
@@ -105,6 +123,8 @@
|
|
|
105
123
|
"jc_YAML editor": "Editor YAML",
|
|
106
124
|
"jc_Yes": "Sí",
|
|
107
125
|
"jc_You can filter entries by entering here some text": "Puede filtrar las entradas ingresando aquí algún texto",
|
|
126
|
+
"jc_[JsonConfig] Failed to open JSON File": "[JsonConfig] Error al abrir el archivo JSON",
|
|
127
|
+
"jc_[JsonConfig] Failed to parse JSON file": "[JsonConfig] Error al analizar el archivo JSON",
|
|
108
128
|
"jc___different__": "diferente",
|
|
109
129
|
"jc_false": "FALSO",
|
|
110
130
|
"jc_locally": "en la zona",
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
+
"jc_A credential with this name already exists": "Un certificat portant ce nom existe déjà.",
|
|
3
|
+
"jc_A unique name is required": "Un nom unique est requis.",
|
|
2
4
|
"jc_Accept license": "Accepter la licence",
|
|
3
5
|
"jc_Actions": "Actes",
|
|
6
|
+
"jc_Add credential": "Ajouter un identifiant",
|
|
4
7
|
"jc_Add row": "Ajouter une rangée",
|
|
5
8
|
"jc_All items are filtered out": "Tous les éléments sont filtrés",
|
|
6
9
|
"jc_Append": "Ajouter",
|
|
@@ -9,10 +12,12 @@
|
|
|
9
12
|
"jc_Are you sure?": "Êtes-vous sûr?",
|
|
10
13
|
"jc_Cancel": "Annuler",
|
|
11
14
|
"jc_Cannot add items with set filter": "Impossible d'ajouter des éléments avec le filtre défini",
|
|
15
|
+
"jc_Cannot create credential: %s": "Impossible de créer les informations d'identification : %s",
|
|
12
16
|
"jc_Cannot decode license": "Impossible de décoder la licence",
|
|
13
17
|
"jc_Cannot determine position: System settings are empty and GPS detection is disabled in browser": "Impossible de déterminer la position : les paramètres système sont vides et la détection GPS est désactivée dans le navigateur",
|
|
14
18
|
"jc_Cannot read licenses: %s": "Impossible de lire les licences : %s",
|
|
15
19
|
"jc_Cannot retrieve options, as instance is offline": "Impossible de récupérer les options, car l'instance est hors ligne",
|
|
20
|
+
"jc_Cannot save configuration because of error in configuration": "Impossible d'enregistrer la configuration en raison d'une erreur de configuration.",
|
|
16
21
|
"jc_Cannot upload": "Impossible de télécharger",
|
|
17
22
|
"jc_Chained certificate": "Certificat chaîné",
|
|
18
23
|
"jc_Checked": "Vérifié",
|
|
@@ -25,9 +30,11 @@
|
|
|
25
30
|
"jc_Copied %s": "\"%s\" copié",
|
|
26
31
|
"jc_Copy content": "Copier le contenu",
|
|
27
32
|
"jc_Create": "Créer",
|
|
33
|
+
"jc_Credential type": "Type de justificatif d'identité",
|
|
28
34
|
"jc_Define schedule": "Définir le calendrier",
|
|
29
35
|
"jc_Delete": "Supprimer",
|
|
30
36
|
"jc_Delete current row": "Supprimer la ligne actuelle",
|
|
37
|
+
"jc_Disable/Enable translation": "Activer/Désactiver la traduction",
|
|
31
38
|
"jc_Discard": "Jeter",
|
|
32
39
|
"jc_Do not use let's encrypt": "Ne pas utiliser let's encrypt",
|
|
33
40
|
"jc_Docker is not available": "Docker n'est pas disponible",
|
|
@@ -38,8 +45,10 @@
|
|
|
38
45
|
"jc_Expand/Collapse card": "Carte Développer/Réduire",
|
|
39
46
|
"jc_Export configuration section": "Exporter la section de configuration",
|
|
40
47
|
"jc_Export data to %s file": "Exporter les données vers le fichier %s",
|
|
48
|
+
"jc_Export setting to JSON file": "Paramètres d'exportation vers un fichier JSON",
|
|
41
49
|
"jc_Fallback custom certificates": "Certificats personnalisés de secours",
|
|
42
50
|
"jc_File is too big. Max %sk allowed. Try use SVG.": "Le fichier est trop volumineux. Max %sk autorisé. Essayez d'utiliser SVG.",
|
|
51
|
+
"jc_File will be deleted": "Le fichier sera supprimé",
|
|
43
52
|
"jc_Filter and Data Actions": "Actions sur les filtres et les données",
|
|
44
53
|
"jc_Get %s access": "Obtenir l'accès %s",
|
|
45
54
|
"jc_If the button above does not work, you can authorize manually this app by visiting this url": "Si le bouton ci-dessus ne fonctionne pas, vous pouvez autoriser manuellement cette application en visitant cette URL",
|
|
@@ -47,11 +56,13 @@
|
|
|
47
56
|
"jc_Import and replace configuration section": "Importer et remplacer la section de configuration",
|
|
48
57
|
"jc_Import data from %s file": "Importer des données à partir du fichier %s",
|
|
49
58
|
"jc_Import from %s": "Importer depuis %s",
|
|
59
|
+
"jc_Import settings from JSON file": "Importer les paramètres à partir d'un fichier JSON",
|
|
50
60
|
"jc_Instance %s is alive": "L'instance %s est active",
|
|
51
61
|
"jc_Instance %s is not alive": "L'instance %s n'est pas active",
|
|
52
62
|
"jc_Invalid JSON": "JSON invalide",
|
|
53
63
|
"jc_Invalid JSON file.": "Fichier JSON invalide.",
|
|
54
64
|
"jc_Invalid JSON format. Expected an array.": "Format JSON invalide. Tableau attendu.",
|
|
65
|
+
"jc_Invalid YAML": "YAML invalide",
|
|
55
66
|
"jc_JSON editor": "Éditeur JSON",
|
|
56
67
|
"jc_Latitude": "Latitude",
|
|
57
68
|
"jc_License %s": "Licence %s",
|
|
@@ -59,6 +70,7 @@
|
|
|
59
70
|
"jc_License does not exist": "La licence n'existe pas",
|
|
60
71
|
"jc_License expired on %s": "Licence expirée le %s",
|
|
61
72
|
"jc_License for other product \"%s\"": "Licence pour un autre produit \"%s\"",
|
|
73
|
+
"jc_License is for version %s, but required version is %s": "La licence concerne la version %s, mais la version requise est %s",
|
|
62
74
|
"jc_License must be converted": "La licence doit être convertie en une version plus récente. Vous pouvez le faire dans votre profil iobroker.net.",
|
|
63
75
|
"jc_License not found in license manager. Do you want to read licenses from iobroker.net?": "Licence introuvable dans le gestionnaire de licences. Voulez-vous mettre à jour les licences depuis iobroker.net ?",
|
|
64
76
|
"jc_Listen on all IPs": "Écoutez sur toutes les adresses IP",
|
|
@@ -68,6 +80,7 @@
|
|
|
68
80
|
"jc_Name": "Nom",
|
|
69
81
|
"jc_No one license found in license manager": "Aucune licence trouvée dans le gestionnaire de licences",
|
|
70
82
|
"jc_No response from admin": "Aucune réponse de l'administrateur",
|
|
83
|
+
"jc_Non-allowed duplicate entry \"%s\" in column \"%s\"": "Entrée en double non autorisée « %s » dans la colonne « %s »",
|
|
71
84
|
"jc_OAuth Client ID": "ID client OAuth",
|
|
72
85
|
"jc_OAuth Client secret": "Secret client OAuth",
|
|
73
86
|
"jc_Ok": "D'accord",
|
|
@@ -77,6 +90,7 @@
|
|
|
77
90
|
"jc_Please confirm": "Veuillez confirmer",
|
|
78
91
|
"jc_Please create license": "Veuillez créer une licence",
|
|
79
92
|
"jc_Please enter the license": "Veuillez entrer la licence",
|
|
93
|
+
"jc_Please fill in all required fields": "Veuillez remplir tous les champs obligatoires.",
|
|
80
94
|
"jc_Port could be used by %s": "Le port pourrait être utilisé par %s",
|
|
81
95
|
"jc_Port is already used by %s": "Le port est déjà utilisé par %s",
|
|
82
96
|
"jc_Press ENTER Key to add new item": "Appuyez sur la touche ENTRÉE pour ajouter un nouvel élément",
|
|
@@ -85,8 +99,11 @@
|
|
|
85
99
|
"jc_Public certificate": "Certificat public",
|
|
86
100
|
"jc_Renew %s access": "Renouveler l'accès %s",
|
|
87
101
|
"jc_Replace": "Remplacer",
|
|
102
|
+
"jc_Request data by instance": "Demander des données par instance",
|
|
88
103
|
"jc_Request timed out": "La demande a expiré",
|
|
104
|
+
"jc_Result": "Résultat",
|
|
89
105
|
"jc_Save": "sauver",
|
|
106
|
+
"jc_Save configuration?": "Enregistrer la configuration ?",
|
|
90
107
|
"jc_Serial number (UUID)": "Numéro de série (UUID)",
|
|
91
108
|
"jc_Serial number (UUID) \"%s\" in license is for other device.": "Le numéro de série (UUID) \"%s\" dans la licence est pour un autre appareil.",
|
|
92
109
|
"jc_Show/hide filter input": "Afficher/masquer l'entrée de filtre",
|
|
@@ -97,6 +114,7 @@
|
|
|
97
114
|
"jc_System language": "Langue du système",
|
|
98
115
|
"jc_Take browser position": "Prendre position depuis le navigateur",
|
|
99
116
|
"jc_Take position from system settings": "Prendre position à partir des paramètres système",
|
|
117
|
+
"jc_Template": "Modèle",
|
|
100
118
|
"jc_Use all available let's encrypt certificates": "Utilisez tous les certificats let's encrypt disponibles",
|
|
101
119
|
"jc_Use system settings for position": "Utiliser les paramètres système pour la position",
|
|
102
120
|
"jc_Used system settings": "Paramètres système utilisés",
|
|
@@ -105,6 +123,8 @@
|
|
|
105
123
|
"jc_YAML editor": "Éditeur YAML",
|
|
106
124
|
"jc_Yes": "Oui",
|
|
107
125
|
"jc_You can filter entries by entering here some text": "Vous pouvez filtrer les entrées en saisissant ici du texte",
|
|
126
|
+
"jc_[JsonConfig] Failed to open JSON File": "[JsonConfig] Impossible d'ouvrir le fichier JSON",
|
|
127
|
+
"jc_[JsonConfig] Failed to parse JSON file": "[JsonConfig] Échec de l'analyse du fichier JSON",
|
|
108
128
|
"jc___different__": "différent",
|
|
109
129
|
"jc_false": "FAUX",
|
|
110
130
|
"jc_locally": "localement",
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
+
"jc_A credential with this name already exists": "Esiste già una credenziale con questo nome",
|
|
3
|
+
"jc_A unique name is required": "È richiesto un nome univoco",
|
|
2
4
|
"jc_Accept license": "Accetta licenza",
|
|
3
5
|
"jc_Actions": "Azioni",
|
|
6
|
+
"jc_Add credential": "Aggiungi credenziali",
|
|
4
7
|
"jc_Add row": "Aggiungi riga",
|
|
5
8
|
"jc_All items are filtered out": "Tutti gli elementi vengono filtrati",
|
|
6
9
|
"jc_Append": "Aggiungere",
|
|
@@ -9,10 +12,12 @@
|
|
|
9
12
|
"jc_Are you sure?": "Sei sicuro?",
|
|
10
13
|
"jc_Cancel": "Annulla",
|
|
11
14
|
"jc_Cannot add items with set filter": "Impossibile aggiungere elementi con il filtro impostato",
|
|
15
|
+
"jc_Cannot create credential: %s": "Impossibile creare le credenziali: %s",
|
|
12
16
|
"jc_Cannot decode license": "Impossibile decodificare la licenza",
|
|
13
17
|
"jc_Cannot determine position: System settings are empty and GPS detection is disabled in browser": "Impossibile determinare la posizione: le impostazioni di sistema sono vuote e il rilevamento GPS è disabilitato nel browser",
|
|
14
18
|
"jc_Cannot read licenses: %s": "Impossibile leggere le licenze: %s",
|
|
15
19
|
"jc_Cannot retrieve options, as instance is offline": "Impossibile recuperare le opzioni, poiché l'istanza è offline",
|
|
20
|
+
"jc_Cannot save configuration because of error in configuration": "Impossibile salvare la configurazione a causa di un errore nella configurazione",
|
|
16
21
|
"jc_Cannot upload": "Impossibile caricare",
|
|
17
22
|
"jc_Chained certificate": "Certificato incatenato",
|
|
18
23
|
"jc_Checked": "Controllato",
|
|
@@ -25,9 +30,11 @@
|
|
|
25
30
|
"jc_Copied %s": "\"%s\" copiato",
|
|
26
31
|
"jc_Copy content": "Copia contenuto",
|
|
27
32
|
"jc_Create": "Creare",
|
|
33
|
+
"jc_Credential type": "Tipo di credenziale",
|
|
28
34
|
"jc_Define schedule": "Definisci programma",
|
|
29
35
|
"jc_Delete": "Elimina",
|
|
30
36
|
"jc_Delete current row": "Elimina la riga corrente",
|
|
37
|
+
"jc_Disable/Enable translation": "Disabilita/Abilita la traduzione",
|
|
31
38
|
"jc_Discard": "Scartare",
|
|
32
39
|
"jc_Do not use let's encrypt": "Non utilizzare crittografiamo",
|
|
33
40
|
"jc_Docker is not available": "Docker non è disponibile",
|
|
@@ -38,8 +45,10 @@
|
|
|
38
45
|
"jc_Expand/Collapse card": "Espandi/Comprimi scheda",
|
|
39
46
|
"jc_Export configuration section": "Sezione di configurazione dell'esportazione",
|
|
40
47
|
"jc_Export data to %s file": "Esporta i dati nel file %s",
|
|
48
|
+
"jc_Export setting to JSON file": "Esporta le impostazioni in un file JSON",
|
|
41
49
|
"jc_Fallback custom certificates": "Certificati personalizzati di fallback",
|
|
42
50
|
"jc_File is too big. Max %sk allowed. Try use SVG.": "Il file è troppo grande. Max %sk consentito. Prova a usare SVG.",
|
|
51
|
+
"jc_File will be deleted": "Il file verrà eliminato",
|
|
43
52
|
"jc_Filter and Data Actions": "Azioni sui filtri e sui dati",
|
|
44
53
|
"jc_Get %s access": "Ottieni l'accesso %s",
|
|
45
54
|
"jc_If the button above does not work, you can authorize manually this app by visiting this url": "Se il pulsante sopra non funziona, puoi autorizzare manualmente questa app visitando questo URL",
|
|
@@ -47,11 +56,13 @@
|
|
|
47
56
|
"jc_Import and replace configuration section": "Importa e sostituisci la sezione di configurazione",
|
|
48
57
|
"jc_Import data from %s file": "Importa i dati dal file %s",
|
|
49
58
|
"jc_Import from %s": "Importa da %s",
|
|
59
|
+
"jc_Import settings from JSON file": "Importa le impostazioni dal file JSON",
|
|
50
60
|
"jc_Instance %s is alive": "Il %s dell'istanza è vivo",
|
|
51
61
|
"jc_Instance %s is not alive": "Il TESTO dell'istanza non è vivo",
|
|
52
62
|
"jc_Invalid JSON": "JSON non valido",
|
|
53
63
|
"jc_Invalid JSON file.": "File JSON non valido.",
|
|
54
64
|
"jc_Invalid JSON format. Expected an array.": "Formato JSON non valido. È previsto un array.",
|
|
65
|
+
"jc_Invalid YAML": "YAML non valido",
|
|
55
66
|
"jc_JSON editor": "Editor JSON",
|
|
56
67
|
"jc_Latitude": "Latitudine",
|
|
57
68
|
"jc_License %s": "Licenza %s",
|
|
@@ -59,6 +70,7 @@
|
|
|
59
70
|
"jc_License does not exist": "La licenza non esiste",
|
|
60
71
|
"jc_License expired on %s": "Licenza scaduta il %s",
|
|
61
72
|
"jc_License for other product \"%s\"": "Licenza per altro prodotto \"%s\"",
|
|
73
|
+
"jc_License is for version %s, but required version is %s": "La licenza è per la versione %s, ma la versione richiesta è %s",
|
|
62
74
|
"jc_License must be converted": "La licenza deve essere convertita in una versione più recente. Puoi farlo nel tuo profilo iobroker.net.",
|
|
63
75
|
"jc_License not found in license manager. Do you want to read licenses from iobroker.net?": "Licenza non trovata nel gestore delle licenze. Vuoi aggiornare le licenze da iobroker.net?",
|
|
64
76
|
"jc_Listen on all IPs": "Ascolta su tutti gli IP",
|
|
@@ -68,6 +80,7 @@
|
|
|
68
80
|
"jc_Name": "Nome",
|
|
69
81
|
"jc_No one license found in license manager": "Nessuna licenza trovata nel gestore delle licenze",
|
|
70
82
|
"jc_No response from admin": "Nessuna risposta dall'amministratore",
|
|
83
|
+
"jc_Non-allowed duplicate entry \"%s\" in column \"%s\"": "Voce duplicata non consentita \"%s\" nella colonna \"%s\"",
|
|
71
84
|
"jc_OAuth Client ID": "ID client OAuth",
|
|
72
85
|
"jc_OAuth Client secret": "Segreto del client OAuth",
|
|
73
86
|
"jc_Ok": "Ok",
|
|
@@ -77,6 +90,7 @@
|
|
|
77
90
|
"jc_Please confirm": "Si prega di confermare",
|
|
78
91
|
"jc_Please create license": "Si prega di creare la licenza",
|
|
79
92
|
"jc_Please enter the license": "Inserisci la licenza",
|
|
93
|
+
"jc_Please fill in all required fields": "Si prega di compilare tutti i campi obbligatori.",
|
|
80
94
|
"jc_Port could be used by %s": "La porta potrebbe essere utilizzata da %s",
|
|
81
95
|
"jc_Port is already used by %s": "La porta è già utilizzata da %s",
|
|
82
96
|
"jc_Press ENTER Key to add new item": "Premere il tasto INVIO per aggiungere un nuovo elemento",
|
|
@@ -85,8 +99,11 @@
|
|
|
85
99
|
"jc_Public certificate": "Certificato pubblico",
|
|
86
100
|
"jc_Renew %s access": "Rinnova l'accesso %s",
|
|
87
101
|
"jc_Replace": "Sostituire",
|
|
102
|
+
"jc_Request data by instance": "Richiedi dati per istanza",
|
|
88
103
|
"jc_Request timed out": "Tempo scaduto per la richiesta",
|
|
104
|
+
"jc_Result": "Risultato",
|
|
89
105
|
"jc_Save": "Salva",
|
|
106
|
+
"jc_Save configuration?": "Salvare la configurazione?",
|
|
90
107
|
"jc_Serial number (UUID)": "Numero di serie (UUID)",
|
|
91
108
|
"jc_Serial number (UUID) \"%s\" in license is for other device.": "Il numero di serie (UUID) \"%s\" nella licenza è per un altro dispositivo.",
|
|
92
109
|
"jc_Show/hide filter input": "Mostra/nascondi input filtro",
|
|
@@ -97,6 +114,7 @@
|
|
|
97
114
|
"jc_System language": "Linguaggio di sistema",
|
|
98
115
|
"jc_Take browser position": "Prendi posizione dal browser",
|
|
99
116
|
"jc_Take position from system settings": "Prendi posizione dalle impostazioni di sistema",
|
|
117
|
+
"jc_Template": "Modello",
|
|
100
118
|
"jc_Use all available let's encrypt certificates": "Usa tutti i certificati Let's Encrypt disponibili",
|
|
101
119
|
"jc_Use system settings for position": "Usa le impostazioni di sistema per la posizione",
|
|
102
120
|
"jc_Used system settings": "Impostazioni di sistema utilizzate",
|
|
@@ -105,6 +123,8 @@
|
|
|
105
123
|
"jc_YAML editor": "Editor YAML",
|
|
106
124
|
"jc_Yes": "SÌ",
|
|
107
125
|
"jc_You can filter entries by entering here some text": "Puoi filtrare le voci inserendo qui del testo",
|
|
126
|
+
"jc_[JsonConfig] Failed to open JSON File": "[JsonConfig] Impossibile aprire il file JSON",
|
|
127
|
+
"jc_[JsonConfig] Failed to parse JSON file": "[JsonConfig] Impossibile analizzare il file JSON",
|
|
108
128
|
"jc___different__": "diverso",
|
|
109
129
|
"jc_false": "FALSO",
|
|
110
130
|
"jc_locally": "localmente",
|