cmdx 1.13.0 → 1.15.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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +92 -76
  3. data/LICENSE.txt +3 -20
  4. data/README.md +16 -8
  5. data/lib/cmdx/attribute.rb +42 -5
  6. data/lib/cmdx/context.rb +16 -0
  7. data/lib/cmdx/executor.rb +9 -9
  8. data/lib/cmdx/result.rb +27 -7
  9. data/lib/cmdx/task.rb +19 -0
  10. data/lib/cmdx/validator_registry.rb +1 -0
  11. data/lib/cmdx/validators/absence.rb +61 -0
  12. data/lib/cmdx/version.rb +1 -1
  13. data/lib/locales/af.yml +1 -0
  14. data/lib/locales/ar.yml +1 -0
  15. data/lib/locales/az.yml +1 -0
  16. data/lib/locales/be.yml +1 -0
  17. data/lib/locales/bg.yml +1 -0
  18. data/lib/locales/bn.yml +1 -0
  19. data/lib/locales/bs.yml +1 -0
  20. data/lib/locales/ca.yml +1 -0
  21. data/lib/locales/cnr.yml +1 -0
  22. data/lib/locales/cs.yml +1 -0
  23. data/lib/locales/cy.yml +1 -0
  24. data/lib/locales/da.yml +1 -0
  25. data/lib/locales/de.yml +1 -0
  26. data/lib/locales/dz.yml +1 -0
  27. data/lib/locales/el.yml +1 -0
  28. data/lib/locales/en.yml +1 -0
  29. data/lib/locales/eo.yml +1 -0
  30. data/lib/locales/es.yml +1 -0
  31. data/lib/locales/et.yml +1 -0
  32. data/lib/locales/eu.yml +1 -0
  33. data/lib/locales/fa.yml +1 -0
  34. data/lib/locales/fi.yml +1 -0
  35. data/lib/locales/fr.yml +1 -0
  36. data/lib/locales/fy.yml +1 -0
  37. data/lib/locales/gd.yml +1 -0
  38. data/lib/locales/gl.yml +1 -0
  39. data/lib/locales/he.yml +1 -0
  40. data/lib/locales/hi.yml +1 -0
  41. data/lib/locales/hr.yml +1 -0
  42. data/lib/locales/hu.yml +1 -0
  43. data/lib/locales/hy.yml +1 -0
  44. data/lib/locales/id.yml +1 -0
  45. data/lib/locales/is.yml +1 -0
  46. data/lib/locales/it.yml +1 -0
  47. data/lib/locales/ja.yml +1 -0
  48. data/lib/locales/ka.yml +1 -0
  49. data/lib/locales/kk.yml +1 -0
  50. data/lib/locales/km.yml +1 -0
  51. data/lib/locales/kn.yml +1 -0
  52. data/lib/locales/ko.yml +1 -0
  53. data/lib/locales/lb.yml +1 -0
  54. data/lib/locales/lo.yml +1 -0
  55. data/lib/locales/lt.yml +1 -0
  56. data/lib/locales/lv.yml +1 -0
  57. data/lib/locales/mg.yml +1 -0
  58. data/lib/locales/mk.yml +1 -0
  59. data/lib/locales/ml.yml +1 -0
  60. data/lib/locales/mn.yml +1 -0
  61. data/lib/locales/mr-IN.yml +1 -0
  62. data/lib/locales/ms.yml +1 -0
  63. data/lib/locales/nb.yml +1 -0
  64. data/lib/locales/ne.yml +1 -0
  65. data/lib/locales/nl.yml +1 -0
  66. data/lib/locales/nn.yml +1 -0
  67. data/lib/locales/oc.yml +1 -0
  68. data/lib/locales/or.yml +1 -0
  69. data/lib/locales/pa.yml +1 -0
  70. data/lib/locales/pl.yml +1 -0
  71. data/lib/locales/pt.yml +1 -0
  72. data/lib/locales/rm.yml +1 -0
  73. data/lib/locales/ro.yml +1 -0
  74. data/lib/locales/ru.yml +1 -0
  75. data/lib/locales/sc.yml +1 -0
  76. data/lib/locales/sk.yml +1 -0
  77. data/lib/locales/sl.yml +1 -0
  78. data/lib/locales/sq.yml +1 -0
  79. data/lib/locales/sr.yml +1 -0
  80. data/lib/locales/st.yml +1 -0
  81. data/lib/locales/sv.yml +1 -0
  82. data/lib/locales/sw.yml +1 -0
  83. data/lib/locales/ta.yml +1 -0
  84. data/lib/locales/te.yml +1 -0
  85. data/lib/locales/th.yml +1 -0
  86. data/lib/locales/tl.yml +1 -0
  87. data/lib/locales/tr.yml +1 -0
  88. data/lib/locales/tt.yml +1 -0
  89. data/lib/locales/ug.yml +1 -0
  90. data/lib/locales/uk.yml +1 -0
  91. data/lib/locales/ur.yml +1 -0
  92. data/lib/locales/uz.yml +1 -0
  93. data/lib/locales/vi.yml +1 -0
  94. data/lib/locales/wo.yml +1 -0
  95. data/lib/locales/zh-CN.yml +1 -0
  96. data/lib/locales/zh-HK.yml +1 -0
  97. data/lib/locales/zh-TW.yml +1 -0
  98. data/lib/locales/zh-YUE.yml +1 -0
  99. data/mkdocs.yml +65 -36
  100. metadata +4 -57
  101. data/.cursor/prompts/docs.md +0 -12
  102. data/.cursor/prompts/llms.md +0 -8
  103. data/.cursor/prompts/rspec.md +0 -24
  104. data/.cursor/prompts/yardoc.md +0 -15
  105. data/.cursor/rules/cursor-instructions.mdc +0 -68
  106. data/.irbrc +0 -18
  107. data/.rspec +0 -4
  108. data/.rubocop.yml +0 -95
  109. data/.ruby-version +0 -1
  110. data/.yard-lint.yml +0 -174
  111. data/.yardopts +0 -7
  112. data/docs/.DS_Store +0 -0
  113. data/docs/assets/favicon.ico +0 -0
  114. data/docs/assets/favicon.svg +0 -1
  115. data/docs/attributes/coercions.md +0 -155
  116. data/docs/attributes/defaults.md +0 -77
  117. data/docs/attributes/definitions.md +0 -283
  118. data/docs/attributes/naming.md +0 -68
  119. data/docs/attributes/transformations.md +0 -63
  120. data/docs/attributes/validations.md +0 -336
  121. data/docs/basics/chain.md +0 -108
  122. data/docs/basics/context.md +0 -121
  123. data/docs/basics/execution.md +0 -152
  124. data/docs/basics/setup.md +0 -107
  125. data/docs/callbacks.md +0 -157
  126. data/docs/configuration.md +0 -314
  127. data/docs/deprecation.md +0 -143
  128. data/docs/getting_started.md +0 -137
  129. data/docs/index.md +0 -134
  130. data/docs/internationalization.md +0 -126
  131. data/docs/interruptions/exceptions.md +0 -52
  132. data/docs/interruptions/faults.md +0 -169
  133. data/docs/interruptions/halt.md +0 -216
  134. data/docs/logging.md +0 -90
  135. data/docs/middlewares.md +0 -191
  136. data/docs/outcomes/result.md +0 -197
  137. data/docs/outcomes/states.md +0 -66
  138. data/docs/outcomes/statuses.md +0 -65
  139. data/docs/retries.md +0 -121
  140. data/docs/stylesheets/extra.css +0 -42
  141. data/docs/tips_and_tricks.md +0 -157
  142. data/docs/workflows.md +0 -226
  143. data/examples/active_record_database_transaction.md +0 -27
  144. data/examples/active_record_query_tagging.md +0 -46
  145. data/examples/flipper_feature_flags.md +0 -50
  146. data/examples/paper_trail_whatdunnit.md +0 -39
  147. data/examples/redis_idempotency.md +0 -71
  148. data/examples/sentry_error_tracking.md +0 -46
  149. data/examples/sidekiq_async_execution.md +0 -29
  150. data/examples/stoplight_circuit_breaker.md +0 -36
  151. data/src/cmdx-dark-logo.png +0 -0
  152. data/src/cmdx-favicon.svg +0 -1
  153. data/src/cmdx-light-logo.png +0 -0
  154. data/src/cmdx-logo.svg +0 -1
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CMDx
4
+ module Validators
5
+ # Validates that a value is absent or empty
6
+ #
7
+ # This validator ensures that the given value is nil, empty, or consists only of whitespace.
8
+ # It handles different value types appropriately:
9
+ # - Strings: checks for absence of non-whitespace characters
10
+ # - Collections: checks for empty collections
11
+ # - Other objects: checks for nil values
12
+ module Absence
13
+
14
+ extend self
15
+
16
+ # Validates that a value is absent or empty
17
+ #
18
+ # @param value [Object] The value to validate for absence
19
+ # @param options [Hash] Validation configuration options
20
+ # @option options [String] :message Custom error message
21
+ #
22
+ # @return [nil] Returns nil if validation passes
23
+ #
24
+ # @raise [ValidationError] When the value is present, not empty, or contains non-whitespace characters
25
+ #
26
+ # @example Validate string absence
27
+ # Absence.call("")
28
+ # # => nil (validation passes)
29
+ # @example Validate non-empty string
30
+ # Absence.call("hello")
31
+ # # => raises ValidationError
32
+ # @example Validate array absence
33
+ # Absence.call([])
34
+ # # => nil (validation passes)
35
+ # @example Validate non-empty array
36
+ # Absence.call([1, 2, 3])
37
+ # # => raises ValidationError
38
+ # @example Validate with custom message
39
+ # Absence.call("hello", message: "Value must be empty")
40
+ # # => raises ValidationError with custom message
41
+ #
42
+ # @rbs (untyped value, ?Hash[Symbol, untyped] options) -> nil
43
+ def call(value, options = {})
44
+ match =
45
+ if value.is_a?(String)
46
+ /\S/.match?(value)
47
+ elsif value.respond_to?(:empty?)
48
+ !value.empty?
49
+ else
50
+ !value.nil?
51
+ end
52
+
53
+ return unless match
54
+
55
+ message = options[:message] if options.is_a?(Hash)
56
+ raise ValidationError, message || Locale.t("cmdx.validators.absence")
57
+ end
58
+
59
+ end
60
+ end
61
+ end
data/lib/cmdx/version.rb CHANGED
@@ -5,6 +5,6 @@ module CMDx
5
5
  # @return [String] the version of the CMDx gem
