card 1.101.0 → 1.101.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/config/locales/en.yml +9 -6
  4. data/db/migrate_core_cards/data/decko_logo.svg +1 -59
  5. data/lib/card.rb +3 -0
  6. data/lib/card/content/diff/result.rb +40 -29
  7. data/lib/card/env.rb +2 -2
  8. data/lib/card/model/save_helper.rb +16 -182
  9. data/lib/card/model/save_helper/save_arguments.rb +94 -0
  10. data/lib/card/model/save_helper/save_helper_helper.rb +93 -0
  11. data/lib/card/name/all.rb +125 -0
  12. data/lib/card/name/all/class_methods.rb +28 -0
  13. data/lib/card/name/all/descendants.rb +46 -0
  14. data/lib/card/name/all/parts.rb +67 -0
  15. data/lib/card/query.rb +7 -2
  16. data/lib/card/query/card_query/interpretation.rb +2 -2
  17. data/lib/card/query/card_query/sorting.rb +12 -4
  18. data/lib/card/query/sql_statement.rb +1 -1
  19. data/lib/card/set/advanced_api.rb +8 -5
  20. data/lib/card/set/event/options.rb +13 -5
  21. data/lib/card/set/format.rb +16 -9
  22. data/lib/card/set/trait.rb +11 -8
  23. data/lib/card/subcards/add.rb +3 -24
  24. data/lib/card/subcards/args.rb +42 -0
  25. data/lib/card/tasks/card/file_card_creator/output_helper.rb +15 -10
  26. data/lib/card/view/options.rb +2 -1
  27. data/lib/card/view/permission.rb +14 -3
  28. data/lib/cardio.rb +9 -66
  29. data/lib/cardio/defaults.yml +70 -0
  30. data/lib/cardio/migration.rb +1 -1
  31. data/mod/core/set/all/assign_attributes.rb +8 -21
  32. data/mod/core/set/all/initialize.rb +9 -9
  33. data/mod/core/set/all/name_events.rb +3 -1
  34. data/mod/core/set/all/references.rb +2 -2
  35. data/mod/{settings → core}/set/right/autoname.rb +0 -0
  36. data/mod/{settings → core}/set/self/autoname.rb +0 -0
  37. data/mod/core/set/type/cardtype.rb +28 -0
  38. data/mod/{standard → core}/spec/set/type/cardtype_spec.rb +3 -24
  39. data/mod/standard/file/logo/image-original.svg +1 -59
  40. metadata +16 -27
  41. data/config/initializers/uuid_state_file.rb +0 -3
  42. data/mod/Modfile +0 -4
  43. data/mod/core/set/all/name.rb +0 -229
  44. data/mod/core/spec/set/all/name_spec.rb +0 -11
  45. data/mod/standard/set/all/rich_html/html_views/info.rb +0 -84
  46. data/mod/standard/set/type/cardtype.rb +0 -119
@@ -0,0 +1,70 @@
1
+ ---
2
+ # if you disable inline styles tinymce's formatting options stop working
3
+ :allow_inline_styles: true
4
+ :delaying:
5
+
6
+ token_expiry: !ruby/object:ActiveSupport::Duration
7
+ value: 172800
8
+ parts:
9
+ :days: 2
10
+
11
+ :recaptcha_public_key: # deprecated; use recaptcha_site_key instead
12
+ :recaptcha_private_key: # deprecated; use recaptcha_secret_key instead
13
+
14
+ :recaptcha_proxy:
15
+ :recaptcha_site_key:
16
+ :recaptcha_secret_key:
17
+ :recaptcha_minimum_score: 0.5
18
+
19
+ :google_analytics_key:
20
+
21
+ :override_host:
22
+ :override_protocol:
23
+
24
+ :no_authentication: false
25
+ :files_web_path: files
26
+
27
+ :max_char_count: 200
28
+ :max_depth: 20
29
+ :email_defaults:
30
+
31
+ :acts_per_page: 10
32
+ :space_last_in_multispace: true
33
+ :closed_search_limit: 10
34
+ :paging_limit: 20
35
+
36
+ :non_createable_types:
37
+ - - signup
38
+ - setting
39
+ - set
40
+ - session
41
+ - bootswatch_skin
42
+ - customized_bootswatch_skin
43
+
44
+ :view_cache: false
45
+ :rss_enabled: false
46
+ :double_click: :signed_in
47
+
48
+ :encoding: utf-8
49
+ :request_logger: false
50
+ :performance_logger: false
51
+ :sql_comments: true
52
+
53
+ :file_storage: :local
54
+ :file_buckets: {}
55
+ :file_default_bucket:
56
+ :protocol_and_host:
57
+
58
+ :rich_text_editor: :tinymce
59
+
60
+ :persistent_cache: true
61
+ :prepopulate_cache: false
62
+ :machine_refresh: :cautious
63
+ :compress_javascript: true
64
+
65
+ :allow_irreversible_admin_tasks: false
66
+ :raise_all_rendering_errors: false
67
+ :rescue_all_in_controller: true
68
+ :navbox_match_start_only: true
69
+
70
+ :cache_set_module_list: false
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Cardio
4
4
  class Migration < ActiveRecord::Migration[4.2]
