Skip to content

Commit

Permalink
Implement haptic-feedback package (#1)
Browse files Browse the repository at this point in the history
* Initial commit

* Implement `HapticFeedback` package

* Remove test target

* Update `README.md`

* Update `CHANGELOG.md`

* Add `Gemfile.lock`

* Update `ci.yml`

* Add a build phase to `ci.yml`
  • Loading branch information
ns-vasilev authored Nov 26, 2023
1 parent 305a02a commit 07299fd
Show file tree
Hide file tree
Showing 19 changed files with 611 additions and 1 deletion.
41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
name: "🐛 Bug Report"
about: Report a reproducible bug or regression.
title: 'Bug: '
labels: 'bug'

---

<!--
Please provide a clear and concise description of what the bug is. Include
screenshots if needed. Please test using the latest version of the relevant
React packages to make sure your issue has not already been fixed.
-->

Application version:

## Steps To Reproduce

1.
2.

<!--
Your bug will get fixed much faster if we can run your code and it doesn't
have dependencies other than React. Issues without reproduction steps or
code examples may be immediately closed as not actionable.
-->

Link to code example:

<!--
Please provide a CodeSandbox (https://codesandbox.io/s/new), a link to a
repository on GitHub, or provide a minimal code example that reproduces the
problem. You may provide a screenshot of the application if you think it is
relevant to your bug report. Here are some tips for providing a minimal
example: https://stackoverflow.com/help/mcve.
-->

## The current behavior


## The expected behavior
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: 🛠 Feature request
about: If you have a feature request for the haptic-feedback, file it here.
labels: 'type: enhancement'
---

**Feature description**
Clearly and concisely describe the feature.

**Describe the solution you'd like**
A clear and concise description of what you want to happen.
9 changes: 9 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/bug_template.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
## Bug description
Clearly and concisely describe the problem.

## Solution description
Describe your code changes in detail for reviewers. Explain the technical solution you have provided and how it fixes the issue case.

## Covered unit test cases
- [x] yes
- [x] no
12 changes: 12 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/feature_template.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## Feature description
Clearly and concisely describe the feature.

## Solution description
Describe your code changes in detail for reviewers.

## Areas affected and ensured
List out the areas affected by your code changes.

## Covered unit test cases
- [x] yes
- [x] no
44 changes: 44 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: "haptic-feedback"

on:
push:
branches:
- main
- dev
pull_request:
paths:
- '.swiftlint.yml'
- ".github/workflows/**"
- "Package.swift"
- "Source/**"
- "Tests/**"

jobs:
SwiftLint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: GitHub Action for SwiftLint
uses: norio-nomura/[email protected]
with:
args: --strict
env:
DIFF_BASE: ${{ github.base_ref }}
Latest:
name: Test Latest (iOS)
runs-on: macOS-12
env:
DEVELOPER_DIR: "/Applications/Xcode_14.1.app/Contents/Developer"
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
include:
- destination: "OS=16.1,name=iPhone 14 Pro"
name: "iOS"
scheme: "HapticFeedback"
steps:
- uses: actions/checkout@v3
- name: ${{ matrix.name }}
run: xcodebuild -scheme "${{ matrix.scheme }}" -destination "${{ matrix.destination }}" clean

31 changes: 31 additions & 0 deletions .github/workflows/danger.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Danger

on:
pull_request:
types: [synchronize, opened, reopened, labeled, unlabeled, edited]

env:
LC_CTYPE: en_US.UTF-8
LANG: en_US.UTF-8

jobs:
run-danger:
runs-on: ubuntu-latest
steps:
- name: ruby setup
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7
bundler-cache: true
- name: Checkout code
uses: actions/checkout@v2
- name: Setup gems
run: |
gem install bundler
bundle install --clean --path vendor/bundle
- name: danger
env:

DANGER_GITHUB_API_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN }}

run: bundle exec danger --verbose
64 changes: 64 additions & 0 deletions .swiftformat
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Stream rules

--swiftversion 5.3

# Use 'swiftformat --options' to list all of the possible options

--header "\nhaptic-feedback\nCopyright © {created.year} Space Code. All rights reserved.\n//"