6
6
  #
7
7
  # @rbs return: String
8
- VERSION = "1.13.0"
8
+ VERSION = "1.15.0"
9
9
 
10
10
  end
data/lib/locales/af.yml CHANGED
@@ -26,6 +26,7 @@ af:
26
26
  symbol: "simbool"
27
27
  time: "tyd"
28
28
  validators:
29
+ absence: "moet leeg wees"
29
30
  exclusion:
30
31
  of: "moet nie een van wees nie: %{values}"
31
32
  within: "moet nie binne %{min} en %{max} wees nie"
data/lib/locales/ar.yml CHANGED
@@ -26,6 +26,7 @@ ar:
26
26
  symbol: "رمز"
27
27
  time: "الوقت"
28
28
  validators:
29
+ absence: "يجب أن يكون فارغاً"
29
30
  exclusion:
30
31
  of: "يجب ألا يكون واحداً من: %{values}"
31
32
  within: "يجب ألا يكون بين %{min} و %{max}"
data/lib/locales/az.yml CHANGED
@@ -26,6 +26,7 @@ az:
26
26
  symbol: "simvol"
27
27
  time: "vaxt"
28
28
  validators:
29
+ absence: "boş olmalıdır"
29
30
  exclusion:
30
31
  of: "aşağıdakılardan biri ola bilməz: %{values}"
