limitng 0.13.2 → 0.13.6

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.
Files changed (477) hide show
  1. package/api/globalFunctions.d.ts +41 -0
  2. package/api/globalFunctions.d.ts.map +1 -0
  3. package/api/limitng-api.d.ts +6 -0
  4. package/api/limitng-api.d.ts.map +1 -0
  5. package/api/models/enums.d.ts +117 -0
  6. package/api/models/enums.d.ts.map +1 -0
  7. package/api/models/faturalama/faturaFiltre.d.ts +51 -0
  8. package/api/models/faturalama/faturaFiltre.d.ts.map +1 -0
  9. package/api/models/fourDConstants.d.ts +81 -0
  10. package/api/models/fourDConstants.d.ts.map +1 -0
  11. package/api/models/kisisel/izin-islemleri/izinDetaylari.d.ts +25 -0
  12. package/api/models/kisisel/izin-islemleri/izinDetaylari.d.ts.map +1 -0
  13. package/api/models/kisisel/izin-islemleri/izinFiltre.d.ts +14 -0
  14. package/api/models/kisisel/izin-islemleri/izinFiltre.d.ts.map +1 -0
  15. package/api/models/kisisel/izin-islemleri/izinGuncelle.d.ts +12 -0
  16. package/api/models/kisisel/izin-islemleri/izinGuncelle.d.ts.map +1 -0
  17. package/api/models/kisisel/izin-islemleri/izinListe.d.ts +29 -0
  18. package/api/models/kisisel/izin-islemleri/izinListe.d.ts.map +1 -0
  19. package/api/models/kisisel/izin-islemleri/izinSilAlanlar.d.ts +5 -0
  20. package/api/models/kisisel/izin-islemleri/izinSilAlanlar.d.ts.map +1 -0
  21. package/api/models/kisisel/kullanici-onay-islemleri/onayDetaylari.d.ts +82 -0
  22. package/api/models/kisisel/kullanici-onay-islemleri/onayDetaylari.d.ts.map +1 -0
  23. package/api/models/kisisel/kullanici-onay-islemleri/onayFiltre.d.ts +41 -0
  24. package/api/models/kisisel/kullanici-onay-islemleri/onayFiltre.d.ts.map +1 -0
  25. package/api/models/kisisel/kullanici-onay-islemleri/onayGuncelle.d.ts +8 -0
  26. package/api/models/kisisel/kullanici-onay-islemleri/onayGuncelle.d.ts.map +1 -0
  27. package/api/models/kisisel/kullanici-onay-islemleri/onayListe.d.ts +32 -0
  28. package/api/models/kisisel/kullanici-onay-islemleri/onayListe.d.ts.map +1 -0
  29. package/api/models/kisisel/masraf-islemleri/masrafDetaylari.d.ts +57 -0
  30. package/api/models/kisisel/masraf-islemleri/masrafDetaylari.d.ts.map +1 -0
  31. package/api/models/kisisel/masraf-islemleri/masrafFiltre.d.ts +17 -0
  32. package/api/models/kisisel/masraf-islemleri/masrafFiltre.d.ts.map +1 -0
  33. package/api/models/kisisel/masraf-islemleri/masrafGuncelle.d.ts +13 -0
  34. package/api/models/kisisel/masraf-islemleri/masrafGuncelle.d.ts.map +1 -0
  35. package/api/models/kisisel/masraf-islemleri/masrafListe.d.ts +82 -0
  36. package/api/models/kisisel/masraf-islemleri/masrafListe.d.ts.map +1 -0
  37. package/api/models/kisisel/masraf-islemleri/masrafSilAlanlar.d.ts +5 -0
  38. package/api/models/kisisel/masraf-islemleri/masrafSilAlanlar.d.ts.map +1 -0
  39. package/api/models/limitng-api-models.d.ts +6 -0
  40. package/api/models/limitng-api-models.d.ts.map +1 -0
  41. package/api/models/logbook/logbook.d.ts +103 -0
  42. package/api/models/logbook/logbook.d.ts.map +1 -0
  43. package/api/models/login/login.d.ts +23 -0
  44. package/api/models/login/login.d.ts.map +1 -0
  45. package/api/models/onayBilgi.d.ts +9 -0
  46. package/api/models/onayBilgi.d.ts.map +1 -0
  47. package/api/models/onaya-gonder-sorgu/onayaGonderDetaylar.d.ts +67 -0
  48. package/api/models/onaya-gonder-sorgu/onayaGonderDetaylar.d.ts.map +1 -0
  49. package/api/models/ortak.d.ts +85 -0
  50. package/api/models/ortak.d.ts.map +1 -0
  51. package/api/models/ozet/OzetKartAlan.d.ts +16 -0
  52. package/api/models/ozet/OzetKartAlan.d.ts.map +1 -0
  53. package/api/models/ozet/ozetData.d.ts +22 -0
  54. package/api/models/ozet/ozetData.d.ts.map +1 -0
  55. package/api/models/package.json +10 -0
  56. package/api/models/planlama/kampanya/kampanyaFiltre.d.ts +17 -0
  57. package/api/models/planlama/kampanya/kampanyaFiltre.d.ts.map +1 -0
  58. package/api/models/planlama/tarife/tarifeFiltre.d.ts +20 -0
  59. package/api/models/planlama/tarife/tarifeFiltre.d.ts.map +1 -0
  60. package/api/models/public_api.d.ts +54 -0
  61. package/api/models/public_api.d.ts.map +1 -0
  62. package/api/models/raporlar/izin-raporu/izinRaporDetaylari.d.ts +15 -0
  63. package/api/models/raporlar/izin-raporu/izinRaporDetaylari.d.ts.map +1 -0
  64. package/api/models/raporlar/izin-raporu/izinRaporListe.d.ts +17 -0
  65. package/api/models/raporlar/izin-raporu/izinRaporListe.d.ts.map +1 -0
  66. package/api/models/raporlar/listeden-sec/listeSecenekler.d.ts +17 -0
  67. package/api/models/raporlar/listeden-sec/listeSecenekler.d.ts.map +1 -0
  68. package/api/models/raporlar/rapor-detay/raporDetaylari.d.ts +53 -0
  69. package/api/models/raporlar/rapor-detay/raporDetaylari.d.ts.map +1 -0
  70. package/api/models/raporlar/rapor-detay/raporSilGonderAlanlar.d.ts +9 -0
  71. package/api/models/raporlar/rapor-detay/raporSilGonderAlanlar.d.ts.map +1 -0
  72. package/api/models/raporlar/rapor-zamanlama/zamanlamaAyarlari.d.ts +46 -0
  73. package/api/models/raporlar/rapor-zamanlama/zamanlamaAyarlari.d.ts.map +1 -0
  74. package/api/models/sistem-ozet/sistemOzetData.d.ts +145 -0
  75. package/api/models/sistem-ozet/sistemOzetData.d.ts.map +1 -0
  76. package/api/models/sistem-raporlari/sistemRaporlariData.d.ts +11 -0
  77. package/api/models/sistem-raporlari/sistemRaporlariData.d.ts.map +1 -0
  78. package/api/models/tanimlama/mecra/mecraFiltre.d.ts +24 -0
  79. package/api/models/tanimlama/mecra/mecraFiltre.d.ts.map +1 -0
  80. package/api/models/tanimlama/musteri/musteriFiltre.d.ts +21 -0
  81. package/api/models/tanimlama/musteri/musteriFiltre.d.ts.map +1 -0
  82. package/api/models/tanimlama/musteri-grubu/musteriGrubuFiltre.d.ts +11 -0
  83. package/api/models/tanimlama/musteri-grubu/musteriGrubuFiltre.d.ts.map +1 -0
  84. package/api/models/tanimlama/pazarlama-sirketi/pazarlamaSirketiFiltre.d.ts +21 -0
  85. package/api/models/tanimlama/pazarlama-sirketi/pazarlamaSirketiFiltre.d.ts.map +1 -0
  86. package/api/models/tanimlama/urun/urunFiltre.d.ts +14 -0
  87. package/api/models/tanimlama/urun/urunFiltre.d.ts.map +1 -0
  88. package/api/models/teklif-siparis/teklifDetaylari.d.ts +25 -0
  89. package/api/models/teklif-siparis/teklifDetaylari.d.ts.map +1 -0
  90. package/api/models/teklif-siparis/teklifFiltre.d.ts +14 -0
  91. package/api/models/teklif-siparis/teklifFiltre.d.ts.map +1 -0
  92. package/api/models/teklif-siparis/teklifGuncelle.d.ts +12 -0
  93. package/api/models/teklif-siparis/teklifGuncelle.d.ts.map +1 -0
  94. package/api/models/teklif-siparis/teklifListe.d.ts +28 -0
  95. package/api/models/teklif-siparis/teklifListe.d.ts.map +1 -0
  96. package/api/models/teklif-siparis/teklifSilAlanlar.d.ts +5 -0
  97. package/api/models/teklif-siparis/teklifSilAlanlar.d.ts.map +1 -0
  98. package/api/models/theme/bildirimler.d.ts +31 -0
  99. package/api/models/theme/bildirimler.d.ts.map +1 -0
  100. package/api/models/timeSheet/timeSheetGirisListeler.d.ts +325 -0
  101. package/api/models/timeSheet/timeSheetGirisListeler.d.ts.map +1 -0
  102. package/api/models/timeSheet/timeSheetLog.d.ts +15 -0
  103. package/api/models/timeSheet/timeSheetLog.d.ts.map +1 -0
  104. package/api/models/timeSheet/timeSheetOzetListe.d.ts +19 -0
  105. package/api/models/timeSheet/timeSheetOzetListe.d.ts.map +1 -0
  106. package/api/models/timeSheet/timeSheetSecenekler.d.ts +29 -0
  107. package/api/models/timeSheet/timeSheetSecenekler.d.ts.map +1 -0
  108. package/api/models/xlConfig.d.ts +190 -0
  109. package/api/models/xlConfig.d.ts.map +1 -0
  110. package/api/models/xlConstants.d.ts +60 -0
  111. package/api/models/xlConstants.d.ts.map +1 -0
  112. package/api/models/xlOptions.d.ts +27 -0
  113. package/api/models/xlOptions.d.ts.map +1 -0
  114. package/api/models/xlTools.d.ts +3 -0
  115. package/api/models/xlTools.d.ts.map +1 -0
  116. package/api/package.json +10 -0
  117. package/api/public_api.d.ts +2 -0
  118. package/api/public_api.d.ts.map +1 -0
  119. package/dikey-baslikli-panel/dikey-baslikli-panel.component.d.ts +17 -0
  120. package/dikey-baslikli-panel/dikey-baslikli-panel.component.d.ts.map +1 -0
  121. package/dikey-baslikli-panel/limitng-dikey-baslikli-panel.d.ts +6 -0
  122. package/dikey-baslikli-panel/limitng-dikey-baslikli-panel.d.ts.map +1 -0
  123. package/dikey-baslikli-panel/package.json +10 -0
  124. package/dikey-baslikli-panel/public_api.d.ts +2 -0
  125. package/dikey-baslikli-panel/public_api.d.ts.map +1 -0
  126. package/directives/buyukHarf.directive/buyukHarf.directive.d.ts +17 -0
  127. package/directives/buyukHarf.directive/buyukHarf.directive.d.ts.map +1 -0
  128. package/directives/buyukHarf.directive/limitng-directives-buyukHarf.directive.d.ts +6 -0
  129. package/directives/buyukHarf.directive/limitng-directives-buyukHarf.directive.d.ts.map +1 -0
  130. package/directives/buyukHarf.directive/package.json +10 -0
  131. package/directives/buyukHarf.directive/public_api.d.ts +2 -0
  132. package/directives/buyukHarf.directive/public_api.d.ts.map +1 -0
  133. package/directives/ciftBoslukTek.directive/ciftBoslukTek.directive.d.ts +17 -0
  134. package/directives/ciftBoslukTek.directive/ciftBoslukTek.directive.d.ts.map +1 -0
  135. package/directives/ciftBoslukTek.directive/limitng-directives-ciftBoslukTek.directive.d.ts +6 -0
  136. package/directives/ciftBoslukTek.directive/limitng-directives-ciftBoslukTek.directive.d.ts.map +1 -0
  137. package/directives/ciftBoslukTek.directive/package.json +10 -0
  138. package/directives/ciftBoslukTek.directive/public_api.d.ts +2 -0
  139. package/directives/ciftBoslukTek.directive/public_api.d.ts.map +1 -0
  140. package/directives/disable.directive/disable.directive.d.ts +20 -0
  141. package/directives/disable.directive/disable.directive.d.ts.map +1 -0
  142. package/directives/disable.directive/limitng-directives-disable.directive.d.ts +6 -0
  143. package/directives/disable.directive/limitng-directives-disable.directive.d.ts.map +1 -0
  144. package/directives/disable.directive/package.json +10 -0
  145. package/directives/disable.directive/public_api.d.ts +2 -0
  146. package/directives/disable.directive/public_api.d.ts.map +1 -0
  147. package/directives/ilkHarfBuyuk.directive/ilkHarfBuyuk.directive.d.ts +17 -0
  148. package/directives/ilkHarfBuyuk.directive/ilkHarfBuyuk.directive.d.ts.map +1 -0
  149. package/directives/ilkHarfBuyuk.directive/limitng-directives-ilkHarfBuyuk.directive.d.ts +6 -0
  150. package/directives/ilkHarfBuyuk.directive/limitng-directives-ilkHarfBuyuk.directive.d.ts.map +1 -0
  151. package/directives/ilkHarfBuyuk.directive/package.json +10 -0
  152. package/directives/ilkHarfBuyuk.directive/public_api.d.ts +2 -0
  153. package/directives/ilkHarfBuyuk.directive/public_api.d.ts.map +1 -0
  154. package/directives/limitng-directives.d.ts +6 -0
  155. package/directives/limitng-directives.d.ts.map +1 -0
  156. package/directives/maksimumUzunluk.directive/limitng-directives-maksimumUzunluk.directive.d.ts +6 -0
  157. package/directives/maksimumUzunluk.directive/limitng-directives-maksimumUzunluk.directive.d.ts.map +1 -0
  158. package/directives/maksimumUzunluk.directive/maksimumUzunluk.directive.d.ts +18 -0
  159. package/directives/maksimumUzunluk.directive/maksimumUzunluk.directive.d.ts.map +1 -0
  160. package/directives/maksimumUzunluk.directive/package.json +10 -0
  161. package/directives/maksimumUzunluk.directive/public_api.d.ts +2 -0
  162. package/directives/maksimumUzunluk.directive/public_api.d.ts.map +1 -0
  163. package/directives/package.json +10 -0
  164. package/directives/public_api.d.ts +10 -0
  165. package/directives/public_api.d.ts.map +1 -0
  166. package/directives/sagSolBoslukSil.directive/limitng-directives-sagSolBoslukSil.directive.d.ts +6 -0
  167. package/directives/sagSolBoslukSil.directive/limitng-directives-sagSolBoslukSil.directive.d.ts.map +1 -0
  168. package/directives/sagSolBoslukSil.directive/package.json +10 -0
  169. package/directives/sagSolBoslukSil.directive/public_api.d.ts +2 -0
  170. package/directives/sagSolBoslukSil.directive/public_api.d.ts.map +1 -0
  171. package/directives/sagSolBoslukSil.directive/sagSolBoslukSil.directive.d.ts +17 -0
  172. package/directives/sagSolBoslukSil.directive/sagSolBoslukSil.directive.d.ts.map +1 -0
  173. package/directives/sutunGenisligi.directive/limitng-directives-sutunGenisligi.directive.d.ts +6 -0
  174. package/directives/sutunGenisligi.directive/limitng-directives-sutunGenisligi.directive.d.ts.map +1 -0
  175. package/directives/sutunGenisligi.directive/package.json +10 -0
  176. package/directives/sutunGenisligi.directive/public_api.d.ts +2 -0
  177. package/directives/sutunGenisligi.directive/public_api.d.ts.map +1 -0
  178. package/directives/sutunGenisligi.directive/sutunGenisligi.directive.d.ts +43 -0
  179. package/directives/sutunGenisligi.directive/sutunGenisligi.directive.d.ts.map +1 -0
  180. package/directives/tumBoslukSil.directive/limitng-directives-tumBoslukSil.directive.d.ts +6 -0
  181. package/directives/tumBoslukSil.directive/limitng-directives-tumBoslukSil.directive.d.ts.map +1 -0
  182. package/directives/tumBoslukSil.directive/package.json +10 -0
  183. package/directives/tumBoslukSil.directive/public_api.d.ts +2 -0
  184. package/directives/tumBoslukSil.directive/public_api.d.ts.map +1 -0
  185. package/directives/tumBoslukSil.directive/tumBoslukSil.directive.d.ts +17 -0
  186. package/directives/tumBoslukSil.directive/tumBoslukSil.directive.d.ts.map +1 -0
  187. package/directives/tumIlkHarfBuyuk.directive/limitng-directives-tumIlkHarfBuyuk.directive.d.ts +6 -0
  188. package/directives/tumIlkHarfBuyuk.directive/limitng-directives-tumIlkHarfBuyuk.directive.d.ts.map +1 -0
  189. package/directives/tumIlkHarfBuyuk.directive/package.json +10 -0
  190. package/directives/tumIlkHarfBuyuk.directive/public_api.d.ts +2 -0
  191. package/directives/tumIlkHarfBuyuk.directive/public_api.d.ts.map +1 -0
  192. package/directives/tumIlkHarfBuyuk.directive/tumIlkHarfBuyuk.directive.d.ts +17 -0
  193. package/directives/tumIlkHarfBuyuk.directive/tumIlkHarfBuyuk.directive.d.ts.map +1 -0
  194. package/esm2020/alt-buyuk-kart/alt-buyuk-kart.component.mjs +7 -7
  195. package/esm2020/alt-kucuk-kart/alt-kucuk-kart.component.mjs +7 -7
  196. package/esm2020/api/globalFunctions.mjs +448 -0
  197. package/esm2020/api/limitng-api.mjs +5 -0
  198. package/esm2020/api/models/enums.mjs +125 -0
  199. package/esm2020/api/models/faturalama/faturaFiltre.mjs +53 -0
  200. package/esm2020/api/models/fourDConstants.mjs +85 -0
  201. package/esm2020/api/models/kisisel/izin-islemleri/izinDetaylari.mjs +16 -0
  202. package/esm2020/api/models/kisisel/izin-islemleri/izinFiltre.mjs +17 -0
  203. package/esm2020/api/models/kisisel/izin-islemleri/izinGuncelle.mjs +6 -0
  204. package/esm2020/api/models/kisisel/izin-islemleri/izinListe.mjs +26 -0
  205. package/esm2020/api/models/kisisel/izin-islemleri/izinSilAlanlar.mjs +7 -0
  206. package/esm2020/api/models/kisisel/kullanici-onay-islemleri/onayDetaylari.mjs +40 -0
  207. package/esm2020/api/models/kisisel/kullanici-onay-islemleri/onayFiltre.mjs +42 -0
  208. package/esm2020/api/models/kisisel/kullanici-onay-islemleri/onayGuncelle.mjs +10 -0
  209. package/esm2020/api/models/kisisel/kullanici-onay-islemleri/onayListe.mjs +35 -0
  210. package/esm2020/api/models/kisisel/masraf-islemleri/masrafDetaylari.mjs +54 -0
  211. package/esm2020/api/models/kisisel/masraf-islemleri/masrafFiltre.mjs +20 -0
  212. package/esm2020/api/models/kisisel/masraf-islemleri/masrafGuncelle.mjs +6 -0
  213. package/esm2020/api/models/kisisel/masraf-islemleri/masrafListe.mjs +41 -0
  214. package/esm2020/api/models/kisisel/masraf-islemleri/masrafSilAlanlar.mjs +7 -0
  215. package/esm2020/api/models/limitng-api-models.mjs +5 -0
  216. package/esm2020/api/models/logbook/logbook.mjs +110 -0
  217. package/esm2020/api/models/login/login.mjs +11 -0
  218. package/esm2020/api/models/onayBilgi.mjs +9 -0
  219. package/esm2020/api/models/onaya-gonder-sorgu/onayaGonderDetaylar.mjs +56 -0
  220. package/esm2020/api/models/ortak.mjs +58 -0
  221. package/esm2020/api/models/ozet/OzetKartAlan.mjs +2 -0
  222. package/esm2020/api/models/ozet/ozetData.mjs +2 -0
  223. package/esm2020/api/models/planlama/kampanya/kampanyaFiltre.mjs +20 -0
  224. package/esm2020/api/models/planlama/tarife/tarifeFiltre.mjs +23 -0
  225. package/esm2020/api/models/public_api.mjs +66 -0
  226. package/esm2020/api/models/raporlar/izin-raporu/izinRaporDetaylari.mjs +8 -0
  227. package/esm2020/api/models/raporlar/izin-raporu/izinRaporListe.mjs +19 -0
  228. package/esm2020/api/models/raporlar/listeden-sec/listeSecenekler.mjs +19 -0
  229. package/esm2020/api/models/raporlar/rapor-detay/raporDetaylari.mjs +63 -0
  230. package/esm2020/api/models/raporlar/rapor-detay/raporSilGonderAlanlar.mjs +7 -0
  231. package/esm2020/api/models/raporlar/rapor-zamanlama/zamanlamaAyarlari.mjs +47 -0
  232. package/esm2020/api/models/sistem-ozet/sistemOzetData.mjs +172 -0
  233. package/esm2020/api/models/sistem-raporlari/sistemRaporlariData.mjs +8 -0
  234. package/esm2020/api/models/tanimlama/mecra/mecraFiltre.mjs +24 -0
  235. package/esm2020/api/models/tanimlama/musteri/musteriFiltre.mjs +24 -0
  236. package/esm2020/api/models/tanimlama/musteri-grubu/musteriGrubuFiltre.mjs +14 -0
  237. package/esm2020/api/models/tanimlama/pazarlama-sirketi/pazarlamaSirketiFiltre.mjs +22 -0
  238. package/esm2020/api/models/tanimlama/urun/urunFiltre.mjs +17 -0
  239. package/esm2020/api/models/teklif-siparis/teklifDetaylari.mjs +16 -0
  240. package/esm2020/api/models/teklif-siparis/teklifFiltre.mjs +17 -0
  241. package/esm2020/api/models/teklif-siparis/teklifGuncelle.mjs +6 -0
  242. package/esm2020/api/models/teklif-siparis/teklifListe.mjs +28 -0
  243. package/esm2020/api/models/teklif-siparis/teklifSilAlanlar.mjs +7 -0
  244. package/esm2020/api/models/theme/bildirimler.mjs +39 -0
  245. package/esm2020/api/models/timeSheet/timeSheetGirisListeler.mjs +305 -0
  246. package/esm2020/api/models/timeSheet/timeSheetLog.mjs +14 -0
  247. package/esm2020/api/models/timeSheet/timeSheetOzetListe.mjs +22 -0
  248. package/esm2020/api/models/timeSheet/timeSheetSecenekler.mjs +30 -0
  249. package/esm2020/api/models/xlConfig.mjs +411 -0
  250. package/esm2020/api/models/xlConstants.mjs +66 -0
  251. package/esm2020/api/models/xlOptions.mjs +34 -0
  252. package/esm2020/api/models/xlTools.mjs +3 -0
  253. package/esm2020/api/public_api.mjs +2 -0
  254. package/esm2020/dikey-baslikli-panel/dikey-baslikli-panel.component.mjs +39 -0
  255. package/esm2020/dikey-baslikli-panel/limitng-dikey-baslikli-panel.mjs +5 -0
  256. package/esm2020/dikey-baslikli-panel/public_api.mjs +2 -0
  257. package/esm2020/directives/buyukHarf.directive/buyukHarf.directive.mjs +40 -0
  258. package/esm2020/directives/buyukHarf.directive/limitng-directives-buyukHarf.directive.mjs +5 -0
  259. package/esm2020/directives/buyukHarf.directive/public_api.mjs +2 -0
  260. package/esm2020/directives/ciftBoslukTek.directive/ciftBoslukTek.directive.mjs +41 -0
  261. package/esm2020/directives/ciftBoslukTek.directive/limitng-directives-ciftBoslukTek.directive.mjs +5 -0
  262. package/esm2020/directives/ciftBoslukTek.directive/public_api.mjs +2 -0
  263. package/esm2020/directives/disable.directive/disable.directive.mjs +72 -0
  264. package/esm2020/directives/disable.directive/limitng-directives-disable.directive.mjs +5 -0
  265. package/esm2020/directives/disable.directive/public_api.mjs +2 -0
  266. package/esm2020/directives/ilkHarfBuyuk.directive/ilkHarfBuyuk.directive.mjs +41 -0
  267. package/esm2020/directives/ilkHarfBuyuk.directive/limitng-directives-ilkHarfBuyuk.directive.mjs +5 -0
  268. package/esm2020/directives/ilkHarfBuyuk.directive/public_api.mjs +2 -0
  269. package/esm2020/directives/limitng-directives.mjs +5 -0
  270. package/esm2020/directives/maksimumUzunluk.directive/limitng-directives-maksimumUzunluk.directive.mjs +5 -0
  271. package/esm2020/directives/maksimumUzunluk.directive/maksimumUzunluk.directive.mjs +46 -0
  272. package/esm2020/directives/maksimumUzunluk.directive/public_api.mjs +2 -0
  273. package/esm2020/directives/public_api.mjs +10 -0
  274. package/esm2020/directives/sagSolBoslukSil.directive/limitng-directives-sagSolBoslukSil.directive.mjs +5 -0
  275. package/esm2020/directives/sagSolBoslukSil.directive/public_api.mjs +2 -0
  276. package/esm2020/directives/sagSolBoslukSil.directive/sagSolBoslukSil.directive.mjs +40 -0
  277. package/esm2020/directives/sutunGenisligi.directive/limitng-directives-sutunGenisligi.directive.mjs +5 -0
  278. package/esm2020/directives/sutunGenisligi.directive/public_api.mjs +2 -0
  279. package/esm2020/directives/sutunGenisligi.directive/sutunGenisligi.directive.mjs +107 -0
  280. package/esm2020/directives/tumBoslukSil.directive/limitng-directives-tumBoslukSil.directive.mjs +5 -0
  281. package/esm2020/directives/tumBoslukSil.directive/public_api.mjs +2 -0
  282. package/esm2020/directives/tumBoslukSil.directive/tumBoslukSil.directive.mjs +41 -0
  283. package/esm2020/directives/tumIlkHarfBuyuk.directive/limitng-directives-tumIlkHarfBuyuk.directive.mjs +5 -0
  284. package/esm2020/directives/tumIlkHarfBuyuk.directive/public_api.mjs +2 -0
  285. package/esm2020/directives/tumIlkHarfBuyuk.directive/tumIlkHarfBuyuk.directive.mjs +42 -0
  286. package/esm2020/filtre-bar/filtre-bar.component.mjs +126 -0
  287. package/esm2020/filtre-bar/limitng-filtre-bar.mjs +5 -0
  288. package/esm2020/filtre-bar/public_api.mjs +2 -0
  289. package/esm2020/geri-ileri-detay/geri-ileri-detay.component.mjs +7 -7
  290. package/esm2020/geri-ileri-liste/geri-ileri-liste.component.mjs +7 -7
  291. package/esm2020/pipes/boolToPlus.pipe/boolToPlus.pipe.mjs +29 -0
  292. package/esm2020/pipes/boolToPlus.pipe/limitng-pipes-boolToPlus.pipe.mjs +5 -0
  293. package/esm2020/pipes/boolToPlus.pipe/public_api.mjs +2 -0
  294. package/esm2020/pipes/boolToPlusMinus.pipe/boolToPlusMinus.pipe.mjs +29 -0
  295. package/esm2020/pipes/boolToPlusMinus.pipe/limitng-pipes-boolToPlusMinus.pipe.mjs +5 -0
  296. package/esm2020/pipes/boolToPlusMinus.pipe/public_api.mjs +2 -0
  297. package/esm2020/pipes/dateToText.pipe/dateToText.pipe.mjs +30 -0
  298. package/esm2020/pipes/dateToText.pipe/limitng-pipes-dateToText.pipe.mjs +5 -0
  299. package/esm2020/pipes/dateToText.pipe/public_api.mjs +2 -0
  300. package/esm2020/pipes/evetHayir.pipe/evetHayir.pipe.mjs +29 -0
  301. package/esm2020/pipes/evetHayir.pipe/limitng-pipes-evetHayir.pipe.mjs +5 -0
  302. package/esm2020/pipes/evetHayir.pipe/public_api.mjs +2 -0
  303. package/esm2020/pipes/limitng-pipes.mjs +5 -0
  304. package/esm2020/pipes/public_api.mjs +5 -0
  305. package/esm2020/pipes/safe.pipe/limitng-pipes-safe.pipe.mjs +5 -0
  306. package/esm2020/pipes/safe.pipe/public_api.mjs +2 -0
  307. package/esm2020/pipes/safe.pipe/safe.pipe.mjs +40 -0
  308. package/esm2020/rapor-kart/limitng-rapor-kart.mjs +5 -0
  309. package/esm2020/rapor-kart/public_api.mjs +2 -0
  310. package/esm2020/rapor-kart/rapor-kart.component.mjs +64 -0
  311. package/esm2020/sol-buyuk-kart/sol-buyuk-kart.component.mjs +7 -7
  312. package/esm2020/sol-kucuk-kart/sol-kucuk-kart.component.mjs +7 -7
  313. package/esm2020/yatay-baslikli-panel/limitng-yatay-baslikli-panel.mjs +5 -0
  314. package/esm2020/yatay-baslikli-panel/public_api.mjs +2 -0
  315. package/esm2020/yatay-baslikli-panel/yatay-baslikli-panel.component.mjs +76 -0
  316. package/fesm2015/limitng-alt-buyuk-kart.mjs +7 -7
  317. package/fesm2015/limitng-alt-kucuk-kart.mjs +7 -7
  318. package/fesm2015/limitng-api-models.mjs +2304 -0
  319. package/fesm2015/limitng-api-models.mjs.map +1 -0
  320. package/fesm2015/limitng-api.mjs +578 -0
  321. package/fesm2015/limitng-api.mjs.map +1 -0
  322. package/fesm2015/limitng-dikey-baslikli-panel.mjs +46 -0
  323. package/fesm2015/limitng-dikey-baslikli-panel.mjs.map +1 -0
  324. package/fesm2015/limitng-directives-buyukHarf.directive.mjs +47 -0
  325. package/fesm2015/limitng-directives-buyukHarf.directive.mjs.map +1 -0
  326. package/fesm2015/limitng-directives-ciftBoslukTek.directive.mjs +48 -0
  327. package/fesm2015/limitng-directives-ciftBoslukTek.directive.mjs.map +1 -0
  328. package/fesm2015/limitng-directives-disable.directive.mjs +79 -0
  329. package/fesm2015/limitng-directives-disable.directive.mjs.map +1 -0
  330. package/fesm2015/limitng-directives-ilkHarfBuyuk.directive.mjs +48 -0
  331. package/fesm2015/limitng-directives-ilkHarfBuyuk.directive.mjs.map +1 -0
  332. package/fesm2015/limitng-directives-maksimumUzunluk.directive.mjs +53 -0
  333. package/fesm2015/limitng-directives-maksimumUzunluk.directive.mjs.map +1 -0
  334. package/fesm2015/limitng-directives-sagSolBoslukSil.directive.mjs +47 -0
  335. package/fesm2015/limitng-directives-sagSolBoslukSil.directive.mjs.map +1 -0
  336. package/fesm2015/limitng-directives-sutunGenisligi.directive.mjs +114 -0
  337. package/fesm2015/limitng-directives-sutunGenisligi.directive.mjs.map +1 -0
  338. package/fesm2015/limitng-directives-tumBoslukSil.directive.mjs +48 -0
  339. package/fesm2015/limitng-directives-tumBoslukSil.directive.mjs.map +1 -0
  340. package/fesm2015/limitng-directives-tumIlkHarfBuyuk.directive.mjs +49 -0
  341. package/fesm2015/limitng-directives-tumIlkHarfBuyuk.directive.mjs.map +1 -0
  342. package/fesm2015/limitng-directives.mjs +450 -0
  343. package/fesm2015/limitng-directives.mjs.map +1 -0
  344. package/fesm2015/limitng-filtre-bar.mjs +133 -0
  345. package/fesm2015/limitng-filtre-bar.mjs.map +1 -0
  346. package/fesm2015/limitng-geri-ileri-detay.mjs +7 -7
  347. package/fesm2015/limitng-geri-ileri-liste.mjs +7 -7
  348. package/fesm2015/limitng-pipes-boolToPlus.pipe.mjs +36 -0
  349. package/fesm2015/limitng-pipes-boolToPlus.pipe.mjs.map +1 -0
  350. package/fesm2015/limitng-pipes-boolToPlusMinus.pipe.mjs +36 -0
  351. package/fesm2015/limitng-pipes-boolToPlusMinus.pipe.mjs.map +1 -0
  352. package/fesm2015/limitng-pipes-dateToText.pipe.mjs +37 -0
  353. package/fesm2015/limitng-pipes-dateToText.pipe.mjs.map +1 -0
  354. package/fesm2015/limitng-pipes-evetHayir.pipe.mjs +36 -0
  355. package/fesm2015/limitng-pipes-evetHayir.pipe.mjs.map +1 -0
  356. package/fesm2015/limitng-pipes-safe.pipe.mjs +47 -0
  357. package/fesm2015/limitng-pipes-safe.pipe.mjs.map +1 -0
  358. package/fesm2015/limitng-pipes.mjs +129 -0
  359. package/fesm2015/limitng-pipes.mjs.map +1 -0
  360. package/fesm2015/limitng-rapor-kart.mjs +80 -0
  361. package/fesm2015/limitng-rapor-kart.mjs.map +1 -0
  362. package/fesm2015/limitng-sol-buyuk-kart.mjs +7 -7
  363. package/fesm2015/limitng-sol-kucuk-kart.mjs +7 -7
  364. package/fesm2015/limitng-yatay-baslikli-panel.mjs +83 -0
  365. package/fesm2015/limitng-yatay-baslikli-panel.mjs.map +1 -0
  366. package/fesm2020/limitng-alt-buyuk-kart.mjs +7 -7
  367. package/fesm2020/limitng-alt-kucuk-kart.mjs +7 -7
  368. package/fesm2020/limitng-api-models.mjs +2304 -0
  369. package/fesm2020/limitng-api-models.mjs.map +1 -0
  370. package/fesm2020/limitng-api.mjs +578 -0
  371. package/fesm2020/limitng-api.mjs.map +1 -0
  372. package/fesm2020/limitng-dikey-baslikli-panel.mjs +46 -0
  373. package/fesm2020/limitng-dikey-baslikli-panel.mjs.map +1 -0
  374. package/fesm2020/limitng-directives-buyukHarf.directive.mjs +47 -0
  375. package/fesm2020/limitng-directives-buyukHarf.directive.mjs.map +1 -0
  376. package/fesm2020/limitng-directives-ciftBoslukTek.directive.mjs +48 -0
  377. package/fesm2020/limitng-directives-ciftBoslukTek.directive.mjs.map +1 -0
  378. package/fesm2020/limitng-directives-disable.directive.mjs +79 -0
  379. package/fesm2020/limitng-directives-disable.directive.mjs.map +1 -0
  380. package/fesm2020/limitng-directives-ilkHarfBuyuk.directive.mjs +48 -0
  381. package/fesm2020/limitng-directives-ilkHarfBuyuk.directive.mjs.map +1 -0
  382. package/fesm2020/limitng-directives-maksimumUzunluk.directive.mjs +53 -0
  383. package/fesm2020/limitng-directives-maksimumUzunluk.directive.mjs.map +1 -0
  384. package/fesm2020/limitng-directives-sagSolBoslukSil.directive.mjs +47 -0
  385. package/fesm2020/limitng-directives-sagSolBoslukSil.directive.mjs.map +1 -0
  386. package/fesm2020/limitng-directives-sutunGenisligi.directive.mjs +114 -0
  387. package/fesm2020/limitng-directives-sutunGenisligi.directive.mjs.map +1 -0
  388. package/fesm2020/limitng-directives-tumBoslukSil.directive.mjs +48 -0
  389. package/fesm2020/limitng-directives-tumBoslukSil.directive.mjs.map +1 -0
  390. package/fesm2020/limitng-directives-tumIlkHarfBuyuk.directive.mjs +49 -0
  391. package/fesm2020/limitng-directives-tumIlkHarfBuyuk.directive.mjs.map +1 -0
  392. package/fesm2020/limitng-directives.mjs +450 -0
  393. package/fesm2020/limitng-directives.mjs.map +1 -0
  394. package/fesm2020/limitng-filtre-bar.mjs +133 -0
  395. package/fesm2020/limitng-filtre-bar.mjs.map +1 -0
  396. package/fesm2020/limitng-geri-ileri-detay.mjs +7 -7
  397. package/fesm2020/limitng-geri-ileri-liste.mjs +7 -7
  398. package/fesm2020/limitng-pipes-boolToPlus.pipe.mjs +36 -0
  399. package/fesm2020/limitng-pipes-boolToPlus.pipe.mjs.map +1 -0
  400. package/fesm2020/limitng-pipes-boolToPlusMinus.pipe.mjs +36 -0
  401. package/fesm2020/limitng-pipes-boolToPlusMinus.pipe.mjs.map +1 -0
  402. package/fesm2020/limitng-pipes-dateToText.pipe.mjs +37 -0
  403. package/fesm2020/limitng-pipes-dateToText.pipe.mjs.map +1 -0
  404. package/fesm2020/limitng-pipes-evetHayir.pipe.mjs +36 -0
  405. package/fesm2020/limitng-pipes-evetHayir.pipe.mjs.map +1 -0
  406. package/fesm2020/limitng-pipes-safe.pipe.mjs +47 -0
  407. package/fesm2020/limitng-pipes-safe.pipe.mjs.map +1 -0
  408. package/fesm2020/limitng-pipes.mjs +129 -0
  409. package/fesm2020/limitng-pipes.mjs.map +1 -0
  410. package/fesm2020/limitng-rapor-kart.mjs +80 -0
  411. package/fesm2020/limitng-rapor-kart.mjs.map +1 -0
  412. package/fesm2020/limitng-sol-buyuk-kart.mjs +7 -7
  413. package/fesm2020/limitng-sol-kucuk-kart.mjs +7 -7
  414. package/fesm2020/limitng-yatay-baslikli-panel.mjs +83 -0
  415. package/fesm2020/limitng-yatay-baslikli-panel.mjs.map +1 -0
  416. package/filtre-bar/filtre-bar.component.d.ts +36 -0
  417. package/filtre-bar/filtre-bar.component.d.ts.map +1 -0
  418. package/filtre-bar/limitng-filtre-bar.d.ts +6 -0
  419. package/filtre-bar/limitng-filtre-bar.d.ts.map +1 -0
  420. package/filtre-bar/package.json +10 -0
  421. package/filtre-bar/public_api.d.ts +2 -0
  422. package/filtre-bar/public_api.d.ts.map +1 -0
  423. package/package.json +1 -1
  424. package/pipes/boolToPlus.pipe/boolToPlus.pipe.d.ts +13 -0
  425. package/pipes/boolToPlus.pipe/boolToPlus.pipe.d.ts.map +1 -0
  426. package/pipes/boolToPlus.pipe/limitng-pipes-boolToPlus.pipe.d.ts +6 -0
  427. package/pipes/boolToPlus.pipe/limitng-pipes-boolToPlus.pipe.d.ts.map +1 -0
  428. package/pipes/boolToPlus.pipe/package.json +10 -0
  429. package/pipes/boolToPlus.pipe/public_api.d.ts +2 -0
  430. package/pipes/boolToPlus.pipe/public_api.d.ts.map +1 -0
  431. package/pipes/boolToPlusMinus.pipe/boolToPlusMinus.pipe.d.ts +13 -0
  432. package/pipes/boolToPlusMinus.pipe/boolToPlusMinus.pipe.d.ts.map +1 -0
  433. package/pipes/boolToPlusMinus.pipe/limitng-pipes-boolToPlusMinus.pipe.d.ts +6 -0
  434. package/pipes/boolToPlusMinus.pipe/limitng-pipes-boolToPlusMinus.pipe.d.ts.map +1 -0
  435. package/pipes/boolToPlusMinus.pipe/package.json +10 -0
  436. package/pipes/boolToPlusMinus.pipe/public_api.d.ts +2 -0
  437. package/pipes/boolToPlusMinus.pipe/public_api.d.ts.map +1 -0
  438. package/pipes/dateToText.pipe/dateToText.pipe.d.ts +13 -0
  439. package/pipes/dateToText.pipe/dateToText.pipe.d.ts.map +1 -0
  440. package/pipes/dateToText.pipe/limitng-pipes-dateToText.pipe.d.ts +6 -0
  441. package/pipes/dateToText.pipe/limitng-pipes-dateToText.pipe.d.ts.map +1 -0
  442. package/pipes/dateToText.pipe/package.json +10 -0
  443. package/pipes/dateToText.pipe/public_api.d.ts +2 -0
  444. package/pipes/dateToText.pipe/public_api.d.ts.map +1 -0
  445. package/pipes/evetHayir.pipe/evetHayir.pipe.d.ts +13 -0
  446. package/pipes/evetHayir.pipe/evetHayir.pipe.d.ts.map +1 -0
  447. package/pipes/evetHayir.pipe/limitng-pipes-evetHayir.pipe.d.ts +6 -0
  448. package/pipes/evetHayir.pipe/limitng-pipes-evetHayir.pipe.d.ts.map +1 -0
  449. package/pipes/evetHayir.pipe/package.json +10 -0
  450. package/pipes/evetHayir.pipe/public_api.d.ts +2 -0
  451. package/pipes/evetHayir.pipe/public_api.d.ts.map +1 -0
  452. package/pipes/limitng-pipes.d.ts +6 -0
  453. package/pipes/limitng-pipes.d.ts.map +1 -0
  454. package/pipes/package.json +10 -0
  455. package/pipes/public_api.d.ts +5 -0
  456. package/pipes/public_api.d.ts.map +1 -0
  457. package/pipes/safe.pipe/limitng-pipes-safe.pipe.d.ts +6 -0
  458. package/pipes/safe.pipe/limitng-pipes-safe.pipe.d.ts.map +1 -0
  459. package/pipes/safe.pipe/package.json +10 -0
  460. package/pipes/safe.pipe/public_api.d.ts +2 -0
  461. package/pipes/safe.pipe/public_api.d.ts.map +1 -0
  462. package/pipes/safe.pipe/safe.pipe.d.ts +16 -0
  463. package/pipes/safe.pipe/safe.pipe.d.ts.map +1 -0
  464. package/rapor-kart/limitng-rapor-kart.d.ts +6 -0
  465. package/rapor-kart/limitng-rapor-kart.d.ts.map +1 -0
  466. package/rapor-kart/package.json +10 -0
  467. package/rapor-kart/public_api.d.ts +2 -0
  468. package/rapor-kart/public_api.d.ts.map +1 -0
  469. package/rapor-kart/rapor-kart.component.d.ts +30 -0
  470. package/rapor-kart/rapor-kart.component.d.ts.map +1 -0
  471. package/yatay-baslikli-panel/limitng-yatay-baslikli-panel.d.ts +6 -0
  472. package/yatay-baslikli-panel/limitng-yatay-baslikli-panel.d.ts.map +1 -0
  473. package/yatay-baslikli-panel/package.json +10 -0
  474. package/yatay-baslikli-panel/public_api.d.ts +2 -0
  475. package/yatay-baslikli-panel/public_api.d.ts.map +1 -0
  476. package/yatay-baslikli-panel/yatay-baslikli-panel.component.d.ts +29 -0
  477. package/yatay-baslikli-panel/yatay-baslikli-panel.component.d.ts.map +1 -0