--enable blankLinesBetweenScopes
--enable blankLinesAtStartOfScope
--enable blankLinesAtEndOfScope
--enable blankLinesAroundMark
--enable anyObjectProtocol
--enable consecutiveBlankLines
--enable consecutiveSpaces
--enable duplicateImports
--enable elseOnSameLine
--enable emptyBraces
--enable initCoderUnavailable
--enable leadingDelimiters
--enable numberFormatting
--enable preferKeyPath
--enable redundantBreak
--enable redundantExtensionACL
--enable redundantFileprivate
--enable redundantGet
--enable redundantInit
--enable redundantLet
--enable redundantLetError
--enable redundantNilInit
--enable redundantObjc
--enable redundantParens
--enable redundantPattern
--enable redundantRawValues
--enable redundantReturn
--enable redundantSelf
--enable redundantVoidReturnType
--enable semicolons
--enable sortImports
--enable sortSwitchCases
--enable spaceAroundBraces
--enable spaceAroundBrackets
--enable spaceAroundComments
--enable spaceAroundGenerics
--enable spaceAroundOperators
--enable spaceInsideBraces
--enable spaceInsideBrackets
--enable spaceInsideComments
--enable spaceInsideGenerics
--enable spaceInsideParens
--enable strongOutlets
--enable strongifiedSelf
--enable todos
--enable trailingClosures
--enable unusedArguments
--enable void
--enable markTypes
--enable isEmpty

# format options

--wraparguments before-first
--wrapcollections before-first
--maxwidth 140
135 changes: 135 additions & 0 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
excluded:
- Tests
- Package.swift
- .build

# Rules

disabled_rules:
- trailing_comma
- todo
- opening_brace

opt_in_rules: # some rules are only opt-in
- anyobject_protocol
- array_init
- attributes
- 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
- explicit_init
- fallthrough
- fatal_error_message
- file_name
- file_types_order
- first_where
- flatmap_over_map_reduce
- force_unwrapping
- ibinspectable_in_extension
- identical_operands
- implicit_return
- inert_defer
- joined_default_parameter
- last_where
- legacy_multiple
- legacy_random
- literal_expression_end_indentation
- lower_acl_than_parent
- multiline_arguments
- multiline_function_chains
- multiline_literal_brackets
- multiline_parameters
- multiline_parameters_brackets
- no_space_in_method_call
- operator_usage_whitespace
- optional_enum_case_matching
- orphaned_doc_comment
- overridden_super_call
- override_in_extension
- pattern_matching_keywords
- prefer_self_type_over_type_of_self
- prefer_zero_over_explicit_init
- prefixed_toplevel_constant
- private_action
- prohibited_super_call
- quick_discouraged_call
- quick_discouraged_focused_test
- quick_discouraged_pending_test
- reduce_into
- redundant_nil_coalescing
- redundant_objc_attribute
- redundant_type_annotation
- required_enum_case
- single_test_class
- sorted_first_last
- sorted_imports
- static_operator
- strict_fileprivate
- switch_case_on_newline
- toggle_bool
- 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

force_cast: warning
force_try: warning

identifier_name:
excluded:
- id
- URL

analyzer_rules:
- unused_import
- unused_declaration

line_length:
warning: 130
error: 200

type_body_length:
warning: 300
error: 400

file_length:
warning: 500
error: 1200

function_body_length:
warning: 30
error: 50

large_tuple:
error: 3

nesting:
type_level:
warning: 2
statement_level:
warning: 10


type_name:
max_length:
warning: 40
error: 50
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Change Log
All notable changes to this project will be documented in this file.

#### 1.x Releases
- `1.0.x` Releases - [1.0.0](#100)

## [1.0.0](https://github.com/space-code/haptic-feedback/releases/tag/1.0.0)
Released on 2023-11-26.

#### Added
- Initial release of `haptic-feedback`.
- Added by [Nikita Vasilev](https://github.com/nik3212).
1 change: 1 addition & 0 deletions Dangerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
danger.import_dangerfile(github: 'space-code/dangerfile')
3 changes: 3 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
source "https://rubygems.org"

gem 'danger'
Loading

0 comments on commit 07299fd

Please sign in to comment.