31
32
  within: "%{min} və %{max} arasında ola bilməz"
data/lib/locales/be.yml CHANGED
@@ -26,6 +26,7 @@ be:
26
26
  symbol: "сімвал"
27
27
  time: "час"
28
28
  validators:
29
+ absence: "павінна быць пустым"
29
30
  exclusion:
30
31
  of: "не можа быць адным з: %{values}"
31
32
  within: "не можа быць паміж %{min} і %{max}"
data/lib/locales/bg.yml CHANGED
@@ -26,6 +26,7 @@ bg:
26
26
  symbol: "символ"
27
27
  time: "час"
28
28
  validators:
29
+ absence: "трябва да бъде празно"
29
30
  exclusion:
30
31
  of: "не може да бъде един от: %{values}"
31
32
  within: "не може да бъде между %{min} и %{max}"
data/lib/locales/bn.yml CHANGED
@@ -26,6 +26,7 @@ bn:
26
26
  symbol: "প্রতীক"
27
27
  time: "সময়"
28
28
  validators:
29
+ absence: "খালি হতে হবে"
29
30
  exclusion:
30
31
  of: "নিম্নলিখিতগুলির মধ্যে একটি হতে পারবে না: %{values}"
31
32
  within: "%{min} এবং %{max} এর মধ্যে থাকতে পারবে না"
data/lib/locales/bs.yml CHANGED
@@ -26,6 +26,7 @@ bs:
26
26
  symbol: "simbol"
27
27
  time: "vrijeme"
28
28
  validators:
29
+ absence: "mora biti prazno"
29
30
  exclusion:
30
31
  of: "ne smije biti jedan od: %{values}"
31
32
  within: "ne smije biti između %{min} i %{max}"
data/lib/locales/ca.yml CHANGED
@@ -26,6 +26,7 @@ ca:
26
26
  symbol: "símbol"
27
27
  time: "temps"
28
28
  validators:
29
+ absence: "ha d'estar buit"
29
30
  exclusion:
30
31
  of: "no ha de ser un de: %{values}"
31
32
  within: "no ha d'estar entre %{min} i %{max}"
data/lib/locales/cnr.yml CHANGED
@@ -26,6 +26,7 @@ cnr:
26
26
  symbol: "simbol"
27
27
  time: "vrijeme"
28
28
  validators:
29
+ absence: "mora biti prazan"
29
30
  exclusion:
30
31
  of: "ne smije biti jedan od: %{values}"
31
32
  within: "ne smije biti između %{min} i %{max}"
data/lib/locales/cs.yml CHANGED
@@ -26,6 +26,7 @@ cs:
26
26
  symbol: "symbol"
27
27
  time: "čas"
28
28
  validators:
29
+ absence: "musí být prázdné"
29
30
  exclusion:
30
31
  of: "nesmí být jedním z: %{values}"
31
32
  within: "nesmí být mezi %{min} a %{max}"
data/lib/locales/cy.yml CHANGED
@@ -26,6 +26,7 @@ cy:
26
26
  symbol: "symbol"
27
27
  time: "amser"
28
28
  validators:
29
+ absence: "rhaid iddo fod yn wag"
29
30
  exclusion:
30
31
  of: "ni all fod yn un o: %{values}"
31
32
  within: "ni all fod rhwng %{min} a %{max}"
data/lib/locales/da.yml CHANGED
@@ -26,6 +26,7 @@ da:
26
26
  symbol: "symbol"
27
27
  time: "tid"
28
28
  validators:
29
+ absence: "skal være tom"
29
30
  exclusion:
30
31
  of: "må ikke være en af: %{values}"
31
32
  within: "må ikke være mellem %{min} og %{max}"
data/lib/locales/de.yml CHANGED
@@ -26,6 +26,7 @@ de:
26
26
  symbol: "Symbol"
27
27
  time: "Zeit"
28
28
  validators:
29
+ absence: "muss leer sein"
29
30
  exclusion:
30
31
  of: "darf nicht einer von sein: %{values}"
31
32
  within: "darf nicht zwischen %{min} und %{max} liegen"
data/lib/locales/dz.yml CHANGED
@@ -26,6 +26,7 @@ dz:
26
26
  symbol: "མཚན་མ།"
27
27
  time: "དུས་ཚིགས།"
28
28
  validators:
29
+ absence: "སྟོང་པོ་ཆོག་པ་ཆེད་དགོས།"
29
30
  exclusion:
30
31
  of: "འདི་ཚོའི་ནང་ནས་གཅིག་མི་ཆོག %{values}"
31
32
  within: "%{min} དང་ %{max} ཡབ་ཡུམ་ནས་མི་ཆོག"
data/lib/locales/el.yml CHANGED
@@ -26,6 +26,7 @@ el:
26
26
  symbol: "σύμβολο"
27
27
  time: "ώρα"
28
28
  validators:
29
+ absence: "πρέπει να είναι κενό"
29
30
  exclusion:
30
31
  of: "δεν πρέπει να είναι ένα από: %{values}"
31
32
  within: "δεν πρέπει να είναι μεταξύ %{min} και %{max}"
data/lib/locales/en.yml CHANGED
@@ -26,6 +26,7 @@ en:
26
26
  symbol: "symbol"
27
27
  time: "time"
28
28
  validators:
29
+ absence: "must be empty"
29
30
  exclusion:
30
31
  of: "must not be one of: %{values}"
31
32
  within: "must not be within %{min} and %{max}"
data/lib/locales/eo.yml CHANGED
@@ -26,6 +26,7 @@ eo:
26
26
  symbol: "simbolo"
27
27
  time: "tempo"
28
28
  validators:
29
+ absence: "devas esti malplena"
29
30
  exclusion:
30
31
  of: "ne devas esti unu el: %{values}"
31
32
  within: "ne devas esti inter %{min} kaj %{max}"
data/lib/locales/es.yml CHANGED
@@ -26,6 +26,7 @@ es:
26
26
  symbol: "símbolo"
27
27
  time: "tiempo"
28
28
  validators:
29
+ absence: "debe estar vacío"
29
30
  exclusion:
30
31
  of: "no debe ser uno de: %{values}"
31
32
  within: "no debe estar dentro de %{min} y %{max}"
data/lib/locales/et.yml CHANGED
@@ -26,6 +26,7 @@ et:
26
26
  symbol: "sümbol"
27
27
  time: "aeg"
28
28
  validators:
29
+ absence: "peab olema tühi"
29
30
  exclusion:
30
31
  of: "ei tohi olla üks järgmistest: %{values}"