5
- # include Card::Model::SaveHelper
5
+ include Card::Model::SaveHelper
6
6
  @type = :deck_cards
7
7
 
8
8
  class << self
@@ -1,3 +1,4 @@
1
+ include Card::Subcards::Args
1
2
 
2
3
  def assign_attributes args={}
3
4
  args = prepare_assignment_args args
@@ -16,20 +17,6 @@ def assign_set_specific_attributes
16
17
  end
17
18
  end
18
19
 
19
- def extract_subcard_args! args
20
- subcards = args.delete("subcards") || args.delete(:subcards) || {}
21
- if (subfields = args.delete("subfields") || args.delete(:subfields))
22
- subfields.each_pair do |key, value|
23
- subcards[name.field(key)] = value
24
- end
25
- end
26
- args.keys.each do |key|
27
- subcards[key] = args.delete(key) if key =~ /^\+/
28
- end
29
- subcards = subcards.to_unsafe_h if subcards.respond_to?(:to_unsafe_h)
30
- subcards
31
- end
32
-
33
20
  protected
34
21
 
35
22
  module ClassMethods
@@ -53,14 +40,14 @@ end
53
40
 
54
41
  def prepare_assignment_args args
55
42
  return {} unless args
56
- args = args.stringify_keys
43
+ args = args.symbolize_keys
57
44
  normalize_type_attributes args
58
45
  stash_set_specific_attributes args
59
46
  args
60
47
  end
61
48
 
62
49
  def assign_with_set_modules args
63
- set_changed = args["name"] || args["type_id"]
50
+ set_changed = args[:name] || args[:type_id]
64
51
  return yield unless set_changed
65
52
 
66
53
  refresh_set_modules { yield }
@@ -89,17 +76,17 @@ def stash_set_specific_attributes args
89
76
  end
90
77
 
91
78
  def normalize_type_attributes args
92
- new_type_id = extract_type_id! args unless args.delete("type_lookup") == :skip
93
- args["type_id"] = new_type_id if new_type_id
79
+ new_type_id = extract_type_id! args unless args.delete(:type_lookup) == :skip
80
+ args[:type_id] = new_type_id if new_type_id
94
81
  end
95
82
 
96
83
  def extract_type_id! args={}
97
84
  case
98
- when (type_id = args.delete("type_id")&.to_i)
85
+ when (type_id = args.delete(:type_id)&.to_i)
99
86
  type_id.zero? ? nil : type_id
100
- when (type_code = args.delete("type_code")&.to_sym)
87
+ when (type_code = args.delete(:type_code)&.to_sym)
101
88
  type_id_from_codename type_code
102
- when (type_name = args.delete "type")
89
+ when (type_name = args.delete :type)
103
90
  type_id_from_cardname type_name
104
91
  end
105
92
  end
@@ -1,4 +1,4 @@
1
- JUNK_INIT_ARGS = %w[missing skip_virtual id].freeze
1
+ JUNK_INIT_ARGS = %i[missing skip_virtual id].freeze
2
2
 
3
3
  module ClassMethods
4
4
  def new args={}, _options={}
@@ -8,7 +8,7 @@ module ClassMethods
8
8
  end
9
9
 
10
10
  def with_normalized_new_args args={}
11
- args = (args || {}).stringify_keys
11
+ args = (args || {}).symbolize_keys
12
12
  delete_junk_args args
13
13
  normalize_type_args args
14
14
  normalize_content_args args