@@ -0,0 +1,448 @@
1
+ import { MecraTurleri, MecraTurleriStr } from './models/enums';
2
+ export class GlobalFunctions {
3
+ static shadeColor(color, percent) {
4
+ let R = parseInt(color.substring(1, 3), 16);
5
+ let G = parseInt(color.substring(3, 5), 16);
6
+ let B = parseInt(color.substring(5, 7), 16);
7
+ R = parseInt((R * (100 + percent) / 100).toString(), 0);
8
+ G = parseInt((G * (100 + percent) / 100).toString(), 0);
9
+ B = parseInt((B * (100 + percent) / 100).toString(), 0);
10
+ R = (R < 255) ? R : 255;
11
+ G = (G < 255) ? G : 255;
12
+ B = (B < 255) ? B : 255;
13
+ const RR = ((R.toString(16).length === 1) ? '0' + R.toString(16) : R.toString(16));
14
+ const GG = ((G.toString(16).length === 1) ? '0' + G.toString(16) : G.toString(16));
15
+ const BB = ((B.toString(16).length === 1) ? '0' + B.toString(16) : B.toString(16));
16
+ return '#' + RR + GG + BB;
17
+ }
18
+ static yarimSaateYuvarla(value, stepParam) {
19
+ const step = stepParam || (stepParam = 1.0);
20
+ const inv = 1.0 / step;
21
+ return Math.round(value * inv) / inv;
22
+ }
23
+ static evenRound(num, decimalPlaces) {
24
+ const d = decimalPlaces || 0;
25
+ const m = Math.pow(10, d);
26
+ const n = +(d ? num * m : num).toFixed(8); // Avoid rounding errors
27
+ const i = Math.floor(n);
28
+ const f = n - i;
29
+ const e = 1e-8; // Allow for rounding errors in f
30
+ const r = (f > 0.5 - e && f < 0.5 + e) ? ((i % 2 === 0) ? i : i + 1) : Math.round(n);
31
+ return d ? r / m : r;
32
+ }
33
+ static roundIkiHane(param) {
34
+ return Math.floor(param * 100) / 100;
35
+ }
36
+ static ikiSayiFark(param1, param2) {
37
+ return Math.round((param1 - param2) * 100) / 100;
38
+ }
39
+ static ikiSayiTopla(param1, param2) {
40
+ return Math.round((param1 + param2) * 100) / 100;
41
+ }
42
+ static strToNumber(metin) {
43
+ let str = metin;
44
+ str = str.split(',').join('.');
45
+ const regex = /[^\d.-]/g;
46
+ str = str.replace(regex, '');
47
+ const arr = str.split('.');
48
+ if (arr.length > 2) { // Birden çok nokta varsa
49
+ const son = arr.pop();
50
+ str = arr.join('') + '.' + son;
51
+ }
52
+ return Number(str);
53
+ }
54
+ static sutunStrVer(genislik) {
55
+ if (genislik < 576) {
56
+ return 'xs';
57
+ }
58
+ if (genislik < 768) {
59
+ return 'sm';
60
+ }
61
+ if (genislik < 992) {
62
+ return 'md';
63
+ }
64
+ if (genislik < 1200) {
65
+ return 'lg';
66
+ }
67
+ return 'xl';
68
+ }
69
+ static sutunGenNoVer(genislik) {
70
+ if (genislik < 576) {
71
+ return 1;
72
+ }
73
+ if (genislik < 768) {
74
+ return 2;
75
+ }
76
+ if (genislik < 992) {
77
+ return 3;
78
+ }
79
+ if (genislik < 1200) {
80
+ return 4;
81
+ }
82
+ return 5;
83
+ }
84
+ static dateToText(tarih) {
85
+ if ((tarih !== undefined) && (tarih !== null)) {
86
+ return tarih.getDate().toString() + '.' + (tarih.getMonth() + 1).toString() + '.' + tarih.getFullYear().toString();
87
+ }
88
+ else {
89
+ return '';
90
+ }
91
+ }
92
+ static ayIlkGun(ay, yil) {
93
+ return new Date(yil, ay - 1);
94
+ }
95
+ static aySonGun(ay, yil) {
96
+ return new Date(yil, ay, 0);
97
+ }
98
+ static JSONDateToDate(tarih) {
99
+ if ((tarih !== undefined) && (tarih !== null)) {
100
+ const temp = tarih.toString();
101
+ if (temp !== '0000-00-00') {
102
+ return new Date(temp);
103
+ }
104
+ else {
105
+ return null;
106
+ }
107
+ }
108
+ else {
109
+ return null;
110
+ }
111
+ }
112
+ static ayAdiVer(ayNo) {
113
+ switch (ayNo) {
114
+ case 1:
115
+ return 'Ocak';
116
+ case 2:
117
+ return 'Şubat';
118
+ case 3:
119
+ return 'Mart';
120
+ case 4:
121
+ return 'Nisan';
122
+ case 5:
123
+ return 'Mayıs';
124
+ case 6:
125
+ return 'Haziran';
126
+ case 7:
127
+ return 'Temmuz';
128
+ case 8:
129
+ return 'Ağustos';
130
+ case 9:
131
+ return 'Eylül';
132
+ case 10:
133
+ return 'Ekim';
134
+ case 11:
135
+ return 'Kasım';
136
+ case 12:
137
+ return 'Aralık';
138
+ default: {
139
+ return '';
140
+ }
141
+ }
142
+ }
143
+ static ayAdiVerKisa(ayNo) {
144
+ switch (ayNo) {
145
+ case 1:
146
+ return 'Oca';
147
+ case 2:
148
+ return 'Şub';
149
+ case 3:
150
+ return 'Mar';
151
+ case 4:
152
+ return 'Nis';
153
+ case 5:
154
+ return 'May';
155
+ case 6:
156
+ return 'Haz';
157
+ case 7:
158
+ return 'Tem';
159
+ case 8:
160
+ return 'Ağu';
161
+ case 9:
162
+ return 'Eyl';
163
+ case 10:
164
+ return 'Eki';
165
+ case 11:
166
+ return 'Kas';
167
+ case 12:
168
+ return 'Ara';
169
+ default: {
170
+ return '';
171
+ }
172
+ }
173
+ }
174
+ static ayNoVer(ay) {
175
+ switch (ay) {
176
+ case 'Oc':
177
+ return 1;
178
+ case 'Şu':
179
+ return 2;
180
+ case 'Ma':
181
+ return 3;
182
+ case 'Ni':
183
+ return 4;
184
+ case 'My':
185
+ return 5;
186
+ case 'Ha':
187
+ return 6;
188
+ case 'Te':
189
+ return 7;
190
+ case 'Ağ':
191
+ return 8;
192
+ case 'Ey':
193
+ return 9;
194
+ case 'Ek':
195
+ return 10;
196
+ case 'Ka':
197
+ return 11;
198
+ case 'Ar':
199
+ return 12;
200
+ default: {
201
+ return 0;
202
+ }
203
+ }
204
+ }
205
+ static gunAdiVer(gunNo) {
206
+ switch (gunNo) {
207
+ case 1:
208
+ return 'Pazartesi';
209
+ case 2:
210
+ return 'Salı';
211
+ case 3:
212
+ return 'Çarşamba';
213
+ case 4:
214
+ return 'Perşembe';
215
+ case 5:
216
+ return 'Cuma';
217
+ case 6:
218
+ return 'Cumartesi';
219
+ case 0:
220
+ return 'Pazar';
221
+ default: {
222
+ return '';
223
+ }
224
+ }
225
+ }
226
+ static gunArttirAzalt(tarih, gunSayisi) {
227
+ return new Date(tarih.getTime() + gunSayisi * 24 * 60 * 60 * 1000);
228
+ }
229
+ static tarihParamToDate(param) {
230
+ let tarih = new Date();
231
+ if (param !== null) {
232
+ const tarihArr = param.split('-');
233
+ if (tarihArr.length > 2) {
234
+ const gun = Number(tarihArr[0]);
235
+ const ay = Number(tarihArr[1]) - 1;
236
+ const yil = Number(tarihArr[2]);
237
+ tarih = new Date(yil, ay, gun);
238
+ }
239
+ }
240
+ return tarih;
241
+ }
242
+ static dateToTarihParam(param) {
243
+ if (param !== null) {
244
+ const gun = param.getDate();
245
+ const ay = param.getMonth() + 1;
246
+ const yil = param.getFullYear();
247
+ return gun.toString() + '-' + ay.toString() + '-' + yil.toString();
248
+ }
249
+ else {
250
+ return '';
251
+ }
252
+ }
253
+ static getFileExtension(file) {
254
+ return '.' + file.name.split('.').pop();
255
+ }
256
+ static hexToRGBA(hex, alpha) {
257
+ // console.log(hex);
258
+ const r = parseInt(hex.slice(1, 3), 16);
259
+ const g = parseInt(hex.slice(3, 5), 16);
260
+ const b = parseInt(hex.slice(5, 7), 16);
261
+ // return r + ',' + g + ',' + b;
262
+ if (alpha) {
263
+ return `rgba(${r}, ${g}, ${b}, ${alpha})`;
264
+ }
265
+ else {
266
+ return `rgba(${r}, ${g}, ${b})`;
267
+ }
268
+ }
269
+ static colorNameToHex(color) {
270
+ const colors = {
271
+ aliceblue: '#f0f8ff', antiquewhite: '#faebd7', aqua: '#00ffff', aquamarine: '#7fffd4', azure: '#f0ffff',
272
+ beige: '#f5f5dc', bisque: '#ffe4c4', black: '#000000', blanchedalmond: '#ffebcd', blue: '#0000ff', blueviolet: '#8a2be2', brown: '#a52a2a', burlywood: '#deb887',
273
+ cadetblue: '#5f9ea0', chartreuse: '#7fff00', chocolate: '#d2691e', coral: '#ff7f50', cornflowerblue: '#6495ed', cornsilk: '#fff8dc', crimson: '#dc143c', cyan: '#00ffff',
274
+ darkblue: '#00008b', darkcyan: '#008b8b', darkgoldenrod: '#b8860b', darkgray: '#a9a9a9', darkgreen: '#006400', darkkhaki: '#bdb76b', darkmagenta: '#8b008b', darkolivegreen: '#556b2f',
275
+ darkorange: '#ff8c00', darkorchid: '#9932cc', darkred: '#8b0000', darksalmon: '#e9967a', darkseagreen: '#8fbc8f', darkslateblue: '#483d8b', darkslategray: '#2f4f4f', darkturquoise: '#00ced1',
276
+ darkviolet: '#9400d3', deeppink: '#ff1493', deepskyblue: '#00bfff', dimgray: '#696969', dodgerblue: '#1e90ff',
277
+ firebrick: '#b22222', floralwhite: '#fffaf0', forestgreen: '#228b22', fuchsia: '#ff00ff',
278
+ gainsboro: '#dcdcdc', ghostwhite: '#f8f8ff', gold: '#ffd700', goldenrod: '#daa520', gray: '#808080', green: '#008000', greenyellow: '#adff2f',
279
+ honeydew: '#f0fff0', hotpink: '#ff69b4',
280
+ indianred: '#cd5c5c', indigo: '#4b0082', ivory: '#fffff0', khaki: '#f0e68c',
281
+ lavender: '#e6e6fa', lavenderblush: '#fff0f5', lawngreen: '#7cfc00', lemonchiffon: '#fffacd', lightblue: '#add8e6', lightcoral: '#f08080', lightcyan: '#e0ffff', lightgoldenrodyellow: '#fafad2',
282
+ lightgrey: '#d3d3d3', lightgreen: '#90ee90', lightpink: '#ffb6c1', lightsalmon: '#ffa07a', lightseagreen: '#20b2aa', lightskyblue: '#87cefa', lightslategray: '#778899', lightsteelblue: '#b0c4de',
283
+ lightyellow: '#ffffe0', lime: '#00ff00', limegreen: '#32cd32', linen: '#faf0e6',
284
+ magenta: '#ff00ff', maroon: '#800000', mediumaquamarine: '#66cdaa', mediumblue: '#0000cd', mediumorchid: '#ba55d3', mediumpurple: '#9370d8', mediumseagreen: '#3cb371', mediumslateblue: '#7b68ee',
285
+ mediumspringgreen: '#00fa9a', mediumturquoise: '#48d1cc', mediumvioletred: '#c71585', midnightblue: '#191970', mintcream: '#f5fffa', mistyrose: '#ffe4e1', moccasin: '#ffe4b5',
286
+ navajowhite: '#ffdead', navy: '#000080',
287
+ oldlace: '#fdf5e6', olive: '#808000', olivedrab: '#6b8e23', orange: '#ffa500', orangered: '#ff4500', orchid: '#da70d6',
288
+ palegoldenrod: '#eee8aa', palegreen: '#98fb98', paleturquoise: '#afeeee', palevioletred: '#d87093', papayawhip: '#ffefd5', peachpuff: '#ffdab9', peru: '#cd853f', pink: '#ffc0cb', plum: '#dda0dd', powderblue: '#b0e0e6', purple: '#800080',
289
+ rebeccapurple: '#663399', red: '#ff0000', rosybrown: '#bc8f8f', royalblue: '#4169e1',
290
+ saddlebrown: '#8b4513', salmon: '#fa8072', sandybrown: '#f4a460', seagreen: '#2e8b57', seashell: '#fff5ee', sienna: '#a0522d', silver: '#c0c0c0', skyblue: '#87ceeb', slateblue: '#6a5acd', slategray: '#708090', snow: '#fffafa', springgreen: '#00ff7f', steelblue: '#4682b4',
291
+ tan: '#d2b48c', teal: '#008080', thistle: '#d8bfd8', tomato: '#ff6347', turquoise: '#40e0d0',
292
+ violet: '#ee82ee',
293
+ wheat: '#f5deb3', white: '#ffffff', whitesmoke: '#f5f5f5',
294
+ yellow: '#ffff00', yellowgreen: '#9acd32'
295
+ };
296
+ if (typeof colors[color.toLowerCase()] !== 'undefined') {
297
+ return colors[color.toLowerCase()];
298
+ }
299
+ return color;
300
+ }
301
+ static getFilenameFromContentDisposition(contentDisposition) {
302
+ const regex = /filename[^;=\n]*=(UTF-8(['"]*))?(.*)/;
303
+ const matches = regex.exec(contentDisposition);
304
+ let filename = '';
305
+ if (matches != null && matches[3]) {
306
+ filename = matches[3].replace(/['"]/g, '');
307
+ }
308
+ return decodeURI(filename);
309
+ }
310
+ static temaGunNoVer() {
311
+ const dn = new Date().getDay();
312
+ if (dn === 0) {
313
+ return 6;
314
+ }
315
+ else {
316
+ return dn;
317
+ }
318
+ }
319
+ static ciftBoslukTekYap(metin) {
320
+ const parcalar = metin.split(' ');
321
+ return parcalar.join(' ');
322
+ }
323
+ /*
324
+ static rakamlariTemizle(metin: string): string {
325
+ return metin.replace(/[0-9]/g, '');
326
+ }
327
+
328
+ static bosluklariTemizle(metin: string): string {
329
+ return metin.replace(/ /g, '');
330
+ }
331
+ */
332
+ static buyukHarfeCevir(metin) {
333
+ return metin.toLocaleUpperCase('tr-TR');
334
+ }
335
+ static ilkHarfBuyut(metin) {
336
+ const uzunluk = metin.length;
337
+ if (uzunluk > 0) {
338
+ if (uzunluk > 1) {
339
+ return metin.substr(0, 1).toLocaleUpperCase('tr-TR') + metin.substr(1, 100).toLocaleLowerCase('tr-TR');
340
+ }
341
+ else {
342
+ return metin.substr(0, 1).toLocaleUpperCase('tr-TR');
343
+ }
344
+ }
345
+ else {
346
+ return '';
347
+ }
348
+ }
349
+ static tumIlkHarfBuyut(metin) {
350
+ const parcalar = metin.split(' ');
351
+ const sonuc = [];
352
+ parcalar.forEach(parca => {
353
+ sonuc.push(this.ilkHarfBuyut(parca));
354
+ });
355
+ return sonuc.join(' ');
356
+ }
357
+ static tumBoslukSil(metin) {
358
+ const parcalar = metin.split(' ');
359
+ return parcalar.join('');
360
+ }
361
+ static turkceAyikla(metin) {
362
+ let sonuc = metin;
363
+ sonuc = sonuc.replace('Ü', 'U');
364
+ sonuc = sonuc.replace('Ğ', 'G');
365
+ sonuc = sonuc.replace('İ', 'I');
366
+ sonuc = sonuc.replace('Ş', 'S');
367
+ sonuc = sonuc.replace('Ç', 'C');
368
+ sonuc = sonuc.replace('Ö', 'O');
369
+ sonuc = sonuc.replace('ü', 'u');
370
+ sonuc = sonuc.replace('ğ', 'g');
371
+ sonuc = sonuc.replace('ı', 'i');
372
+ sonuc = sonuc.replace('ş', 's');
373
+ sonuc = sonuc.replace('ç', 'c');
374
+ sonuc = sonuc.replace('ö', 'o');
375
+ sonuc = sonuc.replace('ž', 'i');
376
+ // sonuc = sonuc.replace(/[\u0300-\u036f]/g, '');
377
+ return sonuc;
378
+ }
379
+ static mecraTuruNoVer(mecraTuruStr) {
380
+ switch (mecraTuruStr) {
381
+ case MecraTurleriStr.Tumu:
382
+ return MecraTurleri.Tumu;
383
+ case MecraTurleriStr.TV:
384
+ return MecraTurleri.TV;
385
+ case MecraTurleriStr.Gazete:
386
+ return MecraTurleri.Gazete;
387
+ case MecraTurleriStr.Dergi:
388
+ return MecraTurleri.Dergi;
389
+ case MecraTurleriStr.Radyo:
390
+ return MecraTurleri.Radyo;
391
+ case MecraTurleriStr.Sinema:
392
+ return MecraTurleri.Sinema;
393
+ case MecraTurleriStr.Outdoor:
394
+ return MecraTurleri.Outdoor;
395
+ case MecraTurleriStr.Internet:
396
+ return MecraTurleri.Internet;
397
+ case MecraTurleriStr.Sponsorluk:
398
+ return MecraTurleri.Sponsorluk;
399
+ case MecraTurleriStr.Belirsiz:
400
+ return MecraTurleri.Belirsiz;
401
+ case MecraTurleriStr.Bos:
402
+ return MecraTurleri.Bos;
403
+ }
404
+ }
405
+ static mecraTuruStrVer(mecraTuruNo) {
406
+ switch (mecraTuruNo) {
407
+ case MecraTurleri.Tumu:
408
+ return MecraTurleriStr.Tumu;
409
+ case MecraTurleri.TV:
410
+ return MecraTurleriStr.TV;
411
+ case MecraTurleri.Gazete:
412
+ return MecraTurleriStr.Gazete;
413
+ case MecraTurleri.Dergi:
414
+ return MecraTurleriStr.Dergi;
415
+ case MecraTurleri.Radyo:
416
+ return MecraTurleriStr.Radyo;
417
+ case MecraTurleri.Sinema:
418
+ return MecraTurleriStr.Sinema;
419
+ case MecraTurleri.Outdoor:
420
+ return MecraTurleriStr.Outdoor;
421
+ case MecraTurleri.Internet:
422
+ return MecraTurleriStr.Internet;
423
+ case MecraTurleri.Sponsorluk:
424
+ return MecraTurleriStr.Sponsorluk;
425
+ case MecraTurleri.Belirsiz:
426
+ return MecraTurleriStr.Belirsiz;
427
+ case MecraTurleri.Bos:
428
+ return MecraTurleriStr.Bos;
429
+ }
430
+ }
431
+ static padLeadingZeros(num, size) {
432
+ var s = num + '';
433
+ while (s.length < size)
434
+ s = '0' + s;
435
+ return s;
436
+ }
437
+ static arrayToSelectItem(array) {
438
+ return array.map(element => {
439
+ return { label: element, value: element };
440
+ });
441
+ }
442
+ static arrayNumberToSelectItem(array) {
443
+ return array.map(element => {
444
+ return { label: element.toString(), value: element };
445
+ });
446
+ }
447
+ }
448
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsRnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2FwaS9nbG9iYWxGdW5jdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRCxNQUFNLE9BQU8sZUFBZTtJQUMxQixNQUFNLENBQUMsVUFBVSxDQUFDLEtBQWEsRUFBRSxPQUFlO1FBRTlDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTVDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEQsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RCxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXhELENBQUMsR0FBRyxDQUFD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LENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgTWVjcmFUdXJsZXJpLCBNZWNyYVR1cmxlcmlTdHIgfSBmcm9tICcuL21vZGVscy9lbnVtcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgR2xvYmFsRnVuY3Rpb25zIHtcclxuICBzdGF0aWMgc2hhZGVDb2xvcihjb2xvcjogc3RyaW5nLCBwZXJjZW50OiBudW1iZXIpIHtcclxuXHJcbiAgICBsZXQgUiA9IHBhcnNlSW50KGNvbG9yLnN1YnN0cmluZygxLCAzKSwgMTYpO1xyXG4gICAgbGV0IEcgPSBwYXJzZUludChjb2xvci5zdWJzdHJpbmcoMywgNSksIDE2KTtcclxuICAgIGxldCBCID0gcGFyc2VJbnQoY29sb3Iuc3Vic3RyaW5nKDUsIDcpLCAxNik7XHJcblxyXG4gICAgUiA9IHBhcnNlSW50KChSICogKDEwMCArIHBlcmNlbnQpIC8gMTAwKS50b1N0cmluZygpLCAwKTtcclxuICAgIEcgPSBwYXJzZUludCgoRyAqICgxMDAgKyBwZXJjZW50KSAvIDEwMCkudG9TdHJpbmcoKSwgMCk7XHJcbiAgICBCID0gcGFyc2VJbnQoKEIgKiAoMTAwICsgcGVyY2VudCkgLyAxMDApLnRvU3RyaW5nKCksIDApO1xyXG5cclxuICAgIFIgPSAoUiA8IDI1NSkgPyBSIDogMjU1O1xyXG4gICAgRyA9IChHIDwgMjU1KSA/IEcgOiAyNTU7XHJcbiAgICBCID0gKEIgPCAyNTUpID8gQiA6IDI1NTtcclxuXHJcbiAgICBjb25zdCBSUiA9ICgoUi50b1N0cmluZygxNikubGVuZ3RoID09PSAxKSA/ICcwJyArIFIudG9TdHJpbmcoMTYpIDogUi50b1N0cmluZygxNikpO1xyXG4gICAgY29uc3QgR0cgPSAoKEcudG9TdHJpbmcoMTYpLmxlbmd0aCA9PT0gMSkgPyAnMCcgKyBHLnRvU3RyaW5nKDE2KSA6IEcudG9TdHJpbmcoMTYpKTtcclxuICAgIGNvbnN0IEJCID0gKChCLnRvU3RyaW5nKDE2KS5sZW5ndGggPT09IDEpID8gJzAnICsgQi50b1N0cmluZygxNikgOiBCLnRvU3RyaW5nKDE2KSk7XHJcblxyXG4gICAgcmV0dXJuICcjJyArIFJSICsgR0cgKyBCQjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB5YXJpbVNhYXRlWXV2YXJsYSh2YWx1ZTogbnVtYmVyLCBzdGVwUGFyYW06IG51bWJlcikge1xyXG4gICAgY29uc3Qgc3RlcCA9IHN0ZXBQYXJhbSB8fCAoc3RlcFBhcmFtID0gMS4wKTtcclxuICAgIGNvbnN0IGludiA9IDEuMCAvIHN0ZXA7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIGludikgLyBpbnY7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZXZlblJvdW5kKG51bTogbnVtYmVyLCBkZWNpbWFsUGxhY2VzOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgY29uc3QgZCA9IGRlY2ltYWxQbGFjZXMgfHwgMDtcclxuICAgIGNvbnN0IG0gPSBNYXRoLnBvdygxMCwgZCk7XHJcbiAgICBjb25zdCBuID0gKyhkID8gbnVtICogbSA6IG51bSkudG9GaXhlZCg4KTsgLy8gQXZvaWQgcm91bmRpbmcgZXJyb3JzXHJcbiAgICBjb25zdCBpID0gTWF0aC5mbG9vcihuKTtcclxuICAgIGNvbnN0IGYgPSBuIC0gaTtcclxuICAgIGNvbnN0IGUgPSAxZS04OyAvLyBBbGxvdyBmb3Igcm91bmRpbmcgZXJyb3JzIGluIGZcclxuICAgIGNvbnN0IHIgPSAoZiA+IDAuNSAtIGUgJiYgZiA8IDAuNSArIGUpID8gKChpICUgMiA9PT0gMCkgPyBpIDogaSArIDEpIDogTWF0aC5yb3VuZChuKTtcclxuICAgIHJldHVybiBkID8gciAvIG0gOiByO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJvdW5kSWtpSGFuZShwYXJhbTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBNYXRoLmZsb29yKHBhcmFtICogMTAwKSAvIDEwMDtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBpa2lTYXlpRmFyayhwYXJhbTE6IG51bWJlciwgcGFyYW0yOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQoKHBhcmFtMSAtIHBhcmFtMikgKiAxMDApIC8gMTAwO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGlraVNheWlUb3BsYShwYXJhbTE6IG51bWJlciwgcGFyYW0yOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQoKHBhcmFtMSArIHBhcmFtMikgKiAxMDApIC8gMTAwO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN0clRvTnVtYmVyKG1ldGluOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgbGV0IHN0ciA9IG1ldGluO1xyXG4gICAgc3RyID0gc3RyLnNwbGl0KCcsJykuam9pbignLicpO1xyXG4gICAgY29uc3QgcmVnZXg6IFJlZ0V4cCA9IC9bXlxcZC4tXS9nO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UocmVnZXgsICcnKTtcclxuICAgIGNvbnN0IGFyciA9IHN0ci5zcGxpdCgnLicpO1xyXG4gICAgaWYgKGFyci5sZW5ndGggPiAyKSB7IC8vIEJpcmRlbiDDp29rIG5va3RhIHZhcnNhXHJcbiAgICAgIGNvbnN0IHNvbiA9IGFyci5wb3AoKTtcclxuICAgICAgc3RyID0gYXJyLmpvaW4oJycpICsgJy4nICsgc29uO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIE51bWJlcihzdHIpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN1dHVuU3RyVmVyKGdlbmlzbGlrOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgaWYgKGdlbmlzbGlrIDwgNTc2KSB7IHJldHVybiAneHMnOyB9XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCA3NjgpIHsgcmV0dXJuICdzbSc7IH1cclxuICAgIGlmIChnZW5pc2xpayA8IDk5MikgeyByZXR1cm4gJ21kJzsgfVxyXG4gICAgaWYgKGdlbmlzbGlrIDwgMTIwMCkgeyByZXR1cm4gJ2xnJzsgfVxyXG4gICAgcmV0dXJuICd4bCc7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgc3V0dW5HZW5Ob1ZlcihnZW5pc2xpazogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGlmIChnZW5pc2xpayA8IDU3NikgeyByZXR1cm4gMTsgfVxyXG4gICAgaWYgKGdlbmlzbGlrIDwgNzY4KSB7IHJldHVybiAyOyB9XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCA5OTIpIHsgcmV0dXJuIDM7IH1cclxuICAgIGlmIChnZW5pc2xpayA8IDEyMDApIHsgcmV0dXJuIDQ7IH1cclxuICAgIHJldHVybiA1O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGRhdGVUb1RleHQodGFyaWg6IERhdGUpOiBzdHJpbmcge1xyXG4gICAgaWYgKCh0YXJpaCAhPT0gdW5kZWZpbmVkKSAmJiAodGFyaWggIT09IG51bGwpKSB7XHJcbiAgICAgIHJldHVybiB0YXJpaC5nZXREYXRlKCkudG9TdHJpbmcoKSArICcuJyArICh0YXJpaC5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKSArICcuJyArIHRhcmloLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBheUlsa0d1bihheTogbnVtYmVyLCB5aWw6IG51bWJlcik6IERhdGUge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHlpbCwgYXkgLSAxKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBheVNvbkd1bihheTogbnVtYmVyLCB5aWw6IG51bWJlcik6IERhdGUge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHlpbCwgYXksIDApO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIEpTT05EYXRlVG9EYXRlKHRhcmloOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBpZiAoKHRhcmloICE9PSB1bmRlZmluZWQpICYmICh0YXJpaCAhPT0gbnVsbCkpIHtcclxuICAgICAgY29uc3QgdGVtcCA9IHRhcmloLnRvU3RyaW5nKCk7XHJcbiAgICAgIGlmICh0ZW1wICE9PSAnMDAwMC0wMC0wMCcpIHtcclxuICAgICAgICByZXR1cm4gbmV3IERhdGUodGVtcCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlBZGlWZXIoYXlObzogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIHN3aXRjaCAoYXlObykge1xyXG4gICAgICBjYXNlIDE6XHJcbiAgICAgICAgcmV0dXJuICdPY2FrJztcclxuICAgICAgY2FzZSAyOlxyXG4gICAgICAgIHJldHVybiAnxZ51YmF0JztcclxuICAgICAgY2FzZSAzOlxyXG4gICAgICAgIHJldHVybiAnTWFydCc7XHJcbiAgICAgIGNhc2UgNDpcclxuICAgICAgICByZXR1cm4gJ05pc2FuJztcclxuICAgICAgY2FzZSA1OlxyXG4gICAgICAgIHJldHVybiAnTWF5xLFzJztcclxuICAgICAgY2FzZSA2OlxyXG4gICAgICAgIHJldHVybiAnSGF6aXJhbic7XHJcbiAgICAgIGNhc2UgNzpcclxuICAgICAgICByZXR1cm4gJ1RlbW11eic7XHJcbiAgICAgIGNhc2UgODpcclxuICAgICAgICByZXR1cm4gJ0HEn3VzdG9zJztcclxuICAgICAgY2FzZSA5OlxyXG4gICAgICAgIHJldHVybiAnRXlsw7xsJztcclxuICAgICAgY2FzZSAxMDpcclxuICAgICAgICByZXR1cm4gJ0VraW0nO1xyXG4gICAgICBjYXNlIDExOlxyXG4gICAgICAgIHJldHVybiAnS2FzxLFtJztcclxuICAgICAgY2FzZSAxMjpcclxuICAgICAgICByZXR1cm4gJ0FyYWzEsWsnO1xyXG4gICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlBZGlWZXJLaXNhKGF5Tm86IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKGF5Tm8pIHtcclxuICAgICAgY2FzZSAxOlxyXG4gICAgICAgIHJldHVybiAnT2NhJztcclxuICAgICAgY2FzZSAyOlxyXG4gICAgICAgIHJldHVybiAnxZ51Yic7XHJcbiAgICAgIGNhc2UgMzpcclxuICAgICAgICByZXR1cm4gJ01hcic7XHJcbiAgICAgIGNhc2UgNDpcclxuICAgICAgICByZXR1cm4gJ05pcyc7XHJcbiAgICAgIGNhc2UgNTpcclxuICAgICAgICByZXR1cm4gJ01heSc7XHJcbiAgICAgIGNhc2UgNjpcclxuICAgICAgICByZXR1cm4gJ0hheic7XHJcbiAgICAgIGNhc2UgNzpcclxuICAgICAgICByZXR1cm4gJ1RlbSc7XHJcbiAgICAgIGNhc2UgODpcclxuICAgICAgICByZXR1cm4gJ0HEn3UnO1xyXG4gICAgICBjYXNlIDk6XHJcbiAgICAgICAgcmV0dXJuICdFeWwnO1xyXG4gICAgICBjYXNlIDEwOlxyXG4gICAgICAgIHJldHVybiAnRWtpJztcclxuICAgICAgY2FzZSAxMTpcclxuICAgICAgICByZXR1cm4gJ0thcyc7XHJcbiAgICAgIGNhc2UgMTI6XHJcbiAgICAgICAgcmV0dXJuICdBcmEnO1xyXG4gICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlOb1ZlcihheTogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIHN3aXRjaCAoYXkpIHtcclxuICAgICAgY2FzZSAnT2MnOlxyXG4gICAgICAgIHJldHVybiAxO1xyXG4gICAgICBjYXNlICfFnnUnOlxyXG4gICAgICAgIHJldHVybiAyO1xyXG4gICAgICBjYXNlICdNYSc6XHJcbiAgICAgICAgcmV0dXJuIDM7XHJcbiAgICAgIGNhc2UgJ05pJzpcclxuICAgICAgICByZXR1cm4gNDtcclxuICAgICAgY2FzZSAnTXknOlxyXG4gICAgICAgIHJldHVybiA1O1xyXG4gICAgICBjYXNlICdIYSc6XHJcbiAgICAgICAgcmV0dXJuIDY7XHJcbiAgICAgIGNhc2UgJ1RlJzpcclxuICAgICAgICByZXR1cm4gNztcclxuICAgICAgY2FzZSAnQcSfJzpcclxuICAgICAgICByZXR1cm4gODtcclxuICAgICAgY2FzZSAnRXknOlxyXG4gICAgICAgIHJldHVybiA5O1xyXG4gICAgICBjYXNlICdFayc6XHJcbiAgICAgICAgcmV0dXJuIDEwO1xyXG4gICAgICBjYXNlICdLYSc6XHJcbiAgICAgICAgcmV0dXJuIDExO1xyXG4gICAgICBjYXNlICdBcic6XHJcbiAgICAgICAgcmV0dXJuIDEyO1xyXG4gICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBndW5BZGlWZXIoZ3VuTm86IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKGd1bk5vKSB7XHJcbiAgICAgIGNhc2UgMTpcclxuICAgICAgICByZXR1cm4gJ1BhemFydGVzaSc7XHJcbiAgICAgIGNhc2UgMjpcclxuICAgICAgICByZXR1cm4gJ1NhbMSxJztcclxuICAgICAgY2FzZSAzOlxyXG4gICAgICAgIHJldHVybiAnw4dhcsWfYW1iYSc7XHJcbiAgICAgIGNhc2UgNDpcclxuICAgICAgICByZXR1cm4gJ1BlcsWfZW1iZSc7XHJcbiAgICAgIGNhc2UgNTpcclxuICAgICAgICByZXR1cm4gJ0N1bWEnO1xyXG4gICAgICBjYXNlIDY6XHJcbiAgICAgICAgcmV0dXJuICdDdW1hcnRlc2knO1xyXG4gICAgICBjYXNlIDA6XHJcbiAgICAgICAgcmV0dXJuICdQYXphcic7XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBndW5BcnR0aXJBemFsdCh0YXJpaDogRGF0ZSwgZ3VuU2F5aXNpOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh0YXJpaC5nZXRUaW1lKCkgKyBndW5TYXlpc2kgKiAyNCAqIDYwICogNjAgKiAxMDAwKTtcclxuXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdGFyaWhQYXJhbVRvRGF0ZShwYXJhbTogc3RyaW5nKTogRGF0ZSB7XHJcbiAgICBsZXQgdGFyaWg6IERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgaWYgKHBhcmFtICE9PSBudWxsKSB7XHJcbiAgICAgIGNvbnN0IHRhcmloQXJyOiBzdHJpbmdbXSA9IHBhcmFtLnNwbGl0KCctJyk7XHJcbiAgICAgIGlmICh0YXJpaEFyci5sZW5ndGggPiAyKSB7XHJcbiAgICAgICAgY29uc3QgZ3VuID0gTnVtYmVyKHRhcmloQXJyWzBdKTtcclxuICAgICAgICBjb25zdCBheSA9IE51bWJlcih0YXJpaEFyclsxXSkgLSAxO1xyXG4gICAgICAgIGNvbnN0IHlpbCA9IE51bWJlcih0YXJpaEFyclsyXSk7XHJcbiAgICAgICAgdGFyaWggPSBuZXcgRGF0ZSh5aWwsIGF5LCBndW4pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGFyaWg7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZGF0ZVRvVGFyaWhQYXJhbShwYXJhbTogRGF0ZSk6IHN0cmluZyB7XHJcbiAgICBpZiAocGFyYW0gIT09IG51bGwpIHtcclxuICAgICAgY29uc3QgZ3VuID0gcGFyYW0uZ2V0RGF0ZSgpO1xyXG4gICAgICBjb25zdCBheSA9IHBhcmFtLmdldE1vbnRoKCkgKyAxO1xyXG4gICAgICBjb25zdCB5aWwgPSBwYXJhbS5nZXRGdWxsWWVhcigpO1xyXG4gICAgICByZXR1cm4gZ3VuLnRvU3RyaW5nKCkgKyAnLScgKyBheS50b1N0cmluZygpICsgJy0nICsgeWlsLnRvU3RyaW5nKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0RmlsZUV4dGVuc2lvbihmaWxlOiBGaWxlKTogc3RyaW5nIHtcclxuICAgIHJldHVybiAnLicgKyBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBoZXhUb1JHQkEoaGV4LCBhbHBoYSkge1xyXG4gICAgLy8gY29uc29sZS5sb2coaGV4KTtcclxuICAgIGNvbnN0IHIgPSBwYXJzZUludChoZXguc2xpY2UoMSwgMyksIDE2KTtcclxuICAgIGNvbnN0IGcgPSBwYXJzZUludChoZXguc2xpY2UoMywgNSksIDE2KTtcclxuICAgIGNvbnN0IGIgPSBwYXJzZUludChoZXguc2xpY2UoNSwgNyksIDE2KTtcclxuXHJcbiAgICAvLyByZXR1cm4gciArICcsJyArIGcgKyAnLCcgKyBiO1xyXG5cclxuICAgIGlmIChhbHBoYSkge1xyXG4gICAgICByZXR1cm4gYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHthbHBoYX0pYDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBgcmdiYSgke3J9LCAke2d9LCAke2J9KWA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgY29sb3JOYW1lVG9IZXgoY29sb3IpIHtcclxuICAgIGNvbnN0IGNvbG9ycyA9IHtcclxuICAgICAgYWxpY2VibHVlOiAnI2YwZjhmZicsIGFudGlxdWV3aGl0ZTogJyNmYWViZDcnLCBhcXVhOiAnIzAwZmZmZicsIGFxdWFtYXJpbmU6ICcjN2ZmZmQ0JywgYXp1cmU6ICcjZjBmZmZmJyxcclxuICAgICAgYmVpZ2U6ICcjZjVmNWRjJywgYmlzcXVlOiAnI2ZmZTRjNCcsIGJsYWNrOiAnIzAwMDAwMCcsIGJsYW5jaGVkYWxtb25kOiAnI2ZmZWJjZCcsIGJsdWU6ICcjMDAwMGZmJywgYmx1ZXZpb2xldDogJyM4YTJiZTInLCBicm93bjogJyNhNTJhMmEnLCBidXJseXdvb2Q6ICcjZGViODg3JyxcclxuICAgICAgY2FkZXRibHVlOiAnIzVmOWVhMCcsIGNoYXJ0cmV1c2U6ICcjN2ZmZjAwJywgY2hvY29sYXRlOiAnI2QyNjkxZScsIGNvcmFsOiAnI2ZmN2Y1MCcsIGNvcm5mbG93ZXJibHVlOiAnIzY0OTVlZCcsIGNvcm5zaWxrOiAnI2ZmZjhkYycsIGNyaW1zb246ICcjZGMxNDNjJywgY3lhbjogJyMwMGZmZmYnLFxyXG4gICAgICBkYXJrYmx1ZTogJyMwMDAwOGInLCBkYXJrY3lhbjogJyMwMDhiOGInLCBkYXJrZ29sZGVucm9kOiAnI2I4ODYwYicsIGRhcmtncmF5OiAnI2E5YTlhOScsIGRhcmtncmVlbjogJyMwMDY0MDAnLCBkYXJra2hha2k6ICcjYmRiNzZiJywgZGFya21hZ2VudGE6ICcjOGIwMDhiJywgZGFya29saXZlZ3JlZW46ICcjNTU2YjJmJyxcclxuICAgICAgZGFya29yYW5nZTogJyNmZjhjMDAnLCBkYXJrb3JjaGlkOiAnIzk5MzJjYycsIGRhcmtyZWQ6ICcjOGIwMDAwJywgZGFya3NhbG1vbjogJyNlOTk2N2EnLCBkYXJrc2VhZ3JlZW46ICcjOGZiYzhmJywgZGFya3NsYXRlYmx1ZTogJyM0ODNkOGInLCBkYXJrc2xhdGVncmF5OiAnIzJmNGY0ZicsIGRhcmt0dXJxdW9pc2U6ICcjMDBjZWQxJyxcclxuICAgICAgZGFya3Zpb2xldDogJyM5NDAwZDMnLCBkZWVwcGluazogJyNmZjE0OTMnLCBkZWVwc2t5Ymx1ZTogJyMwMGJmZmYnLCBkaW1ncmF5OiAnIzY5Njk2OScsIGRvZGdlcmJsdWU6ICcjMWU5MGZmJyxcclxuICAgICAgZmlyZWJyaWNrOiAnI2IyMjIyMicsIGZsb3JhbHdoaXRlOiAnI2ZmZmFmMCcsIGZvcmVzdGdyZWVuOiAnIzIyOGIyMicsIGZ1Y2hzaWE6ICcjZmYwMGZmJyxcclxuICAgICAgZ2FpbnNib3JvOiAnI2RjZGNkYycsIGdob3N0d2hpdGU6ICcjZjhmOGZmJywgZ29sZDogJyNmZmQ3MDAnLCBnb2xkZW5yb2Q6ICcjZGFhNTIwJywgZ3JheTogJyM4MDgwODAnLCBncmVlbjogJyMwMDgwMDAnLCBncmVlbnllbGxvdzogJyNhZGZmMmYnLFxyXG4gICAgICBob25leWRldzogJyNmMGZmZjAnLCBob3RwaW5rOiAnI2ZmNjliNCcsXHJcbiAgICAgIGluZGlhbnJlZDogJyNjZDVjNWMnLCBpbmRpZ286ICcjNGIwMDgyJywgaXZvcnk6ICcjZmZmZmYwJywga2hha2k6ICcjZjBlNjhjJyxcclxuICAgICAgbGF2ZW5kZXI6ICcjZTZlNmZhJywgbGF2ZW5kZXJibHVzaDogJyNmZmYwZjUnLCBsYXduZ3JlZW46ICcjN2NmYzAwJywgbGVtb25jaGlmZm9uOiAnI2ZmZmFjZCcsIGxpZ2h0Ymx1ZTogJyNhZGQ4ZTYnLCBsaWdodGNvcmFsOiAnI2YwODA4MCcsIGxpZ2h0Y3lhbjogJyNlMGZmZmYnLCBsaWdodGdvbGRlbnJvZHllbGxvdzogJyNmYWZhZDInLFxyXG4gICAgICBsaWdodGdyZXk6ICcjZDNkM2QzJywgbGlnaHRncmVlbjogJyM5MGVlOTAnLCBsaWdodHBpbms6ICcjZmZiNmMxJywgbGlnaHRzYWxtb246ICcjZmZhMDdhJywgbGlnaHRzZWFncmVlbjogJyMyMGIyYWEnLCBsaWdodHNreWJsdWU6ICcjODdjZWZhJywgbGlnaHRzbGF0ZWdyYXk6ICcjNzc4ODk5JywgbGlnaHRzdGVlbGJsdWU6ICcjYjBjNGRlJyxcclxuICAgICAgbGlnaHR5ZWxsb3c6ICcjZmZmZmUwJywgbGltZTogJyMwMGZmMDAnLCBsaW1lZ3JlZW46ICcjMzJjZDMyJywgbGluZW46ICcjZmFmMGU2JyxcclxuICAgICAgbWFnZW50YTogJyNmZjAwZmYnLCBtYXJvb246ICcjODAwMDAwJywgbWVkaXVtYXF1YW1hcmluZTogJyM2NmNkYWEnLCBtZWRpdW1ibHVlOiAnIzAwMDBjZCcsIG1lZGl1bW9yY2hpZDogJyNiYTU1ZDMnLCBtZWRpdW1wdXJwbGU6ICcjOTM3MGQ4JywgbWVkaXVtc2VhZ3JlZW46ICcjM2NiMzcxJywgbWVkaXVtc2xhdGVibHVlOiAnIzdiNjhlZScsXHJcbiAgICAgIG1lZGl1bXNwcmluZ2dyZWVuOiAnIzAwZmE5YScsIG1lZGl1bXR1cnF1b2lzZTogJyM0OGQxY2MnLCBtZWRpdW12aW9sZXRyZWQ6ICcjYzcxNTg1JywgbWlkbmlnaHRibHVlOiAnIzE5MTk3MCcsIG1pbnRjcmVhbTogJyNmNWZmZmEnLCBtaXN0eXJvc2U6ICcjZmZlNGUxJywgbW9jY2FzaW46ICcjZmZlNGI1JyxcclxuICAgICAgbmF2YWpvd2hpdGU6ICcjZmZkZWFkJywgbmF2eTogJyMwMDAwODAnLFxyXG4gICAgICBvbGRsYWNlOiAnI2ZkZjVlNicsIG9saXZlOiAnIzgwODAwMCcsIG9saXZlZHJhYjogJyM2YjhlMjMnLCBvcmFuZ2U6ICcjZmZhNTAwJywgb3JhbmdlcmVkOiAnI2ZmNDUwMCcsIG9yY2hpZDogJyNkYTcwZDYnLFxyXG4gICAgICBwYWxlZ29sZGVucm9kOiAnI2VlZThhYScsIHBhbGVncmVlbjogJyM5OGZiOTgnLCBwYWxldHVycXVvaXNlOiAnI2FmZWVlZScsIHBhbGV2aW9sZXRyZWQ6ICcjZDg3MDkzJywgcGFwYXlhd2hpcDogJyNmZmVmZDUnLCBwZWFjaHB1ZmY6ICcjZmZkYWI5JywgcGVydTogJyNjZDg1M2YnLCBwaW5rOiAnI2ZmYzBjYicsIHBsdW06ICcjZGRhMGRkJywgcG93ZGVyYmx1ZTogJyNiMGUwZTYnLCBwdXJwbGU6ICcjODAwMDgwJyxcclxuICAgICAgcmViZWNjYXB1cnBsZTogJyM2NjMzOTknLCByZWQ6ICcjZmYwMDAwJywgcm9zeWJyb3duOiAnI2JjOGY4ZicsIHJveWFsYmx1ZTogJyM0MTY5ZTEnLFxyXG4gICAgICBzYWRkbGVicm93bjogJyM4YjQ1MTMnLCBzYWxtb246ICcjZmE4MDcyJywgc2FuZHlicm93bjogJyNmNGE0NjAnLCBzZWFncmVlbjogJyMyZThiNTcnLCBzZWFzaGVsbDogJyNmZmY1ZWUnLCBzaWVubmE6ICcjYTA1MjJkJywgc2lsdmVyOiAnI2MwYzBjMCcsIHNreWJsdWU6ICcjODdjZWViJywgc2xhdGVibHVlOiAnIzZhNWFjZCcsIHNsYXRlZ3JheTogJyM3MDgwOTAnLCBzbm93OiAnI2ZmZmFmYScsIHNwcmluZ2dyZWVuOiAnIzAwZmY3ZicsIHN0ZWVsYmx1ZTogJyM0NjgyYjQnLFxyXG4gICAgICB0YW46ICcjZDJiNDhjJywgdGVhbDogJyMwMDgwODAnLCB0aGlzdGxlOiAnI2Q4YmZkOCcsIHRvbWF0bzogJyNmZjYzNDcnLCB0dXJxdW9pc2U6ICcjNDBlMGQwJyxcclxuICAgICAgdmlvbGV0OiAnI2VlODJlZScsXHJcbiAgICAgIHdoZWF0OiAnI2Y1ZGViMycsIHdoaXRlOiAnI2ZmZmZmZicsIHdoaXRlc21va2U6ICcjZjVmNWY1JyxcclxuICAgICAgeWVsbG93OiAnI2ZmZmYwMCcsIHllbGxvd2dyZWVuOiAnIzlhY2QzMidcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHR5cGVvZiBjb2xvcnNbY29sb3IudG9Mb3dlckNhc2UoKV0gIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIHJldHVybiBjb2xvcnNbY29sb3IudG9Mb3dlckNhc2UoKV07XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGNvbG9yO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldEZpbGVuYW1lRnJvbUNvbnRlbnREaXNwb3NpdGlvbihjb250ZW50RGlzcG9zaXRpb246IHN0cmluZykge1xyXG4gICAgY29uc3QgcmVnZXggPSAvZmlsZW5hbWVbXjs9XFxuXSo9KFVURi04KFsnXCJdKikpPyguKikvO1xyXG4gICAgY29uc3QgbWF0Y2hlcyA9IHJlZ2V4LmV4ZWMoY29udGVudERpc3Bvc2l0aW9uKTtcclxuICAgIGxldCBmaWxlbmFtZSA9ICcnO1xyXG5cclxuICAgIGlmIChtYXRjaGVzICE9IG51bGwgJiYgbWF0Y2hlc1szXSkge1xyXG4gICAgICBmaWxlbmFtZSA9IG1hdGNoZXNbM10ucmVwbGFjZSgvWydcIl0vZywgJycpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkZWNvZGVVUkkoZmlsZW5hbWUpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHRlbWFHdW5Ob1ZlcigpOiBudW1iZXIge1xyXG4gICAgY29uc3QgZG4gPSBuZXcgRGF0ZSgpLmdldERheSgpO1xyXG4gICAgaWYgKGRuID09PSAwKSB7XHJcbiAgICAgIHJldHVybiA2O1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiBkbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBjaWZ0Qm9zbHVrVGVrWWFwKG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgcGFyY2FsYXIgPSBtZXRpbi5zcGxpdCgnICAnKTtcclxuICAgIHJldHVybiBwYXJjYWxhci5qb2luKCcgJyk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gIHN0YXRpYyByYWthbWxhcmlUZW1pemxlKG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIG1ldGluLnJlcGxhY2UoL1swLTldL2csICcnKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBib3NsdWtsYXJpVGVtaXpsZShtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBtZXRpbi5yZXBsYWNlKC8gL2csICcnKTtcclxuICB9XHJcbiovXHJcblxyXG4gIHN0YXRpYyBidXl1a0hhcmZlQ2V2aXIobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbWV0aW4udG9Mb2NhbGVVcHBlckNhc2UoJ3RyLVRSJyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaWxrSGFyZkJ1eXV0KG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdXp1bmx1ayA9IG1ldGluLmxlbmd0aDtcclxuICAgIGlmICh1enVubHVrID4gMCkge1xyXG4gICAgICBpZiAodXp1bmx1ayA+IDEpIHtcclxuICAgICAgICByZXR1cm4gbWV0aW4uc3Vic3RyKDAsIDEpLnRvTG9jYWxlVXBwZXJDYXNlKCd0ci1UUicpICsgbWV0aW4uc3Vic3RyKDEsIDEwMCkudG9Mb2NhbGVMb3dlckNhc2UoJ3RyLVRSJyk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIG1ldGluLnN1YnN0cigwLCAxKS50b0xvY2FsZVVwcGVyQ2FzZSgndHItVFInKTtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdHVtSWxrSGFyZkJ1eXV0KG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgcGFyY2FsYXIgPSBtZXRpbi5zcGxpdCgnICcpO1xyXG4gICAgY29uc3Qgc29udWMgPSBbXTtcclxuICAgIHBhcmNhbGFyLmZvckVhY2gocGFyY2EgPT4ge1xyXG4gICAgICBzb251Yy5wdXNoKHRoaXMuaWxrSGFyZkJ1eXV0KHBhcmNhKSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gc29udWMuam9pbignICcpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHR1bUJvc2x1a1NpbChtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBhcmNhbGFyID0gbWV0aW4uc3BsaXQoJyAnKTtcclxuICAgIHJldHVybiBwYXJjYWxhci5qb2luKCcnKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB0dXJrY2VBeWlrbGEobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgc29udWMgPSBtZXRpbjtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnw5wnLCAnVScpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfEnicsICdHJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8SwJywgJ0knKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnxZ4nLCAnUycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfDhycsICdDJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8OWJywgJ08nKTtcclxuXHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8O8JywgJ3UnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnxJ8nLCAnZycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfEsScsICdpJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8WfJywgJ3MnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnw6cnLCAnYycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfDticsICdvJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8W+JywgJ2knKTtcclxuXHJcbiAgICAvLyBzb251YyA9IHNvbnVjLnJlcGxhY2UoL1tcXHUwMzAwLVxcdTAzNmZdL2csICcnKTtcclxuICAgIHJldHVybiBzb251YztcclxuICB9XHJcblxyXG4gIHN0YXRpYyBtZWNyYVR1cnVOb1ZlcihtZWNyYVR1cnVTdHI6IE1lY3JhVHVybGVyaVN0cik6IE1lY3JhVHVybGVyaSB7XHJcbiAgICBzd2l0Y2ggKG1lY3JhVHVydVN0cikge1xyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5UdW11OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuVHVtdTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLlRWOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuVFY7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5HYXpldGU6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5HYXpldGU7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5EZXJnaTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLkRlcmdpO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuUmFkeW86XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5SYWR5bztcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLlNpbmVtYTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLlNpbmVtYTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLk91dGRvb3I6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5PdXRkb29yO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuSW50ZXJuZXQ6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5JbnRlcm5ldDtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLlNwb25zb3JsdWs6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5TcG9uc29ybHVrO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuQmVsaXJzaXo6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5CZWxpcnNpejtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLkJvczpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLkJvcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBtZWNyYVR1cnVTdHJWZXIobWVjcmFUdXJ1Tm86IE1lY3JhVHVybGVyaSk6IE1lY3JhVHVybGVyaVN0ciB7XHJcbiAgICBzd2l0Y2ggKG1lY3JhVHVydU5vKSB7XHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLlR1bXU6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5UdW11O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuVFY6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5UVjtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLkdhemV0ZTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLkdhemV0ZTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLkRlcmdpOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuRGVyZ2k7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5SYWR5bzpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLlJhZHlvO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuU2luZW1hOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuU2luZW1hO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuT3V0ZG9vcjpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLk91dGRvb3I7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5JbnRlcm5ldDpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLkludGVybmV0O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuU3BvbnNvcmx1azpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLlNwb25zb3JsdWs7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5CZWxpcnNpejpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLkJlbGlyc2l6O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuQm9zOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuQm9zO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHBhZExlYWRpbmdaZXJvcyhudW06IG51bWJlciwgc2l6ZTogbnVtYmVyKSB7XHJcbiAgICB2YXIgcyA9IG51bSArICcnO1xyXG4gICAgd2hpbGUgKHMubGVuZ3RoIDwgc2l6ZSkgcyA9ICcwJyArIHM7XHJcbiAgICByZXR1cm4gcztcclxuICB9XHJcblxyXG4gIHN0YXRpYyBhcnJheVRvU2VsZWN0SXRlbShhcnJheTogc3RyaW5nW10pOiBTZWxlY3RJdGVtPHN0cmluZz5bXSB7XHJcbiAgICByZXR1cm4gYXJyYXkubWFwKGVsZW1lbnQgPT4ge1xyXG4gICAgICByZXR1cm4geyBsYWJlbDogZWxlbWVudCwgdmFsdWU6IGVsZW1lbnQgfTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXJyYXlOdW1iZXJUb1NlbGVjdEl0ZW0oYXJyYXk6IG51bWJlcltdKTogU2VsZWN0SXRlbTxudW1iZXI+W10ge1xyXG4gICAgcmV0dXJuIGFycmF5Lm1hcChlbGVtZW50ID0+IHtcclxuICAgICAgcmV0dXJuIHsgbGFiZWw6IGVsZW1lbnQudG9TdHJpbmcoKSwgdmFsdWU6IGVsZW1lbnQgfTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGltaXRuZy1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYXBpL2xpbWl0bmctYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=