31
32
  within: "ei tohi olla %{min} ja %{max} vahel"
data/lib/locales/eu.yml CHANGED
@@ -26,6 +26,7 @@ eu:
26
26
  symbol: "ikurra"
27
27
  time: "ordua"
28
28
  validators:
29
+ absence: "hutsik izan behar du"
29
30
  exclusion:
30
31
  of: "ezin da honetako bat izan: %{values}"
31
32
  within: "ezin da %{min} eta %{max} artean izan"
data/lib/locales/fa.yml CHANGED
@@ -26,6 +26,7 @@ fa:
26
26
  symbol: "نماد"
27
27
  time: "زمان"
28
28
  validators:
29
+ absence: "باید خالی باشد"
29
30
  exclusion:
30
31
  of: "نباید یکی از اینها باشد: %{values}"
31
32
  within: "نباید بین %{min} و %{max} باشد"
data/lib/locales/fi.yml CHANGED
@@ -26,6 +26,7 @@ fi:
26
26
  symbol: "symboli"
27
27
  time: "aika"
28
28
  validators:
29
+ absence: "täytyy olla tyhjä"
29
30
  exclusion:
30
31
  of: "ei saa olla yksi seuraavista: %{values}"
31
32
  within: "ei saa olla välillä %{min} ja %{max}"
data/lib/locales/fr.yml CHANGED
@@ -26,6 +26,7 @@ fr:
26
26
  symbol: "symbole"
27
27
  time: "heure"
28
28
  validators:
29
+ absence: "doit être vide"
29
30
  exclusion:
30
31
  of: "ne doit pas être l'un de : %{values}"
31
32
  within: "ne doit pas être dans %{min} et %{max}"
data/lib/locales/fy.yml CHANGED
@@ -26,6 +26,7 @@ fy:
26
26
  symbol: "symboal"
27
27
  time: "tiid"
28
28
  validators:
29
+ absence: "moat leech wêze"
29
30
  exclusion:
30
31
  of: "moat net ien fan wêze: %{values}"
31
32
  within: "moat net binnen %{min} en %{max} wêze"
data/lib/locales/gd.yml CHANGED
@@ -26,6 +26,7 @@ gd:
26
26
  symbol: "samhla"
27
27
  time: "àm"
28
28
  validators:
29
+ absence: "feumaidh e a bhith falamh"
29
30
  exclusion:
30
31
  of: "chan fhaod a bhith aon de: %{values}"
31
32
  within: "chan fhaod a bhith taobh a-staigh %{min} agus %{max}"
data/lib/locales/gl.yml CHANGED
@@ -26,6 +26,7 @@ gl:
26
26
  symbol: "símbolo"
27
27
  time: "tempo"
28
28
  validators:
29
+ absence: "debe estar baleiro"
29
30
  exclusion:
30
31
  of: "non debe ser un de: %{values}"
31
32
  within: "non debe estar entre %{min} e %{max}"
data/lib/locales/he.yml CHANGED
@@ -26,6 +26,7 @@ he:
26
26
  symbol: "סמל"
27
27
  time: "זמן"
28
28
  validators:
29
+ absence: "חייב להיות ריק"
29
30
  exclusion:
30
31
  of: "לא יכול להיות אחד מ: %{values}"
31
32
  within: "לא יכול להיות בין %{min} ו-%{max}"
data/lib/locales/hi.yml CHANGED
@@ -26,6 +26,7 @@ hi:
26
26
  symbol: "प्रतीक"
27
27
  time: "समय"
28
28
  validators:
29
+ absence: "खाली होना चाहिए"
29
30
  exclusion:
30
31
  of: "निम्नलिखित में से कोई नहीं होना चाहिए: %{values}"
31
32
  within: "%{min} और %{max} के बीच नहीं होना चाहिए"
data/lib/locales/hr.yml CHANGED
@@ -26,6 +26,7 @@ hr:
26
26
  symbol: "simbol"
27
27
  time: "vrijeme"
28
28
  validators:
29
+ absence: "mora biti prazno"
29
30
  exclusion:
30
31
  of: "ne smije biti jedan od: %{values}"
31
32
  within: "ne smije biti između %{min} i %{max}"
data/lib/locales/hu.yml CHANGED
@@ -26,6 +26,7 @@ hu:
26
26
  symbol: "szimbólum"
27
27
  time: "idő"
28
28
  validators:
29
+ absence: "üresnek kell lennie"
29
30
  exclusion:
30
31
  of: "nem lehet egyike a következőknek: %{values}"
31
32
  within: "nem lehet %{min} és %{max} között"
