Sha256: 8d461a7d9a42b71b815cad4a999b8b88f0c7fd7024a7af214d9a987cc3c7a4c0

Contents?: true

Size: 1.47 KB

Versions: 8

Compression:

Stored size: 1.47 KB

Contents

# frozen_string_literal: true

module Motor
  module BuildSchema
    module ColumnAccessTypes
      ALL = [
        READ_ONLY = 'read_only',
        WRITE_ONLY = 'write_only',
        READ_WRITE = 'read_write',
        HIDDEN = 'hidden'
      ].freeze
    end

    SEARCHABLE_COLUMN_TYPES = %i[citext text string bitstring].freeze

    COLUMN_NAME_ACCESS_TYPES = {
      id: ColumnAccessTypes::READ_ONLY,
      created_at: ColumnAccessTypes::READ_ONLY,
      updated_at: ColumnAccessTypes::READ_ONLY,
      deleted_at: ColumnAccessTypes::READ_ONLY
    }.with_indifferent_access.freeze

    DEFAULT_SCOPE_TYPE = 'default'

    module_function

    def call(cache_keys = {}, current_ability = nil)
      schema = LoadFromRails.call
      schema = MergeSchemaConfigs.call(schema, cache_keys)
      schema = ApplyPermissions.call(schema, current_ability) if current_ability

      ReorderSchema.call(schema, cache_keys)
    end
  end
end

require_relative './build_schema/active_storage_attachment_schema'
require_relative './build_schema/adjust_devise_model_schema'
require_relative './build_schema/load_from_rails'
require_relative './build_schema/find_display_column'
require_relative './build_schema/find_icon'
require_relative './build_schema/persist_resource_configs'
require_relative './build_schema/reorder_schema'
require_relative './build_schema/merge_schema_configs'
require_relative './build_schema/apply_permissions'
require_relative './build_schema/utils'
require_relative './build_schema/defaults'

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
motor-admin-0.1.75 lib/motor/build_schema.rb
motor-admin-0.1.74 lib/motor/build_schema.rb
motor-admin-0.1.73 lib/motor/build_schema.rb
motor-admin-0.1.72 lib/motor/build_schema.rb
motor-admin-0.1.71 lib/motor/build_schema.rb
motor-admin-0.1.70 lib/motor/build_schema.rb
motor-admin-0.1.68 lib/motor/build_schema.rb
motor-admin-0.1.67 lib/motor/build_schema.rb