Skip to content

Commit 0aec5f8

Browse files
HammadTheOneRyan Patrick Kyle
and
Ryan Patrick Kyle
authored
Dash R Core Package Unification (#243)
* Initialize npm and gulpfile in repo * Adding directory structure * Initial implementation of unification script * Minor grep fixes * Fixed DESCRIPTION imports * Added updated dash-table deps * Regex for version numbers * Cut import entries from NAMESPACE * Remove && include(dashr) * Removing gulp-asset artifacts and rebuilding complete package * Removing unnecessary files * fix: remove html, core pkgs from tests * fix: update script tags unit test * Revert R6 import * Add temporary collate * Update README examples * Scrubbing imports * More import scrubbing * Package development updates * Update gitignore and namespace * Updated gulpfile jobs * Updated all dependencies * Added templates for namespace/internal exports * Update internal, namespace, and gulpfile cleanup * Fix dependency sourcing * Linting * Adding job for asset retrieval and deletion * Minor src change * Added error handling * Fixing favicon bug * chore: use shallow clone Co-authored-by: Ryan Patrick Kyle <[email protected]>
1 parent d5a472e commit 0aec5f8

File tree

392 files changed

+26581
-200
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

392 files changed

+26581
-200
lines changed

.Rbuildignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,5 @@ todo\.txt
77
.github
88
tests/integration
99
tests/circleci
10+
gulp-assets
11+
node_modules

.eslintrc

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
{
2+
"extends": ["eslint:recommended", "prettier"],
3+
"parser": "babel-eslint",
4+
"parserOptions": {
5+
"ecmaVersion": 6,
6+
"sourceType": "module",
7+
"ecmaFeatures": {
8+
"arrowFunctions": true,
9+
"blockBindings": true,
10+
"classes": true,
11+
"defaultParams": true,
12+
"destructuring": true,
13+
"forOf": true,
14+
"generators": true,
15+
"modules": true,
16+
"templateStrings": true,
17+
"jsx": true
18+
}
19+
},
20+
"env": {
21+
"browser": true,
22+
"es6": true,
23+
"jasmine": true,
24+
"jest": true,
25+
"node": true
26+
},
27+
"globals": {
28+
"jest": true
29+
},
30+
"plugins": [
31+
"react",
32+
"import"
33+
],
34+
"rules": {
35+
"accessor-pairs": ["error"],
36+
"block-scoped-var": ["error"],
37+
"consistent-return": ["error"],
38+
"curly": ["error", "all"],
39+
"default-case": ["error"],
40+
"dot-location": ["off"],
41+
"dot-notation": ["error"],
42+
"eqeqeq": ["error"],
43+
"guard-for-in": ["off"],
44+
"import/export": "error",
45+
"import/named": ["off"],
46+
"import/namespace": ["off"],
47+
"import/no-duplicates": ["error"],
48+
"import/no-named-as-default": ["error"],
49+
"import/no-unresolved": ["off"],
50+
"new-cap": ["error", {
51+
"capIsNewExceptionPattern": "Immutable\\.*"
52+
}],
53+
"no-alert": ["off"],
54+
"no-caller": ["error"],
55+
"no-case-declarations": ["error"],
56+
"no-console": ["error"],
57+
"no-div-regex": ["error"],
58+
"no-dupe-keys": ["error"],
59+
"no-else-return": ["error"],
60+
"no-empty-pattern": ["error"],
61+
"no-eq-null": ["error"],
62+
"no-eval": ["error"],
63+
"no-extend-native": ["error"],
64+
"no-extra-bind": ["error"],
65+
"no-extra-boolean-cast": ["error"],
66+
"no-inline-comments": ["off"],
67+
"no-implicit-coercion": ["error"],
68+
"no-implied-eval": ["error"],
69+
"no-inner-declarations": ["off"],
70+
"no-invalid-this": ["error"],
71+
"no-iterator": ["error"],
72+
"no-labels": ["error"],
73+
"no-lone-blocks": ["error"],
74+
"no-loop-func": ["error"],
75+
"no-multi-str": ["error"],
76+
"no-native-reassign": ["error"],
77+
"no-new": ["error"],
78+
"no-new-func": ["error"],
79+
"no-new-wrappers": ["error"],
80+
"no-param-reassign": ["off"],
81+
"no-process-env": ["warn"],
82+
"no-proto": ["error"],
83+
"no-redeclare": ["error"],
84+
"no-return-assign": ["error"],
85+
"no-script-url": ["error"],
86+
"no-self-compare": ["error"],
87+
"no-sequences": ["error"],
88+
"no-shadow": ["off"],
89+
"no-throw-literal": ["error"],
90+
"no-unused-expressions": ["error"],
91+
"no-use-before-define": ["error", "nofunc"],
92+
"no-useless-call": ["error"],
93+
"no-useless-concat": ["error"],
94+
"no-with": ["error"],
95+
"prefer-const": ["error"],
96+
"radix": ["error"],
97+
"react/jsx-no-duplicate-props": ["error"],
98+
"react/jsx-no-undef": ["error"],
99+
"react/jsx-uses-react": ["error"],
100+
"react/jsx-uses-vars": ["error"],
101+
"react/no-did-update-set-state": ["error"],
102+
"react/no-direct-mutation-state": ["error"],
103+
"react/no-is-mounted": ["error"],
104+
"react/no-unknown-property": ["error"],
105+
"react/prefer-es6-class": ["error", "always"],
106+
"react/prop-types": "error",
107+
"valid-jsdoc": ["off"],
108+
"yoda": ["error"],
109+
"spaced-comment": ["error", "always", {
110+
"block": {
111+
"exceptions": ["*"]
112+
}
113+
}],
114+
"no-unused-vars": ["error", {
115+
"args": "after-used",
116+
"argsIgnorePattern": "^_",
117+
"caughtErrorsIgnorePattern": "^e$"
118+
}],
119+
"no-magic-numbers": ["error", {
120+
"ignoreArrayIndexes": true,
121+
"ignore": [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 100, 10, 16, 0.5, 25]
122+
}],
123+
"no-underscore-dangle": ["off"],
124+
"no-useless-escape": ["off"]
125+
}
126+
}

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
.RData
44
.DS_Store
55

6+
dash-core-components/
7+
dash-html-components/
8+
dash-table/
69
node_modules/
710
python/
811
todo.txt

.prettierrc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"tabWidth": 4,
3+
"singleQuote": true,
4+
"bracketSpacing": false,
5+
"trailingComma": "es5"
6+
}

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@
22
All notable changes to `dash` will be documented in this file.
33
This project adheres to [Semantic Versioning](http://semver.org/).
44

5+
## [1.0.0] - 2021-03-04
6+
### Changed
7+
- Unify the core Dash packages (dash, dashCoreComponents, dashHtmlComponents, dashTable) for streamlined maintenance and accessibility. The namespaces of these packages will be combined under the `dash` namespace, and all artifacts from the ancillary dash packages will be included with Dash for R. [#243](https://github.com/plotly/dashr/pull/243)
8+
9+
### Fixed
10+
- Minor fix for favicon issue continued from [#240](https://github.com/plotly/dashr/pull/240) (for more details, see [#243](https://github.com/plotly/dashR/pull/243#issuecomment-842813526)).
11+
512
## [0.9.1] - 2020-11-16
613
### Fixed
714
- A regression which prevented favicons from displaying properly has been resolved, and a default Dash favicon is now supplied when none is provided in the `assets` directory. [#240](https://github.com/plotly/dashr/pull/240)

DESCRIPTION

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
Package: dash
22
Title: An Interface to the Dash Ecosystem for Authoring Reactive Web Applications
3-
Version: 0.9.1
4-
Authors@R: c(person("Chris", "Parmer", role = c("aut"), email = "[email protected]"), person("Ryan Patrick", "Kyle", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-5829-9867"), email = "[email protected]"), person("Carson", "Sievert", role = c("aut"), comment = c(ORCID = "0000-0002-4958-2844")), person("Hammad", "Khan", role = c("aut"), comment = c(ORCID = "0000-0003-2479-9841"), email = "[email protected]"), person(family = "Plotly Technologies", role = "cph"))
3+
Version: 1.0.0
4+
Authors@R: c(person("Chris", "Parmer", role = c("aut"), email = "[email protected]"), person("Ryan Patrick", "Kyle", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-5829-9867"), email = "[email protected]"), person("Carson", "Sievert", role = c("aut"), comment = c(ORCID = "0000-0002-4958-2844")), person("Hammad", "Khan", role = c("aut"), comment = c(ORCID = "0000-0003-2479-9841"), email = "[email protected]"), person(family = "Plotly Technologies", role = "cph"))
55
Description: A framework for building analytical web applications, Dash offers a pleasant and productive development experience. No JavaScript required.
66
Depends:
77
R (>= 3.0.2)
88
Imports:
9-
dashHtmlComponents (== 1.1.1),
10-
dashCoreComponents (== 1.13.0),
11-
dashTable (== 4.11.0),
129
R6,
1310
fiery (> 1.0.0),
1411
routr (> 0.2.0),
@@ -25,17 +22,6 @@ Imports:
2522
glue
2623
Suggests:
2724
testthat
28-
Collate:
29-
'utils.R'
30-
'dependencies.R'
31-
'dash-package.R'
32-
'dash.R'
33-
'imports.R'
34-
'print.R'
35-
'internal.R'
36-
Remotes: plotly/dash-html-components@7209e0a,
37-
plotly/dash-core-components@91a424e,
38-
plotly/dash-table@aa519b7
3925
License: MIT + file LICENSE
4026
Encoding: UTF-8
4127
LazyData: true

NAMESPACE

Lines changed: 169 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ export(dashNoUpdate)
1010
export(input)
1111
export(output)
1212
export(state)
13-
import(dashCoreComponents)
14-
import(dashHtmlComponents)
1513
importFrom(R6,R6Class)
1614
importFrom(assertthat,assert_that)
1715
importFrom(base64enc,base64encode)
@@ -34,3 +32,172 @@ importFrom(routr,ressource_route)
3432
importFrom(stats,setNames)
3533
importFrom(tools,file_ext)
3634
importFrom(utils,getFromNamespace)
35+
36+
# dashCoreComponents exports appended by `npm unify` command: do not edit by hand
37+
38+
export(dccChecklist)
39+
export(dccClipboard)
40+
export(dccConfirmDialog)
41+
export(dccConfirmDialogProvider)
42+
export(dccDatePickerRange)
43+
export(dccDatePickerSingle)
44+
export(dccDownload)
45+
export(dccDropdown)
46+
export(dccGraph)
47+
export(dccInput)
48+
export(dccInterval)
49+
export(dccLink)
50+
export(dccLoading)
51+
export(dccLocation)
52+
export(dccLogoutButton)
53+
export(dccMarkdown)
54+
export(dccRadioItems)
55+
export(dccRangeSlider)
56+
export(dccSlider)
57+
export(dccStore)
58+
export(dccTab)
59+
export(dccTabs)
60+
export(dccTextarea)
61+
export(dccUpload)
62+
63+
64+
# dashHtmlComponents exports appended by `npm unify` command: do not edit by hand
65+
66+
export(htmlA)
67+
export(htmlAbbr)
68+
export(htmlAcronym)
69+
export(htmlAddress)
70+
export(htmlArea)
71+
export(htmlArticle)
72+
export(htmlAside)
73+
export(htmlAudio)
74+
export(htmlB)
75+
export(htmlBase)
76+
export(htmlBasefont)
77+
export(htmlBdi)
78+
export(htmlBdo)
79+
export(htmlBig)
80+
export(htmlBlink)
81+
export(htmlBlockquote)
82+
export(htmlBr)
83+
export(htmlButton)
84+
export(htmlCanvas)
85+
export(htmlCaption)
86+
export(htmlCenter)
87+
export(htmlCite)
88+
export(htmlCode)
89+
export(htmlCol)
90+
export(htmlColgroup)
91+
export(htmlCommand)
92+
export(htmlContent)
93+
export(htmlData)
94+
export(htmlDatalist)
95+
export(htmlDd)
96+
export(htmlDel)
97+
export(htmlDetails)
98+
export(htmlDfn)
99+
export(htmlDialog)
100+
export(htmlDiv)
101+
export(htmlDl)
102+
export(htmlDt)
103+
export(htmlElement)
104+
export(htmlEm)
105+
export(htmlEmbed)
106+
export(htmlFieldset)
107+
export(htmlFigcaption)
108+
export(htmlFigure)
109+
export(htmlFont)
110+
export(htmlFooter)
111+
export(htmlForm)
112+
export(htmlFrame)
113+
export(htmlFrameset)
114+
export(htmlH1)
115+
export(htmlH2)
116+
export(htmlH3)
117+
export(htmlH4)
118+
export(htmlH5)
119+
export(htmlH6)
120+
export(htmlHeader)
121+
export(htmlHgroup)
122+
export(htmlHr)
123+
export(htmlI)
124+
export(htmlIframe)
125+
export(htmlImg)
126+
export(htmlIns)
127+
export(htmlIsindex)
128+
export(htmlKbd)
129+
export(htmlKeygen)
130+
export(htmlLabel)
131+
export(htmlLegend)
132+
export(htmlLi)
133+
export(htmlLink)
134+
export(htmlListing)
135+
export(htmlMain)
136+
export(htmlMapEl)
137+
export(htmlMark)
138+
export(htmlMarquee)
139+
export(htmlMeta)
140+
export(htmlMeter)
141+
export(htmlMulticol)
142+
export(htmlNav)
143+
export(htmlNextid)
144+
export(htmlNobr)
145+
export(htmlNoscript)
146+
export(htmlObjectEl)
147+
export(htmlOl)
148+
export(htmlOptgroup)
149+
export(htmlOption)
150+
export(htmlOutput)
151+
export(htmlP)
152+
export(htmlParam)
153+
export(htmlPicture)
154+
export(htmlPlaintext)
155+
export(htmlPre)
156+
export(htmlProgress)
157+
export(htmlQ)
158+
export(htmlRb)
159+
export(htmlRp)
160+
export(htmlRt)
161+
export(htmlRtc)
162+
export(htmlRuby)
163+
export(htmlS)
164+
export(htmlSamp)
165+
export(htmlScript)
166+
export(htmlSection)
167+
export(htmlSelect)
168+
export(htmlShadow)
169+
export(htmlSlot)
170+
export(htmlSmall)
171+
export(htmlSource)
172+
export(htmlSpacer)
173+
export(htmlSpan)
174+
export(htmlStrike)
175+
export(htmlStrong)
176+
export(htmlSub)
177+
export(htmlSummary)
178+
export(htmlSup)
179+
export(htmlTable)
180+
export(htmlTbody)
181+
export(htmlTd)
182+
export(htmlTemplate)
183+
export(htmlTextarea)
184+
export(htmlTfoot)
185+
export(htmlTh)
186+
export(htmlThead)
187+
export(htmlTime)
188+
export(htmlTitle)
189+
export(htmlTr)
190+
export(htmlTrack)
191+
export(htmlU)
192+
export(htmlUl)
193+
export(htmlVar)
194+
export(htmlVideo)
195+
export(htmlWbr)
196+
export(htmlXmp)
197+
198+
199+
# dashTable exports appended by `npm unify` command: do not edit by hand
200+
201+
export(dashDataTable)
202+
203+
export(df_to_list)

0 commit comments

Comments
 (0)