data/lib/locales/hy.yml CHANGED
@@ -26,6 +26,7 @@ hy:
26
26
  symbol: "սիմվոլ"
27
27
  time: "ժամանակ"
28
28
  validators:
29
+ absence: "պdelays delays delays delays delays է delays delaysdelays delays delays delays"
29
30
  exclusion:
30
31
  of: "չի կարող լինել հետևյալներից մեկը: %{values}"
31
32
  within: "չի կարող լինել %{min} և %{max} միջև"
data/lib/locales/id.yml CHANGED
@@ -26,6 +26,7 @@ id:
26
26
  symbol: "simbol"
27
27
  time: "waktu"
28
28
  validators:
29
+ absence: "harus kosong"
29
30
  exclusion:
30
31
  of: "tidak boleh salah satu dari: %{values}"
31
32
  within: "tidak boleh di antara %{min} dan %{max}"
data/lib/locales/is.yml CHANGED
@@ -26,6 +26,7 @@ is:
26
26
  symbol: "tákn"
27
27
  time: "tími"
28
28
  validators:
29
+ absence: "verður að vera tómt"
29
30
  exclusion:
30
31
  of: "má ekki vera einn af: %{values}"
31
32
  within: "má ekki vera á milli %{min} og %{max}"
data/lib/locales/it.yml CHANGED
@@ -26,6 +26,7 @@ it:
26
26
  symbol: "simbolo"
27
27
  time: "tempo"
28
28
  validators:
29
+ absence: "deve essere vuoto"
29
30
  exclusion:
30
31
  of: "non deve essere uno di: %{values}"
31
32
  within: "non deve essere tra %{min} e %{max}"
data/lib/locales/ja.yml CHANGED
@@ -26,6 +26,7 @@ ja:
26
26
  symbol: "シンボル"
27
27
  time: "時刻"
28
28
  validators:
29
+ absence: "空でなければなりません"
29
30
  exclusion:
30
31
  of: "次のいずれかであってはなりません: %{values}"
31
32
  within: "%{min} と %{max} の間であってはなりません"
data/lib/locales/ka.yml CHANGED
@@ -26,6 +26,7 @@ ka:
26
26
  symbol: "სიმბოლო"
27
27
  time: "დრო"
28
28
  validators:
29
+ absence: "უნდა იყოს ცარიელი"
29
30
  exclusion:
30
31
  of: "არ უნდა იყოს ერთ-ერთი: %{values}"
31
32
  within: "არ უნდა იყოს %{min} და %{max} შორის"
data/lib/locales/kk.yml CHANGED
@@ -26,6 +26,7 @@ kk:
26
26
  symbol: "символ"
27
27
  time: "уақыт"
28
28
  validators:
29
+ absence: "бос болуы керек"
29
30
  exclusion:
30
31
  of: "бұлардың бірі болмасын: %{values}"
31
32
  within: "%{min} және %{max} арасында болмасын"
data/lib/locales/km.yml CHANGED
@@ -26,6 +26,7 @@ km:
26
26
  symbol: "និមិត្តសញ្ញា"
27
27
  time: "ពេលវេលា"
28
28
  validators:
29
+ absence: "ត្រូវតែទទេរ"
29
30
  exclusion:
30
31
  of: "មិនត្រូវតែជាមួយក្នុងចំណោម: %{values} ទេ"
31
32
  within: "មិនត្រូវតែនៅចន្លោះ %{min} និង %{max} ទេ"
data/lib/locales/kn.yml CHANGED
@@ -26,6 +26,7 @@ kn:
26
26
  symbol: "ಚಿಹ್ನೆ"
27
27
  time: "ಸಮಯ"
28
28
  validators:
29
+ absence: "ಖಾಲಿಯಾಗಿರಬೇಕು"
29
30
  exclusion:
30
31
  of: "ಈ ಕೆಳಗಿನವುಗಳಲ್ಲಿ ಒಂದಾಗಿರಬಾರದು: %{values}"
31
32
  within: "%{min} ಮತ್ತು %{max} ನಡುವೆ ಇರಬಾರದು"
data/lib/locales/ko.yml CHANGED
@@ -26,6 +26,7 @@ ko:
26
26
  symbol: "심볼"
27
27
  time: "시간"
28
28
  validators:
29
+ absence: "비어있어야 합니다"
29
30
  exclusion:
30
31
  of: "다음 중 하나가 아니어야 합니다: %{values}"
31
32
  within: "%{min}과 %{max} 사이에 있으면 안 됩니다"
data/lib/locales/lb.yml CHANGED
@@ -26,6 +26,7 @@ lb:
26
26
  symbol: "Symbol"
27
27
  time: "Zäit"
28
28
  validators:
