@jjlmoya/utils-finance 1.14.0 → 1.16.0

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 (225) hide show
  1. package/package.json +1 -1
  2. package/src/pages/[locale]/[slug].astro +29 -13
  3. package/src/tests/locale_completeness.test.ts +6 -16
  4. package/src/tests/shared-test-helpers.ts +56 -0
  5. package/src/tests/tool_exports.test.ts +34 -0
  6. package/src/tool/compoundInterest/bibliography.ts +20 -0
  7. package/src/tool/compoundInterest/compound-interest-calculator.css +315 -69
  8. package/src/tool/compoundInterest/entry.ts +2 -0
  9. package/src/tool/compoundInterest/i18n/de.ts +3 -16
  10. package/src/tool/compoundInterest/i18n/en.ts +3 -20
  11. package/src/tool/compoundInterest/i18n/es.ts +2 -20
  12. package/src/tool/compoundInterest/i18n/fr.ts +3 -20
  13. package/src/tool/compoundInterest/i18n/id.ts +3 -16
  14. package/src/tool/compoundInterest/i18n/it.ts +3 -16
  15. package/src/tool/compoundInterest/i18n/ja.ts +3 -16
  16. package/src/tool/compoundInterest/i18n/ko.ts +3 -16
  17. package/src/tool/compoundInterest/i18n/nl.ts +3 -16
  18. package/src/tool/compoundInterest/i18n/pl.ts +2 -16
  19. package/src/tool/compoundInterest/i18n/pt.ts +3 -16
  20. package/src/tool/compoundInterest/i18n/ru.ts +3 -16
  21. package/src/tool/compoundInterest/i18n/sv.ts +3 -16
  22. package/src/tool/compoundInterest/i18n/tr.ts +3 -16
  23. package/src/tool/compoundInterest/i18n/zh.ts +3 -16
  24. package/src/tool/compoundInterest/seo.astro +2 -1
  25. package/src/tool/courtFeeCalculator/bibliography.ts +16 -0
  26. package/src/tool/courtFeeCalculator/entry.ts +2 -0
  27. package/src/tool/courtFeeCalculator/i18n/de.ts +2 -18
  28. package/src/tool/courtFeeCalculator/i18n/en.ts +2 -22
  29. package/src/tool/courtFeeCalculator/i18n/es.ts +2 -22
  30. package/src/tool/courtFeeCalculator/i18n/fr.ts +2 -22
  31. package/src/tool/courtFeeCalculator/i18n/id.ts +2 -18
  32. package/src/tool/courtFeeCalculator/i18n/it.ts +2 -18
  33. package/src/tool/courtFeeCalculator/i18n/ja.ts +2 -18
  34. package/src/tool/courtFeeCalculator/i18n/ko.ts +2 -18
  35. package/src/tool/courtFeeCalculator/i18n/nl.ts +2 -18
  36. package/src/tool/courtFeeCalculator/i18n/pl.ts +2 -18
  37. package/src/tool/courtFeeCalculator/i18n/pt.ts +2 -18
  38. package/src/tool/courtFeeCalculator/i18n/ru.ts +2 -18
  39. package/src/tool/courtFeeCalculator/i18n/sv.ts +2 -18
  40. package/src/tool/courtFeeCalculator/i18n/tr.ts +2 -18
  41. package/src/tool/courtFeeCalculator/i18n/zh.ts +2 -18
  42. package/src/tool/courtFeeCalculator/seo.astro +2 -1
  43. package/src/tool/debtSnowball/bibliography.ts +12 -0
  44. package/src/tool/debtSnowball/entry.ts +2 -0
  45. package/src/tool/debtSnowball/i18n/de.ts +2 -14
  46. package/src/tool/debtSnowball/i18n/en.ts +2 -14
  47. package/src/tool/debtSnowball/i18n/es.ts +2 -14
  48. package/src/tool/debtSnowball/i18n/fr.ts +2 -14
  49. package/src/tool/debtSnowball/i18n/id.ts +2 -14
  50. package/src/tool/debtSnowball/i18n/it.ts +2 -14
  51. package/src/tool/debtSnowball/i18n/ja.ts +2 -14
  52. package/src/tool/debtSnowball/i18n/ko.ts +2 -14
  53. package/src/tool/debtSnowball/i18n/nl.ts +2 -14
  54. package/src/tool/debtSnowball/i18n/pl.ts +2 -14
  55. package/src/tool/debtSnowball/i18n/pt.ts +2 -14
  56. package/src/tool/debtSnowball/i18n/ru.ts +2 -14
  57. package/src/tool/debtSnowball/i18n/sv.ts +2 -14
  58. package/src/tool/debtSnowball/i18n/tr.ts +2 -14
  59. package/src/tool/debtSnowball/i18n/zh.ts +2 -14
  60. package/src/tool/debtSnowball/seo.astro +2 -1
  61. package/src/tool/fireCalculator/bibliography.ts +20 -0
  62. package/src/tool/fireCalculator/entry.ts +2 -0
  63. package/src/tool/fireCalculator/i18n/de.ts +2 -22
  64. package/src/tool/fireCalculator/i18n/en.ts +2 -22
  65. package/src/tool/fireCalculator/i18n/es.ts +2 -22
  66. package/src/tool/fireCalculator/i18n/fr.ts +2 -22
  67. package/src/tool/fireCalculator/i18n/id.ts +2 -22
  68. package/src/tool/fireCalculator/i18n/it.ts +2 -22
  69. package/src/tool/fireCalculator/i18n/ja.ts +2 -22
  70. package/src/tool/fireCalculator/i18n/ko.ts +2 -22
  71. package/src/tool/fireCalculator/i18n/nl.ts +2 -22
  72. package/src/tool/fireCalculator/i18n/pl.ts +2 -22
  73. package/src/tool/fireCalculator/i18n/pt.ts +2 -22
  74. package/src/tool/fireCalculator/i18n/ru.ts +2 -22
  75. package/src/tool/fireCalculator/i18n/sv.ts +2 -22
  76. package/src/tool/fireCalculator/i18n/tr.ts +2 -22
  77. package/src/tool/fireCalculator/i18n/zh.ts +2 -22
  78. package/src/tool/fireCalculator/seo.astro +2 -1
  79. package/src/tool/ibanBicSwiftConverter/bibliography.ts +12 -0
  80. package/src/tool/ibanBicSwiftConverter/entry.ts +2 -0
  81. package/src/tool/ibanBicSwiftConverter/i18n/de.ts +2 -14
  82. package/src/tool/ibanBicSwiftConverter/i18n/en.ts +2 -18
  83. package/src/tool/ibanBicSwiftConverter/i18n/es.ts +2 -18
  84. package/src/tool/ibanBicSwiftConverter/i18n/fr.ts +2 -18
  85. package/src/tool/ibanBicSwiftConverter/i18n/id.ts +2 -14
  86. package/src/tool/ibanBicSwiftConverter/i18n/it.ts +2 -14
  87. package/src/tool/ibanBicSwiftConverter/i18n/ja.ts +2 -14
  88. package/src/tool/ibanBicSwiftConverter/i18n/ko.ts +2 -14
  89. package/src/tool/ibanBicSwiftConverter/i18n/nl.ts +2 -14
  90. package/src/tool/ibanBicSwiftConverter/i18n/pl.ts +2 -14
  91. package/src/tool/ibanBicSwiftConverter/i18n/pt.ts +2 -14
  92. package/src/tool/ibanBicSwiftConverter/i18n/ru.ts +2 -14
  93. package/src/tool/ibanBicSwiftConverter/i18n/sv.ts +2 -14
  94. package/src/tool/ibanBicSwiftConverter/i18n/tr.ts +2 -14
  95. package/src/tool/ibanBicSwiftConverter/i18n/zh.ts +2 -14
  96. package/src/tool/ibanBicSwiftConverter/seo.astro +2 -1
  97. package/src/tool/inflation/bibliography.ts +20 -0
  98. package/src/tool/inflation/entry.ts +2 -0
  99. package/src/tool/inflation/i18n/de.ts +3 -16
  100. package/src/tool/inflation/i18n/en.ts +3 -20
  101. package/src/tool/inflation/i18n/es.ts +3 -20
  102. package/src/tool/inflation/i18n/fr.ts +3 -20
  103. package/src/tool/inflation/i18n/id.ts +3 -16
  104. package/src/tool/inflation/i18n/it.ts +3 -16
  105. package/src/tool/inflation/i18n/ja.ts +3 -16
  106. package/src/tool/inflation/i18n/ko.ts +3 -16
  107. package/src/tool/inflation/i18n/nl.ts +3 -16
  108. package/src/tool/inflation/i18n/pl.ts +3 -16
  109. package/src/tool/inflation/i18n/pt.ts +3 -16
  110. package/src/tool/inflation/i18n/ru.ts +3 -16
  111. package/src/tool/inflation/i18n/sv.ts +3 -16
  112. package/src/tool/inflation/i18n/tr.ts +3 -16
  113. package/src/tool/inflation/i18n/zh.ts +3 -16
  114. package/src/tool/inflation/seo.astro +2 -1
  115. package/src/tool/lateInterest/bibliography.ts +16 -0
  116. package/src/tool/lateInterest/entry.ts +2 -0
  117. package/src/tool/lateInterest/i18n/de.ts +3 -16
  118. package/src/tool/lateInterest/i18n/en.ts +3 -16
  119. package/src/tool/lateInterest/i18n/es.ts +3 -16
  120. package/src/tool/lateInterest/i18n/fr.ts +3 -16
  121. package/src/tool/lateInterest/i18n/id.ts +3 -16
  122. package/src/tool/lateInterest/i18n/it.ts +3 -16
  123. package/src/tool/lateInterest/i18n/ja.ts +3 -16
  124. package/src/tool/lateInterest/i18n/ko.ts +3 -16
  125. package/src/tool/lateInterest/i18n/nl.ts +3 -16
  126. package/src/tool/lateInterest/i18n/pl.ts +3 -16
  127. package/src/tool/lateInterest/i18n/pt.ts +3 -16
  128. package/src/tool/lateInterest/i18n/ru.ts +3 -16
  129. package/src/tool/lateInterest/i18n/sv.ts +3 -16
  130. package/src/tool/lateInterest/i18n/tr.ts +3 -16
  131. package/src/tool/lateInterest/i18n/zh.ts +3 -16
  132. package/src/tool/lateInterest/seo.astro +2 -1
  133. package/src/tool/legalInterestRate/bibliography.ts +16 -0
  134. package/src/tool/legalInterestRate/entry.ts +2 -0
  135. package/src/tool/legalInterestRate/i18n/de.ts +2 -18
  136. package/src/tool/legalInterestRate/i18n/en.ts +2 -22
  137. package/src/tool/legalInterestRate/i18n/es.ts +2 -22
  138. package/src/tool/legalInterestRate/i18n/fr.ts +2 -22
  139. package/src/tool/legalInterestRate/i18n/id.ts +2 -18
  140. package/src/tool/legalInterestRate/i18n/it.ts +2 -18
  141. package/src/tool/legalInterestRate/i18n/ja.ts +2 -18
  142. package/src/tool/legalInterestRate/i18n/ko.ts +2 -18
  143. package/src/tool/legalInterestRate/i18n/nl.ts +2 -18
  144. package/src/tool/legalInterestRate/i18n/pl.ts +2 -18
  145. package/src/tool/legalInterestRate/i18n/pt.ts +2 -18
  146. package/src/tool/legalInterestRate/i18n/ru.ts +2 -18
  147. package/src/tool/legalInterestRate/i18n/sv.ts +2 -18
  148. package/src/tool/legalInterestRate/i18n/tr.ts +2 -18
  149. package/src/tool/legalInterestRate/i18n/zh.ts +2 -18
  150. package/src/tool/legalInterestRate/seo.astro +2 -1
  151. package/src/tool/lotteryOptimizer/bibliography.ts +16 -0
  152. package/src/tool/lotteryOptimizer/entry.ts +2 -0
  153. package/src/tool/lotteryOptimizer/i18n/de.ts +2 -18
  154. package/src/tool/lotteryOptimizer/i18n/en.ts +2 -18
  155. package/src/tool/lotteryOptimizer/i18n/es.ts +2 -18
  156. package/src/tool/lotteryOptimizer/i18n/fr.ts +2 -18
  157. package/src/tool/lotteryOptimizer/i18n/id.ts +2 -18
  158. package/src/tool/lotteryOptimizer/i18n/it.ts +2 -18
  159. package/src/tool/lotteryOptimizer/i18n/ja.ts +2 -18
  160. package/src/tool/lotteryOptimizer/i18n/ko.ts +2 -18
  161. package/src/tool/lotteryOptimizer/i18n/nl.ts +2 -18
  162. package/src/tool/lotteryOptimizer/i18n/pl.ts +2 -18
  163. package/src/tool/lotteryOptimizer/i18n/pt.ts +2 -18
  164. package/src/tool/lotteryOptimizer/i18n/ru.ts +2 -18
  165. package/src/tool/lotteryOptimizer/i18n/sv.ts +2 -18
  166. package/src/tool/lotteryOptimizer/i18n/tr.ts +2 -18
  167. package/src/tool/lotteryOptimizer/i18n/zh.ts +2 -18
  168. package/src/tool/lotteryOptimizer/seo.astro +2 -1
  169. package/src/tool/lotteryOptimizer/spain-lottery-optimizer.css +524 -7
  170. package/src/tool/mortgage/bibliography.ts +20 -0
  171. package/src/tool/mortgage/entry.ts +2 -0
  172. package/src/tool/mortgage/i18n/de.ts +3 -16
  173. package/src/tool/mortgage/i18n/en.ts +3 -20
  174. package/src/tool/mortgage/i18n/es.ts +3 -20
  175. package/src/tool/mortgage/i18n/fr.ts +3 -20
  176. package/src/tool/mortgage/i18n/id.ts +3 -12
  177. package/src/tool/mortgage/i18n/it.ts +3 -16
  178. package/src/tool/mortgage/i18n/ja.ts +3 -12
  179. package/src/tool/mortgage/i18n/ko.ts +3 -12
  180. package/src/tool/mortgage/i18n/nl.ts +3 -12
  181. package/src/tool/mortgage/i18n/pl.ts +3 -12
  182. package/src/tool/mortgage/i18n/pt.ts +3 -12
  183. package/src/tool/mortgage/i18n/ru.ts +3 -12
  184. package/src/tool/mortgage/i18n/sv.ts +3 -12
  185. package/src/tool/mortgage/i18n/tr.ts +3 -12
  186. package/src/tool/mortgage/i18n/zh.ts +3 -12
  187. package/src/tool/mortgage/seo.astro +2 -1
  188. package/src/tool/percentageCalculator/bibliography.ts +16 -0
  189. package/src/tool/percentageCalculator/entry.ts +2 -0
  190. package/src/tool/percentageCalculator/i18n/de.ts +3 -12
  191. package/src/tool/percentageCalculator/i18n/en.ts +3 -16
  192. package/src/tool/percentageCalculator/i18n/es.ts +3 -16
  193. package/src/tool/percentageCalculator/i18n/fr.ts +3 -16
  194. package/src/tool/percentageCalculator/i18n/id.ts +3 -12
  195. package/src/tool/percentageCalculator/i18n/it.ts +3 -12
  196. package/src/tool/percentageCalculator/i18n/ja.ts +3 -12
  197. package/src/tool/percentageCalculator/i18n/ko.ts +3 -12
  198. package/src/tool/percentageCalculator/i18n/nl.ts +3 -12
  199. package/src/tool/percentageCalculator/i18n/pl.ts +3 -12
  200. package/src/tool/percentageCalculator/i18n/pt.ts +3 -12
  201. package/src/tool/percentageCalculator/i18n/ru.ts +3 -12
  202. package/src/tool/percentageCalculator/i18n/sv.ts +3 -12
  203. package/src/tool/percentageCalculator/i18n/tr.ts +3 -12
  204. package/src/tool/percentageCalculator/i18n/zh.ts +3 -12
  205. package/src/tool/percentageCalculator/percentage-calculator.css +20 -0
  206. package/src/tool/percentageCalculator/seo.astro +2 -1
  207. package/src/tool/rentIncreaseCalculator/bibliography.ts +16 -0
  208. package/src/tool/rentIncreaseCalculator/entry.ts +2 -0
  209. package/src/tool/rentIncreaseCalculator/i18n/de.ts +2 -18
  210. package/src/tool/rentIncreaseCalculator/i18n/en.ts +2 -18
  211. package/src/tool/rentIncreaseCalculator/i18n/es.ts +2 -18
  212. package/src/tool/rentIncreaseCalculator/i18n/fr.ts +2 -18
  213. package/src/tool/rentIncreaseCalculator/i18n/id.ts +2 -18
  214. package/src/tool/rentIncreaseCalculator/i18n/it.ts +2 -18
  215. package/src/tool/rentIncreaseCalculator/i18n/ja.ts +2 -18
  216. package/src/tool/rentIncreaseCalculator/i18n/ko.ts +2 -18
  217. package/src/tool/rentIncreaseCalculator/i18n/nl.ts +2 -18
  218. package/src/tool/rentIncreaseCalculator/i18n/pl.ts +2 -18
  219. package/src/tool/rentIncreaseCalculator/i18n/pt.ts +2 -18
  220. package/src/tool/rentIncreaseCalculator/i18n/ru.ts +2 -18
  221. package/src/tool/rentIncreaseCalculator/i18n/sv.ts +2 -18
  222. package/src/tool/rentIncreaseCalculator/i18n/tr.ts +2 -18
  223. package/src/tool/rentIncreaseCalculator/i18n/zh.ts +2 -18
  224. package/src/tool/rentIncreaseCalculator/seo.astro +2 -1
  225. package/src/types.ts +0 -2
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Undang-Undang 10/2012 tentang Biaya Pengadilan (Spanyol)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Putusan Mahkamah Konstitusi 140/2016 tentang Biaya Pengadilan',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Otoritas Pajak - Formulir 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Pertanyaan Umum',
115
- bibliographyTitle: 'Sumber dan Referensi',
116
100
  ui: {
117
101
  labelTitle: 'Kalkulator Biaya Pengadilan',
118
102
  labelDescription: 'Hitung jumlah persis Formulir 696 berdasarkan yurisdiksi dan prosedur. Untuk perusahaan dan profesional.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Legge 10/2012 sulle Tasse Giudiziarie (Spagna)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Sentenza TC 140/2016 sulle Tasse Giudiziarie',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Agenzia delle Entrate - Modello 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Domande Frequenti',
115
- bibliographyTitle: 'Fonti e Riferimenti',
116
100
  ui: {
117
101
  labelTitle: 'Calcolatore di Tasse Giudiziarie',
118
102
  labelDescription: 'Calcola l’importo esatto del Modello 696 per giurisdizione e procedimento. Per imprese e professionisti.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'スペイン裁判手数料法 10/2012',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: '裁判手数料に関する憲法裁判所判決 140/2016',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'スペイン税務局 - モデル 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'よくある質問',
115
- bibliographyTitle: '情報源とリファレンス',
116
100
  ui: {
117
101
  labelTitle: '裁判手数料計算機',
118
102
  labelDescription: '管轄、手続き、訴額に基づいてモデル696の正確な金額を計算します。スペインの企業および専門家向け。',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: '스페인 법원 수수료법 10/2012',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: '법원 수수료에 관한 헌법재판소 판결 140/2016',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: '스페인 세무국 - 모델 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: '자주 묻는 질문',
115
- bibliographyTitle: '출처 및 참고 자료',
116
100
  ui: {
117
101
  labelTitle: '법원 수수료 계산기',
118
102
  labelDescription: '관할, 절차 및 가액에 따른 모델 696의 정확한 금액을 계산합니다. 스페인 기업 및 전문가용.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Wet 10/2012 op Gerechtskosten (Spanje)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Uitspraak TC 140/2016 over gerechtskosten',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Belastingdienst - Model 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Veelgestelde Vragen',
115
- bibliographyTitle: 'Bronnen en Referenties',
116
100
  ui: {
117
101
  labelTitle: 'Gerechtskosten Calculator',
118
102
  labelDescription: 'Bereken het exacte bedrag voor Model 696 per jurisdictie en procedure. Voor bedrijven en professionals.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Ustawa 10/2012 o Opłatach Sądowych (Hiszpania)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Wyrok TC 140/2016 w sprawie Opłat Sądowych',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Urząd Skarbowy - Model 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Często zadawane pytania',
115
- bibliographyTitle: 'Źródła i odniesienia',
116
100
  ui: {
117
101
  labelTitle: 'Kalkulator Opłat Sądowych',
118
102
  labelDescription: 'Oblicz dokładną kwotę Modelu 696 według jurysdykcji i postępowania. Dla firm i profesjonalistów.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Lei 10/2012 de Taxas Judiciais (Espanha)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Acórdão TC 140/2016 sobre Taxas Judiciais',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Agência Tributária - Modelo 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Perguntas Frequentes',
115
- bibliographyTitle: 'Fontes e Referências',
116
100
  ui: {
117
101
  labelTitle: 'Calculadora de Taxas Judiciais',
118
102
  labelDescription: 'Calcule o valor exato do Modelo 696 por jurisdição e procedimento. Para empresas e profissionais.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Закон 10/2012 о судебных пошлинах (Испания)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Решение Конституционного суда 140/2016 о судебных пошлинах',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Налоговое агентство - форма 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Часто задаваемые вопросы',
115
- bibliographyTitle: 'Источники и ссылки',
116
100
  ui: {
117
101
  labelTitle: 'Калькулятор судебных пошлин',
118
102
  labelDescription: 'Рассчитайте точную сумму формы 696 по юрисдикции и процедуре. Для компаний и профессионалов.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: 'Lag 10/2012 om domstolsavgifter (Spanien)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Dom TC 140/2016 om domstolsavgifter',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Skattemyndigheten - Modell 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Vanliga frågor',
115
- bibliographyTitle: 'Källor och referenser',
116
100
  ui: {
117
101
  labelTitle: 'Kalkylator för domstolsavgifter',
118
102
  labelDescription: 'Beräkna det exakta beloppet för modell 696 baserat på jurisdiktion och förfarande. För företag och yrkesverksamma.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: '10/2012 Sayılı Mahkeme Harçları Kanunu (İspanya)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: 'Mahkeme Harçları Hakkında TC 140/2016 Sayılı Karar',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: 'Vergi Dairesi - Model 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: 'Sıkça Sorulan Sorular',
115
- bibliographyTitle: 'Kaynaklar ve Referanslar',
116
100
  ui: {
117
101
  labelTitle: 'Mahkeme Harçları Hesaplayıcı',
118
102
  labelDescription: 'Yargı koluna ve prosedüre göre Model 696’nın tam tutarını hesaplayın. Şirketler ve profesyoneller için.',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { CourtFeeCalculatorUI } from '../ui';
@@ -48,21 +49,6 @@ const howToData = [
48
49
  },
49
50
  ];
50
51
 
51
- const bibliographyData = [
52
- {
53
- name: '第 10/2012 号法院税法 (BOE)',
54
- url: 'https://www.boe.es/',
55
- },
56
- {
57
- name: '关于法院税的 TC 140/2016 判决',
58
- url: 'https://www.boe.es/',
59
- },
60
- {
61
- name: '税务局 - Model 696',
62
- url: 'https://sede.agenciatributaria.gob.es/',
63
- },
64
- ];
65
-
66
52
  const seoData = [
67
53
  {
68
54
  type: 'title',
@@ -111,8 +97,6 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
111
97
  slug,
112
98
  title,
113
99
  description,
114
- faqTitle: '常见问题',
115
- bibliographyTitle: '来源与参考资料',
116
100
  ui: {
117
101
  labelTitle: '法院税计算器',
118
102
  labelDescription: '根据管辖、程序和金额计算 Model 696 的准确金额。适用于西班牙公司和专业人士。',
@@ -146,7 +130,7 @@ export const content: ToolLocaleContent<CourtFeeCalculatorUI> = {
146
130
  },
147
131
  faq: faqData,
148
132
  howTo: howToData,
149
- bibliography: bibliographyData,
133
+ bibliography,
150
134
  seo: seoData,
151
135
  schemas: [faqSchema, howToSchema, appSchema],
152
136
  };
@@ -11,4 +11,5 @@ const { locale = 'es' } = Astro.props;
11
11
  const content = await courtFeeCalculator.i18n[locale]?.();
12
12
  if (!content) return null;
13
13
  ---
14
- <SEORenderer content={{ locale: locale as string, sections: content.seo }} />
14
+
15
+ {content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
@@ -0,0 +1,12 @@
1
+ import type { BibliographyEntry } from '../../types';
2
+
3
+ export const bibliography: BibliographyEntry[] = [
4
+ {
5
+ name: 'Investopedia — Debt Snowball vs. Debt Avalanche',
6
+ url: 'https://www.investopedia.com/',
7
+ },
8
+ {
9
+ name: 'Harvard Business Review — Research on Debt Payoff Strategies',
10
+ url: 'https://hbr.org/',
11
+ },
12
+ ];
@@ -29,3 +29,5 @@ export const debtSnowball: FinanceToolEntry<DebtSnowballUI> = {
29
29
  zh: () => import('./i18n/zh').then((m) => m.content),
30
30
  },
31
31
  };
32
+
33
+ export { bibliography } from './bibliography';
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { DebtSnowballUI } from '../ui';
@@ -44,17 +45,6 @@ const howToData = [
44
45
  },
45
46
  ];
46
47
 
47
- const bibliographyData = [
48
- {
49
- name: 'Investopedia — Debt Snowball vs. Debt Avalanche',
50
- url: 'https://www.investopedia.com/',
51
- },
52
- {
53
- name: 'Harvard Business Review — Research on Debt Payoff Strategies',
54
- url: 'https://hbr.org/',
55
- },
56
- ];
57
-
58
48
  const faqSchema: WithContext<FAQPage> = {
59
49
  '@context': 'https://schema.org',
60
50
  '@type': 'FAQPage',
@@ -91,10 +81,8 @@ export const content: ToolLocaleContent<DebtSnowballUI> = {
91
81
  slug,
92
82
  title,
93
83
  description,
94
- faqTitle: 'Häufig gestellte Fragen',
95
84
  faq: faqData,
96
- bibliographyTitle: 'Referenzen und Quellen',
97
- bibliography: bibliographyData,
85
+ bibliography,
98
86
  howTo: howToData,
99
87
  schemas: [faqSchema, howToSchema, appSchema],
100
88
  seo: [
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { DebtSnowballUI } from '../ui';
@@ -54,17 +55,6 @@ const howToData = [
54
55
  },
55
56
  ];
56
57
 
57
- const bibliographyData = [
58
- {
59
- name: 'Investopedia — Debt Snowball vs. Debt Avalanche',
60
- url: 'https://www.investopedia.com/articles/personal-finance/080716/debt-avalanche-vs-debt-snowball-which-best-you.asp',
61
- },
62
- {
63
- name: 'Harvard Business Review — Research on Debt Payoff Strategies',
64
- url: 'https://hbr.org/2016/12/research-the-best-strategy-for-paying-off-credit-card-debt',
65
- },
66
- ];
67
-
68
58
  const faqSchema: WithContext<FAQPage> = {
69
59
  '@context': 'https://schema.org',
70
60
  '@type': 'FAQPage',
@@ -103,10 +93,8 @@ export const content: ToolLocaleContent<DebtSnowballUI> = {
103
93
  slug,
104
94
  title,
105
95
  description,
106
- faqTitle: 'Frequently Asked Questions',
107
96
  faq: faqData,
108
- bibliographyTitle: 'Sources and References',
109
- bibliography: bibliographyData,
97
+ bibliography,
110
98
  howTo: howToData,
111
99
  schemas: [faqSchema, howToSchema, appSchema],
112
100
  seo: [
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { DebtSnowballUI } from '../ui';
@@ -54,17 +55,6 @@ const howToData = [
54
55
  },
55
56
  ];
56
57
 
57
- const bibliographyData = [
58
- {
59
- name: 'Investopedia — Debt Snowball vs. Debt Avalanche',
60
- url: 'https://www.investopedia.com/articles/personal-finance/080716/debt-avalanche-vs-debt-snowball-which-best-you.asp',
61
- },
62
- {
63
- name: 'Harvard Business Review — Research on Debt Payoff Strategies',
64
- url: 'https://hbr.org/2016/12/research-the-best-strategy-for-paying-off-credit-card-debt',
65
- },
66
- ];
67
-
68
58
  const faqSchema: WithContext<FAQPage> = {
69
59
  '@context': 'https://schema.org',
70
60
  '@type': 'FAQPage',
@@ -103,10 +93,8 @@ export const content: ToolLocaleContent<DebtSnowballUI> = {
103
93
  slug,
104
94
  title,
105
95
  description,
106
- faqTitle: 'Preguntas Frecuentes',
107
96
  faq: faqData,
108
- bibliographyTitle: 'Referencias y Fuentes',
109
- bibliography: bibliographyData,
97
+ bibliography,
110
98
  howTo: howToData,
111
99
  schemas: [faqSchema, howToSchema, appSchema],
112
100
  seo: [
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { DebtSnowballUI } from '../ui';
@@ -54,17 +55,6 @@ const howToData = [
54
55
  },
55
56
  ];
56
57
 
57
- const bibliographyData = [
58
- {
59
- name: 'Investopedia — Debt Snowball vs. Debt Avalanche',
60
- url: 'https://www.investopedia.com/articles/personal-finance/080716/debt-avalanche-vs-debt-snowball-which-best-you.asp',
61
- },
62
- {
63
- name: 'Harvard Business Review — Research on Debt Payoff Strategies',
64
- url: 'https://hbr.org/2016/12/research-the-best-strategy-for-paying-off-credit-card-debt',
65
- },
66
- ];
67
-
68
58
  const faqSchema: WithContext<FAQPage> = {
69
59
  '@context': 'https://schema.org',
70
60
  '@type': 'FAQPage',
@@ -103,10 +93,8 @@ export const content: ToolLocaleContent<DebtSnowballUI> = {
103
93
  slug,
104
94
  title,
105
95
  description,
106
- faqTitle: 'Questions Fréquemment Posées',
107
96
  faq: faqData,
108
- bibliographyTitle: 'Sources et Références',
109
- bibliography: bibliographyData,
97
+ bibliography,
110
98
  howTo: howToData,
111
99
  schemas: [faqSchema, howToSchema, appSchema],
112
100
  seo: [