Skip to content

Commit

Permalink
Merge pull request #16 from brightdigit/v1.0.0-alpha.3
Browse files Browse the repository at this point in the history
v1.0.0-alpha.3
  • Loading branch information
leogdion authored Nov 6, 2024
2 parents 0a2b474 + c65ab43 commit cc8ac0f
Show file tree
Hide file tree
Showing 75 changed files with 3,851 additions and 827 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -143,4 +143,5 @@ xcuserdata
# End of https://www.toptal.com/developers/gitignore/api/swift,swiftpm,swiftpackagemanager,xcode,macos

test_output.log
.docc-build
.docc-build
public
18 changes: 9 additions & 9 deletions .swift-format
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
"spaces" : 2
},
"indentConditionalCompilationBlocks" : true,
"indentSwitchCaseLabels" : true,
"lineBreakAroundMultilineExpressionChainComponents" : true,
"lineBreakBeforeControlFlowKeywords" : true,
"lineBreakBeforeEachArgument" : true,
"lineBreakBeforeEachGenericRequirement" : true,
"indentSwitchCaseLabels" : false,
"lineBreakAroundMultilineExpressionChainComponents" : false,
"lineBreakBeforeControlFlowKeywords" : false,
"lineBreakBeforeEachArgument" : false,
"lineBreakBeforeEachGenericRequirement" : false,
"lineLength" : 100,
"maximumBlankLines" : 1,
"multiElementCollectionTrailingCommas" : true,
Expand All @@ -20,7 +20,7 @@
]
},
"prioritizeKeepingFunctionOutputTogether" : false,
"respectsExistingLineBreaks" : false,
"respectsExistingLineBreaks" : true,
"rules" : {
"AllPublicDeclarationsHaveDocumentation" : true,
"AlwaysUseLiteralForEmptyCollectionInit" : false,
Expand All @@ -29,7 +29,7 @@
"BeginDocumentationCommentWithOneLineSummary" : false,
"DoNotUseSemicolons" : true,
"DontRepeatTypeInStaticProperties" : true,
"FileScopedDeclarationPrivacy" : true,
"FileScopedDeclarationPrivacy" : false,
"FullyIndirectEnum" : true,
"GroupNumericLiterals" : true,
"IdentifiersMustBeASCII" : true,
Expand All @@ -42,7 +42,7 @@
"NoCasesWithOnlyFallthrough" : true,
"NoEmptyTrailingClosureParentheses" : true,
"NoLabelsInCasePatterns" : true,
"NoLeadingUnderscores" : false,
"NoLeadingUnderscores" : true,
"NoParensAroundConditions" : true,
"NoPlaygroundLiterals" : true,
"NoVoidReturnOnFunctionSignature" : true,
Expand All @@ -67,4 +67,4 @@
"spacesAroundRangeFormationOperators" : false,
"tabWidth" : 2,
"version" : 1
}
}
132 changes: 132 additions & 0 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
opt_in_rules:
- array_init
- closure_body_length
- closure_end_indentation
- closure_spacing
- collection_alignment
- conditional_returns_on_newline
- contains_over_filter_count
- contains_over_filter_is_empty
- contains_over_first_not_nil
- contains_over_range_nil_comparison
- convenience_type
- discouraged_object_literal
- discouraged_optional_boolean
- empty_collection_literal
- empty_count
- empty_string
- empty_xctest_method
- enum_case_associated_values_count
- expiring_todo
- explicit_acl
- explicit_init
- explicit_top_level_acl
# - fallthrough
- fatal_error_message
- file_name
- file_name_no_space
- file_types_order
- first_where
- flatmap_over_map_reduce
- force_unwrapping
# - function_default_parameter_at_end
- ibinspectable_in_extension
- identical_operands
- implicit_return
- implicitly_unwrapped_optional
- indentation_width
- joined_default_parameter
- last_where
- legacy_multiple
- legacy_random
- literal_expression_end_indentation
- lower_acl_than_parent
# - missing_docs
- modifier_order
- multiline_arguments
- multiline_arguments_brackets
- multiline_function_chains
- multiline_literal_brackets
- multiline_parameters
- nimble_operator
- nslocalizedstring_key
- nslocalizedstring_require_bundle
- number_separator
- object_literal
- operator_usage_whitespace
- optional_enum_case_matching
- overridden_super_call
- override_in_extension
- pattern_matching_keywords
- prefer_self_type_over_type_of_self
- prefer_zero_over_explicit_init
- private_action
- private_outlet
- prohibited_interface_builder
- prohibited_super_call
- quick_discouraged_call
- quick_discouraged_focused_test
- quick_discouraged_pending_test
- reduce_into
- redundant_nil_coalescing
- redundant_type_annotation
- required_enum_case
- single_test_class
- sorted_first_last
- sorted_imports
- static_operator
- strong_iboutlet
- toggle_bool
# - trailing_closure
- type_contents_order
- unavailable_function
- unneeded_parentheses_in_closure_argument
- unowned_variable_capture
- untyped_error_in_catch
- vertical_parameter_alignment_on_call
- vertical_whitespace_closing_braces
- vertical_whitespace_opening_braces
- xct_specific_matcher
- yoda_condition
analyzer_rules:
- unused_import
- unused_declaration
cyclomatic_complexity:
- 6
- 12
file_length:
warning: 225
error: 300
function_body_length:
- 50
- 76
function_parameter_count: 8
line_length:
- 108
- 200
closure_body_length:
- 50
- 60
type_name:
excluded:
- ID
identifier_name:
excluded:
- id
- no
excluded:
- DerivedData
- .build
indentation_width:
indentation_width: 2
file_name:
severity: error
fatal_error_message:
severity: error
disabled_rules:
- nesting
- implicit_getter
- switch_case_alignment
- closure_parameter_position
- trailing_comma
- opening_brace
11 changes: 11 additions & 0 deletions Example/Sources/Assets.xcassets/AccentColor.colorset/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"colors" : [
{
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
58 changes: 58 additions & 0 deletions Example/Sources/Assets.xcassets/AppIcon.appiconset/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
{
"images" : [
{
"idiom" : "mac",
"scale" : "1x",
"size" : "16x16"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "16x16"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "32x32"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "32x32"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "128x128"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "128x128"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "256x256"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "256x256"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "512x512"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "512x512"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
6 changes: 6 additions & 0 deletions Example/Sources/Assets.xcassets/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}
28 changes: 28 additions & 0 deletions Example/Sources/ChildViewModel.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
//
// ChildViewModel.swift
// DataThespian
//
// Created by Leo Dion on 10/16/24.
//

import DataThespian
import Foundation
import SwiftData

internal struct ChildViewModel: Sendable, Identifiable {
internal let model: Model<ItemChild>
internal let timestamp: Date

internal var id: PersistentIdentifier {
model.persistentIdentifier
}

private init(model: Model<ItemChild>, timestamp: Date) {
self.model = model
self.timestamp = timestamp
}

internal init(child: ItemChild) {
self.init(model: .init(child), timestamp: child.timestamp)
}
}
Loading

0 comments on commit cc8ac0f

Please sign in to comment.