@@ -22,17 +22,17 @@ module ClassMethods
22
22
  end
23
23
 
24
24
  def normalize_type_args args
25
- %w[type type_code].each { |k| args.delete(k) if args[k].blank? }
25
+ %i[type type_code].each { |k| args.delete(k) if args[k].blank? }
26
26
  end
27
27
 
28
28
  def normalize_content_args args
29
- args.delete("content") if args["attach"] # should not be handled here!
30
- args["db_content"] = args.delete "content" if args["content"]
29
+ args.delete(:content) if args[:attach] # should not be handled here!
30
+ args[:db_content] = args.delete :content if args[:content]
31
31
  end
32
32
  end
33
33
 
34
34
  def initialize args={}
35
- args["name"] = initial_name args["name"]
35
+ args[:name] = initial_name args[:name]
36
36
 
37
37
  handle_set_modules args do
38
38
  handle_type args do
@@ -43,14 +43,14 @@ def initialize args={}
43
43
  end
44
44
 
45
45
  def handle_set_modules args
46
- skip_modules = args.delete "skip_modules"
46
+ skip_modules = args.delete :skip_modules
47
47
  yield
48
48
  include_set_modules unless skip_modules
49
49
  end
50
50
 
51
51
  def handle_type args
52
- type_lookup = args["type_lookup"]
53
- @supercard = args.delete "supercard"
52
+ type_lookup = args[:type_lookup]
53
+ @supercard = args.delete :supercard
54
54
 
55
55
  yield
56
56
  type_id_from_template if type_lookup == :force || (!type_id && type_lookup != :skip)
@@ -45,7 +45,9 @@ end
45
45
 
46
46
  event :set_autoname, :prepare_to_store, on: :create, when: :autoname? do
47
47
  self.name = autoname rule(:autoname)
48
- rule_card(:autoname).update_column :db_content, name
48
+ autoname_card = rule_card :autoname
49
+ autoname_card.update_column :db_content, name
50
+ autoname_card.expire
49
51
  pull_from_trash!
50
52
  Card.write_to_soft_cache self
51
53
  end
@@ -155,12 +155,12 @@ end
155
155
  # eg. A links to X+Y. if X+Y is renamed and we're not updating the link in A,
156
156
  # then we need to be sure that A has a partial reference
157
157
  event :update_referer_references_out, :finalize,
158
- on: :update, when: :not_update_referers do
158
+ changed: :name, on: :update, when: :not_update_referers do
159
159
  referers.map(&:update_references_out)
160
160
  end
161
161
 
162
162
  # when name changes, update references to card
163
- event :refresh_references_in, :finalize, on: :save do
163
+ event :refresh_references_in, :finalize, changed: :name, on: :save do
164
164
  Card::Reference.unmap_referees id if action == :update && !update_referers
165
165
  Card::Reference.map_referees key, id
166
166
  end
File without changes
File without changes
@@ -0,0 +1,28 @@
1
+ def cards_of_type_exist?
2
+ !new_card? && Card.where(trash: false, type_id: id).exists?
3
+ end
4
+
5
+ def create_ok?
6
+ Card.new(type_id: id).ok? :create
7
+ end
8
+
9
+ def was_cardtype?
10
+ type_id_before_act == Card::CardtypeID
11
+ end
12
+
13
+ event :check_for_cards_of_type, after: :validate_delete do
14
+ errors.add :cardtype, tr(:cards_exist, cardname: name) if cards_of_type_exist?
15
+ end
16
+
17
+ event :check_for_cards_of_type_when_type_changed,
18
+ :validate, changing: :type, when: :was_cardtype? do
19
+ if cards_of_type_exist?
20
+ errors.add :cardtype, tr(:error_cant_alter, name: name_before_act)
21
+ end
22
+ end
23
+
24
+ event :validate_cardtype_name, :validate, on: :save, changed: :name do
25
+ if %r{[<>/]}.match?(name)
26
+ errors.add :name, tr(:error_invalid_character_in_cardtype, banned: "<, >, /")
27
+ end
28
+ end
@@ -1,40 +1,19 @@
1
- # -*- encoding : utf-8 -*-
2
-
3
1
  RSpec.describe Card::Set::Type::Cardtype do