29
+ absence: "muss eidel sinn"
29
30
  exclusion:
30
31
  of: "däerf net ee vun dësen sinn: %{values}"
31
32
  within: "däerf net tëscht %{min} an %{max} sinn"
data/lib/locales/lo.yml CHANGED
@@ -26,6 +26,7 @@ lo:
26
26
  symbol: "ສັນຍະລັກ"
27
27
  time: "ເວລາ"
28
28
  validators:
29
+ absence: "ຕ້ອງເປັນຄ່າວ່າງ"
29
30
  exclusion:
30
31
  of: "ບໍ່ຕ້ອງເປັນອັນໃດອັນໜຶ່ງໃນ: %{values}"
31
32
  within: "ບໍ່ຕ້ອງຢູ່ໃນຊ່ວງ %{min} ແລະ %{max}"
data/lib/locales/lt.yml CHANGED
@@ -26,6 +26,7 @@ lt:
26
26
  symbol: "simbolis"
27
27
  time: "laikas"
28
28
  validators:
29
+ absence: "turi būti tuščias"
29
30
  exclusion:
30
31
  of: "neturi būti vienas iš: %{values}"
31
32
  within: "neturi būti tarp %{min} ir %{max}"
data/lib/locales/lv.yml CHANGED
@@ -26,6 +26,7 @@ lv:
26
26
  symbol: "simbols"
27
27
  time: "laiks"
28
28
  validators:
29
+ absence: "jābūt tukšam"
29
30
  exclusion:
30
31
  of: "nedrīkst būt viens no: %{values}"
31
32
  within: "nedrīkst būt starp %{min} un %{max}"
data/lib/locales/mg.yml CHANGED
@@ -26,6 +26,7 @@ mg:
26
26
  symbol: "mariky"
27
27
  time: "ora"
28
28
  validators:
29
+ absence: "tsy maintsy ho banga"
29
30
  exclusion:
30
31
  of: "tsy maintsy ho iray amin'ireo: %{values}"
31
32
  within: "tsy maintsy ho eo anelanelan'ny %{min} sy %{max}"
data/lib/locales/mk.yml CHANGED
@@ -26,6 +26,7 @@ mk:
26
26
  symbol: "симбол"
27
27
  time: "време"
28
28
  validators:
29
+ absence: "мора да биде празно"
29
30
  exclusion:
30
31
  of: "не смее да биде еден од: %{values}"
31
32
  within: "не смее да биде помеѓу %{min} и %{max}"
data/lib/locales/ml.yml CHANGED
@@ -26,6 +26,7 @@ ml:
26
26
  symbol: "ചിഹ്നം"
27
27
  time: "സമയം"
28
28
  validators:
29
+ absence: "ശൂന്യമായിരിക്കണം"
29
30
  exclusion:
30
31
  of: "ഇനിപ്പറയുന്നവയിൽ ഒന്നാകാൻ പാടില്ല: %{values}"
31
32
  within: "%{min} ഉം %{max} ഉം തമ്മിൽ ആകാൻ പാടില്ല"
data/lib/locales/mn.yml CHANGED
@@ -26,6 +26,7 @@ mn:
26
26
  symbol: "тэмдэг"
27
27
  time: "цаг"
28
28
  validators:
29
+ absence: "хоосон байх ёстой"
29
30
  exclusion:
30
31
  of: "дараах зүйлсийн аль нэг байж болохгүй: %{values}"
31
32
  within: "%{min} ба %{max} хооронд байж болохгүй"
@@ -26,6 +26,7 @@ mr-IN:
26
26
  symbol: "चिन्ह"
27
27
  time: "वेळ"
28
28
  validators:
29
+ absence: "रिक्त असणे आवश्यक आहे"
29
30
  exclusion:
30
31
  of: "खालीलपैकी एक असू शकत नाही: %{values}"
31
32
  within: "%{min} आणि %{max} दरम्यान असू शकत नाही"
data/lib/locales/ms.yml CHANGED
@@ -26,6 +26,7 @@ ms:
26
26
  symbol: "simbol"
27
27
  time: "masa"
28
28
  validators:
29
+ absence: "mesti kosong"
29
30
  exclusion:
30
31
  of: "tidak boleh menjadi salah satu daripada: %{values}"
31
32
  within: "tidak boleh berada di antara %{min} dan %{max}"
data/lib/locales/nb.yml CHANGED
@@ -26,6 +26,7 @@ nb:
26
26
  symbol: "symbol"
27
27
  time: "tid"
28
28
  validators:
29
+ absence: "må være tom"
29
30
  exclusion:
30
31
  of: "må ikke være en av: %{values}"
31
32
  within: "må ikke være mellom %{min} og %{max}"