4
- describe "view: add_button" do
5
- it "creates link with correct path" do
6
- expect(render_content("{{RichText|add_button}}"))
7
- .to have_tag('a[href="/type/RichText?view=new_in_modal"]', text: "Add RichText")
8
- end
9
- it "handles title argument" do
10
- expect(render_content("{{RichText|add_button;title: custom link text}}"))
11
- .to have_tag('a[href="/type/RichText?view=new_in_modal"]',
12
- text: "custom link text")
13
- end
14
- it "handles params" do
15
- expect(render_content("{{RichText|add_button;params:_project=_self}}"))
16
- .to have_tag('a[href="/type/RichText?_project=Tempo+Rary+2&view=new_in_modal"]')
17
- end
18
- end
19
-
20
2
  it "can only be deleted when no instances present" do
21
3
  city = create_cardtype "City"
22
4
  sparta = create_city "Sparta"
23
5
  expect(sparta.type_id).to eq city.id
24
- expect { city.delete! }
25
- .to raise_error(/this card must remain/)
6
+ expect { city.delete! }.to raise_error(/this card must remain/)
26
7
  expect(Card["City"]).to be_a(Card)
27
8
  sparta.delete!
28
- expect { city.delete! }
29
- .not_to raise_error
9
+ expect { city.delete! }.not_to raise_error
30
10
  end
31
11
 
32
12
  it "type can't be change when instances present" do
33
13
  expect { update "Cardtype A", type_id: Card::BasicID }