data/lib/locales/ne.yml CHANGED
@@ -26,6 +26,7 @@ ne:
26
26
  symbol: "प्रतीक"
27
27
  time: "समय"
28
28
  validators:
29
+ absence: "खाली हुनुपर्छ"
29
30
  exclusion:
30
31
  of: "निम्न मध्ये एउटा हुन सक्दैन: %{values}"
31
32
  within: "%{min} र %{max} बीचमा हुन सक्दैन"
data/lib/locales/nl.yml CHANGED
@@ -26,6 +26,7 @@ nl:
26
26
  symbol: "symbool"
27
27
  time: "tijd"
28
28
  validators:
29
+ absence: "moet leeg zijn"
29
30
  exclusion:
30
31
  of: "mag niet een van zijn: %{values}"
31
32
  within: "mag niet tussen %{min} en %{max} liggen"
data/lib/locales/nn.yml CHANGED
@@ -26,6 +26,7 @@ nn:
26
26
  symbol: "symbol"
27
27
  time: "tid"
28
28
  validators:
29
+ absence: "må vere tom"
29
30
  exclusion:
30
31
  of: "må ikkje vere ein av: %{values}"
31
32
  within: "må ikkje vere innanfor %{min} og %{max}"
data/lib/locales/oc.yml CHANGED
@@ -26,6 +26,7 @@ oc:
26
26
  symbol: "simbol"
27
27
  time: "ora"
28
28
  validators:
29
+ absence: "deu èsser void"
29
30
  exclusion:
30
31
  of: "deu pas èsser un de: %{values}"
31
32
  within: "deu pas èsser entre %{min} e %{max}"
data/lib/locales/or.yml CHANGED
@@ -26,6 +26,7 @@ or:
26
26
  symbol: "ପ୍ରତୀକ"
27
27
  time: "ସମୟ"
28
28
  validators:
29
+ absence: "ଖାଲି ହୋଇଥିବା ଆବଶ୍ୟକ"
29
30
  exclusion:
30
31
  of: "ନିମ୍ନଲିଖିତ ମଧ୍ୟରୁ ଗୋଟିଏ ହୋଇପାରିବ ନାହିଁ: %{values}"
31
32
  within: "%{min} ଏବଂ %{max} ମଧ୍ୟରେ ହୋଇପାରିବ ନାହିଁ"
data/lib/locales/pa.yml CHANGED
@@ -26,6 +26,7 @@ pa:
26
26
  symbol: "ਚਿੰਨ੍ਹ"
27
27
  time: "ਸਮਾਂ"
28
28
  validators:
29
+ absence: "ਖਾਲੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ"
29
30
  exclusion:
30
31
  of: "ਹੇਠਾਂ ਦਿੱਤੇ ਗਏ ਵਿੱਚੋਂ ਕੋਈ ਇੱਕ ਨਹੀਂ ਹੋ ਸਕਦਾ: %{values}"
31
32
  within: "%{min} ਅਤੇ %{max} ਦੇ ਵਿਚਕਾਰ ਨਹੀਂ ਹੋ ਸਕਦਾ"
data/lib/locales/pl.yml CHANGED
@@ -26,6 +26,7 @@ pl:
26
26
  symbol: "symbol"
27
27
  time: "czas"
28
28
  validators:
29
+ absence: "musi być puste"
29
30
  exclusion:
30
31
  of: "nie może być jednym z: %{values}"
31
32
  within: "nie może być między %{min} a %{max}"
data/lib/locales/pt.yml CHANGED
@@ -26,6 +26,7 @@ pt:
26
26
  symbol: "símbolo"
27
27
  time: "tempo"
28
28
  validators:
29
+ absence: "deve estar vazio"
29
30
  exclusion:
30
31
  of: "não deve ser um de: %{values}"
31
32
  within: "não deve estar entre %{min} e %{max}"
data/lib/locales/rm.yml CHANGED
@@ -26,6 +26,7 @@ rm:
26
26
  symbol: "simbol"
27
27
  time: "ura"
28
28
  validators:
29
+ absence: "stoscha esser vid"
29
30
  exclusion:
30
31
  of: "na dastga betg esser in da: %{values}"
31
32
  within: "na dastga betg esser tranter %{min} e %{max}"
data/lib/locales/ro.yml CHANGED
@@ -26,6 +26,7 @@ ro:
26
26
  symbol: "simbol"
27
27
  time: "timp"
28
28
  validators:
29
+ absence: "trebuie să fie gol"
29
30
  exclusion:
30
31
  of: "nu trebuie să fie unul din: %{values}"
31
32
  within: "nu trebuie să fie între %{min} și %{max}"