34
14
  .to raise_error(/can't alter this type/)
35
15
  Card["type-a-card"].delete!
36
- expect { update "Cardtype A", type_id: Card::BasicID }
37
- .not_to raise_error
16
+ expect { update "Cardtype A", type_id: Card::BasicID }.not_to raise_error
38
17
  expect(Card["Cardtype A"]).to have_type :basic
39
18
  end
40
19
 
@@ -1,59 +1 @@
1
- <svg style="min-width: 65px; min-height: 45px; margin-top: -12px; margin-bottom: -14px;" viewBox="0 0 242 218" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
2
- <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
3
- <title>b&amp;w_logo</title>
4
- <desc>Created with Sketch.</desc>
5
- <defs>
6
- <rect id="path-1" x="35.3297422" y="10.484836" width="157.279595" height="190.607432" rx="12.491335"></rect>
7
- <filter x="-12.1%" y="-10.5%" width="125.4%" height="121.0%" filterUnits="objectBoundingBox" id="filter-2">
8
- <feMorphology radius="1" operator="dilate" in="SourceAlpha" result="shadowSpreadOuter1"></feMorphology>
9
- <feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"></feOffset>
10
- <feGaussianBlur stdDeviation="5.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
11
- <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
12
- </filter>
13
- <rect id="path-3" x="51.9878879" y="19.404077" width="123.9533" height="171.161486" rx="9.6888466"></rect>
14
- <filter x="-15.3%" y="-11.7%" width="132.3%" height="123.4%" filterUnits="objectBoundingBox" id="filter-4">
15
- <feMorphology radius="1" operator="dilate" in="SourceAlpha" result="shadowSpreadOuter1"></feMorphology>
16
- <feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"></feOffset>
17
- <feGaussianBlur stdDeviation="5.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
18
- <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
19
- </filter>
20
- <path d="M70.1050368,35.6666109 L159.089911,35.6666109 L159.089911,35.6666109 C163.678051,35.6666109 167.397473,39.386033 167.397473,43.9741728 L167.397473,87.717145 L167.397473,166.808436 L167.397473,166.808436 C167.397473,171.396576 163.678051,175.115998 159.089911,175.115998 L70.1050368,175.115998 L70.1050368,175.115998 C65.516897,175.115998 61.7974749,171.396576 61.7974749,166.808436 L61.7974749,43.9741728 L61.7974749,43.9741728 C61.7974749,39.386033 65.516897,35.6666109 70.1050368,35.6666109 Z" id="path-5"></path>
21
- <filter x="-18.0%" y="-14.3%" width="137.9%" height="128.7%" filterUnits="objectBoundingBox" id="filter-6">
22
- <feMorphology radius="1" operator="dilate" in="SourceAlpha" result="shadowSpreadOuter1"></feMorphology>
23
- <feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"></feOffset>
24
- <feGaussianBlur stdDeviation="5.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
25
- <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
26
- </filter>
27
- <rect id="path-7" x="70.7637805" y="49.8525134" width="92.149175" height="107.18743" rx="7.8659801"></rect>
28
- <filter x="-20.6%" y="-18.7%" width="143.4%" height="137.3%" filterUnits="objectBoundingBox" id="filter-8">
29
- <feMorphology radius="1" operator="dilate" in="SourceAlpha" result="shadowSpreadOuter1"></feMorphology>
30
- <feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"></feOffset>
31
- <feGaussianBlur stdDeviation="5.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
32
- <feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.102553216 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
33
- </filter>
34
- </defs>
35
- <g id="Page-3" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
36
- <g id="b&amp;w_logo" fill-rule="nonzero">
37
- <g id="Decko-Logo-" transform="translate(7.000000, 4.000000)">
38
- <g id="g5642">
39
- <g id="svg-card-1" transform="translate(113.969540, 105.788552) scale(-1, 1) rotate(105.855860) translate(-113.969540, -105.788552) ">
40
- <use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
41
- <use fill="#4D4D4D" fill-rule="evenodd" xlink:href="#path-1"></use>
42
- </g>
43
- <g id="svg-card-2" opacity="0.879999995" transform="translate(113.964538, 104.984820) scale(-1, 1) rotate(117.480003) translate(-113.964538, -104.984820) ">
44
- <use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
45
- <use fill="#FFFFFF" fill-rule="evenodd" xlink:href="#path-3"></use>
46
- </g>
47
- <g id="svg-card-3" transform="translate(114.597474, 105.391304) scale(-1, 1) rotate(133.539993) translate(-114.597474, -105.391304) ">
48
- <use fill="black" fill-opacity="1" filter="url(#filter-6)" xlink:href="#path-5"></use>
49
- <use fill="#4C4C4C" fill-rule="evenodd" xlink:href="#path-5"></use>
50
- </g>
51
- <g id="svg-card-4" opacity="0.879999995" transform="translate(116.838368, 103.446228) scale(-1, 1) rotate(142.690002) translate(-116.838368, -103.446228) ">
52
- <use fill="black" fill-opacity="1" filter="url(#filter-8)" xlink:href="#path-7"></use>
53
- <use fill="#FFFFFF" fill-rule="evenodd" xlink:href="#path-7"></use>
54
- </g>
55
- </g>
56
- </g>
57
- </g>
58
- </g>
59
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="min-width:65px;min-height:45px;margin-top:-12px;margin-bottom:-14px" version="1.1" viewBox="0 0 242 218"><title>b&amp;w_logo</title><desc>Created with Sketch.</desc><defs><rect id="path-1" width="157.28" height="190.607" x="35.33" y="10.485" rx="12.491"/><filter id="filter-2" width="125.4%" height="121%" x="-12.1%" y="-10.5%" filterUnits="objectBoundingBox"><feMorphology in="SourceAlpha" operator="dilate" radius="1" result="shadowSpreadOuter1"/><feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="5.5"/><feColorMatrix in="shadowBlurOuter1" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"/></filter><rect id="path-3" width="123.953" height="171.161" x="51.988" y="19.404" rx="9.689"/><filter id="filter-4" width="132.3%" height="123.4%" x="-15.3%" y="-11.7%" filterUnits="objectBoundingBox"><feMorphology in="SourceAlpha" operator="dilate" radius="1" result="shadowSpreadOuter1"/><feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="5.5"/><feColorMatrix in="shadowBlurOuter1" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"/></filter><path id="path-5" d="M70.1050368,35.6666109 L159.089911,35.6666109 L159.089911,35.6666109 C163.678051,35.6666109 167.397473,39.386033 167.397473,43.9741728 L167.397473,87.717145 L167.397473,166.808436 L167.397473,166.808436 C167.397473,171.396576 163.678051,175.115998 159.089911,175.115998 L70.1050368,175.115998 L70.1050368,175.115998 C65.516897,175.115998 61.7974749,171.396576 61.7974749,166.808436 L61.7974749,43.9741728 L61.7974749,43.9741728 C61.7974749,39.386033 65.516897,35.6666109 70.1050368,35.6666109 Z"/><filter id="filter-6" width="137.9%" height="128.7%" x="-18%" y="-14.3%" filterUnits="objectBoundingBox"><feMorphology in="SourceAlpha" operator="dilate" radius="1" result="shadowSpreadOuter1"/><feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="5.5"/><feColorMatrix in="shadowBlurOuter1" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"/></filter><rect id="path-7" width="92.149" height="107.187" x="70.764" y="49.853" rx="7.866"/><filter id="filter-8" width="143.4%" height="137.3%" x="-20.6%" y="-18.7%" filterUnits="objectBoundingBox"><feMorphology in="SourceAlpha" operator="dilate" radius="1" result="shadowSpreadOuter1"/><feOffset dx="1" dy="0" in="shadowSpreadOuter1" result="shadowOffsetOuter1"/><feGaussianBlur in="shadowOffsetOuter1" result="shadowBlurOuter1" stdDeviation="5.5"/><feColorMatrix in="shadowBlurOuter1" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.102553216 0"/></filter></defs><g id="Page-3" fill="none" fill-rule="evenodd" stroke="none" stroke-width="1"><g id="b&amp;w_logo" fill-rule="nonzero"><g id="Decko-Logo-" transform="translate(7.000000, 4.000000)"><g id="g5642"><g id="svg-card-1" transform="translate(113.969540, 105.788552) scale(-1, 1) rotate(105.855860) translate(-113.969540, -105.788552)"><use fill="#000" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"/><use fill="#4D4D4D" fill-rule="evenodd" xlink:href="#path-1"/></g><g id="svg-card-2" opacity=".88" transform="translate(113.964538, 104.984820) scale(-1, 1) rotate(117.480003) translate(-113.964538, -104.984820)"><use fill="#000" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"/><use fill="#FFF" fill-rule="evenodd" xlink:href="#path-3"/></g><g id="svg-card-3" transform="translate(114.597474, 105.391304) scale(-1, 1) rotate(133.539993) translate(-114.597474, -105.391304)"><use fill="#000" fill-opacity="1" filter="url(#filter-6)" xlink:href="#path-5"/><use fill="#4C4C4C" fill-rule="evenodd" xlink:href="#path-5"/></g><g id="svg-card-4" opacity=".88" transform="translate(116.838368, 103.446228) scale(-1, 1) rotate(142.690002) translate(-116.838368, -103.446228)"><use fill="#000" fill-opacity="1" filter="url(#filter-8)" xlink:href="#path-7"/><use fill="#FFF" fill-rule="evenodd" xlink:href="#path-7"/></g></g></g></g></g></svg>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: card
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.101.0
4
+ version: 1.101.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ethan McCutchen
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-12-24 00:00:00.000000000 Z
13
+ date: 2021-03-02 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: cardname
@@ -18,14 +18,14 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.11.0
21
+ version: 0.11.1
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 0.11.0
28
+ version: 0.11.1
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: rake
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -54,20 +54,6 @@ dependencies:
54
54
  - - "~>"
55
55
  - !ruby/object:Gem::Version
56
56
  version: '6.1'
57
- - !ruby/object:Gem::Dependency
58
- name: uuid
59
- requirement: !ruby/object:Gem::Requirement
60
- requirements:
61
- - - "~>"
62
- - !ruby/object:Gem::Version
63
- version: '2.3'
64
- type: :runtime
65
- prerelease: false
66
- version_requirements: !ruby/object:Gem::Requirement
67
- requirements:
68
- - - "~>"
69
- - !ruby/object:Gem::Version
70
- version: '2.3'
71
57
  - !ruby/object:Gem::Dependency
72
58
  name: colorize
73
59
  requirement: !ruby/object:Gem::Requirement
@@ -269,7 +255,6 @@ files:
269
255
  - config/initializers/mime_types.rb
270
256
  - config/initializers/notification.rb
271
257
  - config/initializers/patches.rb
272
- - config/initializers/uuid_state_file.rb
273
258
  - config/initializers/zeitwerk.rb
274
259
  - config/locales/de.yml
275
260
  - config/locales/en.yml
@@ -583,7 +568,13 @@ files:
583
568
  - lib/card/mark.rb
584
569
  - lib/card/mod_inflector.rb
585
570
  - lib/card/model/save_helper.rb
571
+ - lib/card/model/save_helper/save_arguments.rb
572
+ - lib/card/model/save_helper/save_helper_helper.rb
586
573
  - lib/card/name.rb
574
+ - lib/card/name/all.rb
575
+ - lib/card/name/all/class_methods.rb
576
+ - lib/card/name/all/descendants.rb
577
+ - lib/card/name/all/parts.rb
587
578
  - lib/card/name/fields_and_traits.rb
588
579
  - lib/card/name/name_variants.rb
589
580
  - lib/card/query.rb
@@ -646,6 +637,7 @@ files:
646
637
  - lib/card/setting.rb
647
638
  - lib/card/subcards.rb
648
639
  - lib/card/subcards/add.rb
640
+ - lib/card/subcards/args.rb
649
641
  - lib/card/subcards/relate.rb
650
642
  - lib/card/subcards/remove.rb
651
643
  - lib/card/tasks/card.rake
@@ -672,6 +664,7 @@ files:
672
664
  - lib/card/view/options/voo_api.rb
673
665
  - lib/card/view/permission.rb
674
666
  - lib/cardio.rb
667
+ - lib/cardio/defaults.yml
675
668
  - lib/cardio/delaying.rb
676
669
  - lib/cardio/migration.rb
677
670
  - lib/cardio/migration/core.rb
@@ -713,7 +706,6 @@ files:
713
706
  - lib/generators/card/template/USAGE
714
707
  - lib/generators/card/template/template_generator.rb
715
708
  - lib/generators/card/template/templates/haml_template.erb
716
- - mod/Modfile
717
709
  - mod/admin/set/self/admin.rb
718
710
  - mod/admin/set/self/admin_info.rb
719
711
  - mod/admin/set/self/debugger.rb
@@ -735,7 +727,6 @@ files:
735
727
  - mod/core/set/all/fetch_helper.rb
736
728
  - mod/core/set/all/i18n.rb
737
729
  - mod/core/set/all/initialize.rb
738
- - mod/core/set/all/name.rb
739
730
  - mod/core/set/all/name_events.rb
740
731
  - mod/core/set/all/pattern.rb
741
732
  - mod/core/set/all/references.rb
@@ -746,7 +737,10 @@ files:
746
737
  - mod/core/set/all/trash.rb
747
738
  - mod/core/set/all/type.rb
748
739
  - mod/core/set/all/utils.rb
740
+ - mod/core/set/right/autoname.rb
741
+ - mod/core/set/self/autoname.rb
749
742
  - mod/core/set/self/version.rb
743
+ - mod/core/set/type/cardtype.rb
750
744
  - mod/core/set_pattern/01_all.rb
751
745
  - mod/core/set_pattern/02_all_plus.rb
752
746
  - mod/core/set_pattern/03_type.rb
@@ -768,7 +762,6 @@ files:
768
762
  - mod/core/spec/set/all/i18n_spec.rb
769
763
  - mod/core/spec/set/all/initialize_spec.rb
770
764
  - mod/core/spec/set/all/name_events_spec.rb
771
- - mod/core/spec/set/all/name_spec.rb
772
765
  - mod/core/spec/set/all/pattern_spec.rb
773
766
  - mod/core/spec/set/all/permissions/reader_rules_spec.rb
774
767
  - mod/core/spec/set/all/references_spec.rb
@@ -781,17 +774,13 @@ files:
781
774
  - mod/core/spec/set/all/type_spec.rb
782
775
  - mod/core/spec/set/all/utils_spec.rb
783
776
  - mod/core/spec/set/self/version_spec.rb
784
- - mod/settings/set/right/autoname.rb
785
- - mod/settings/set/self/autoname.rb
777
+ - mod/core/spec/set/type/cardtype_spec.rb
786
778
  - mod/standard/file/favicon/image-icon.png
787
779
  - mod/standard/file/favicon/image-large.png
788
780
  - mod/standard/file/favicon/image-medium.png
789
781
  - mod/standard/file/favicon/image-original.png
790
782
  - mod/standard/file/favicon/image-small.png
791
783
  - mod/standard/file/logo/image-original.svg
792
- - mod/standard/set/all/rich_html/html_views/info.rb
793
- - mod/standard/set/type/cardtype.rb
794
- - mod/standard/spec/set/type/cardtype_spec.rb
795
784
  - tmpsets/set/mod001-admin/self/admin.rb
796
785
  - tmpsets/set/mod001-admin/self/admin_info.rb
797
786
  - tmpsets/set/mod001-admin/self/debugger.rb