repoweaver
Version:
A GitHub App that skillfully weaves multiple templates together to create and update repositories with intelligent merge strategies
1 lines • 23.9 kB
JSON
{"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nimport React, { useState } from 'react';\nimport ScrollView from \"react-native-web/dist/exports/ScrollView\";\nimport StyleSheet from \"react-native-web/dist/exports/StyleSheet\";\nimport View from \"react-native-web/dist/exports/View\";\nimport { Card, Title, Paragraph, FAB, List, IconButton, Searchbar, Chip, Portal, Modal, TextInput, Button } from 'react-native-paper';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { addTemplate, removeTemplate } from \"../store/templatesSlice\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport function TemplatesScreen() {\n var dispatch = useDispatch();\n var templates = useSelector(function (state) {\n return state.templates.templates;\n });\n var _useState = useState(''),\n _useState2 = _slicedToArray(_useState, 2),\n searchQuery = _useState2[0],\n setSearchQuery = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n showAddModal = _useState4[0],\n setShowAddModal = _useState4[1];\n var _useState5 = useState({\n url: '',\n name: '',\n branch: 'main',\n subDirectory: '',\n description: ''\n }),\n _useState6 = _slicedToArray(_useState5, 2),\n newTemplate = _useState6[0],\n setNewTemplate = _useState6[1];\n var filteredTemplates = templates.filter(function (template) {\n return template.name.toLowerCase().includes(searchQuery.toLowerCase()) || template.url.toLowerCase().includes(searchQuery.toLowerCase());\n });\n var handleAddTemplate = function handleAddTemplate() {\n var template = {\n id: Date.now().toString(),\n url: newTemplate.url,\n name: newTemplate.name,\n branch: newTemplate.branch,\n subDirectory: newTemplate.subDirectory || undefined,\n description: newTemplate.description || undefined\n };\n dispatch(addTemplate(template));\n setNewTemplate({\n url: '',\n name: '',\n branch: 'main',\n subDirectory: '',\n description: ''\n });\n setShowAddModal(false);\n };\n var handleRemoveTemplate = function handleRemoveTemplate(id) {\n dispatch(removeTemplate(id));\n };\n return _jsxs(View, {\n style: styles.container,\n children: [_jsx(View, {\n style: styles.searchContainer,\n children: _jsx(Searchbar, {\n placeholder: \"Search templates...\",\n onChangeText: setSearchQuery,\n value: searchQuery,\n style: styles.searchbar\n })\n }), _jsx(ScrollView, {\n style: styles.scrollView,\n children: filteredTemplates.map(function (template) {\n return _jsx(Card, {\n style: styles.card,\n children: _jsxs(Card.Content, {\n children: [_jsxs(View, {\n style: styles.cardHeader,\n children: [_jsxs(View, {\n style: styles.cardTitle,\n children: [_jsx(Title, {\n children: template.name\n }), template.description && _jsx(Paragraph, {\n children: template.description\n })]\n }), _jsx(IconButton, {\n icon: \"delete\",\n mode: \"contained\",\n onPress: function onPress() {\n return handleRemoveTemplate(template.id);\n }\n })]\n }), _jsx(List.Item, {\n title: \"Repository URL\",\n description: template.url,\n left: function left(props) {\n return _jsx(List.Icon, _objectSpread(_objectSpread({}, props), {}, {\n icon: \"github\"\n }));\n }\n }), _jsxs(View, {\n style: styles.chipContainer,\n children: [_jsxs(Chip, {\n mode: \"outlined\",\n compact: true,\n children: [\"Branch: \", template.branch || 'main']\n }), template.subDirectory && _jsxs(Chip, {\n mode: \"outlined\",\n compact: true,\n style: styles.chip,\n children: [\"Subdir: \", template.subDirectory]\n })]\n })]\n })\n }, template.id);\n })\n }), _jsx(FAB, {\n style: styles.fab,\n icon: \"plus\",\n onPress: function onPress() {\n return setShowAddModal(true);\n }\n }), _jsx(Portal, {\n children: _jsxs(Modal, {\n visible: showAddModal,\n onDismiss: function onDismiss() {\n return setShowAddModal(false);\n },\n contentContainerStyle: styles.modal,\n children: [_jsx(Title, {\n children: \"Add New Template\"\n }), _jsx(TextInput, {\n label: \"Template Name\",\n value: newTemplate.name,\n onChangeText: function onChangeText(text) {\n return setNewTemplate(_objectSpread(_objectSpread({}, newTemplate), {}, {\n name: text\n }));\n },\n style: styles.input\n }), _jsx(TextInput, {\n label: \"Repository URL\",\n value: newTemplate.url,\n onChangeText: function onChangeText(text) {\n return setNewTemplate(_objectSpread(_objectSpread({}, newTemplate), {}, {\n url: text\n }));\n },\n style: styles.input\n }), _jsx(TextInput, {\n label: \"Branch (optional)\",\n value: newTemplate.branch,\n onChangeText: function onChangeText(text) {\n return setNewTemplate(_objectSpread(_objectSpread({}, newTemplate), {}, {\n branch: text\n }));\n },\n style: styles.input\n }), _jsx(TextInput, {\n label: \"Subdirectory (optional)\",\n value: newTemplate.subDirectory,\n onChangeText: function onChangeText(text) {\n return setNewTemplate(_objectSpread(_objectSpread({}, newTemplate), {}, {\n subDirectory: text\n }));\n },\n style: styles.input\n }), _jsx(TextInput, {\n label: \"Description (optional)\",\n value: newTemplate.description,\n onChangeText: function onChangeText(text) {\n return setNewTemplate(_objectSpread(_objectSpread({}, newTemplate), {}, {\n description: text\n }));\n },\n style: styles.input,\n multiline: true\n }), _jsxs(View, {\n style: styles.modalButtons,\n children: [_jsx(Button, {\n mode: \"outlined\",\n onPress: function onPress() {\n return setShowAddModal(false);\n },\n children: \"Cancel\"\n }), _jsx(Button, {\n mode: \"contained\",\n onPress: handleAddTemplate,\n disabled: !newTemplate.name || !newTemplate.url,\n children: \"Add Template\"\n })]\n })]\n })\n })]\n });\n}\nvar styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#f5f5f5'\n },\n searchContainer: {\n padding: 16,\n paddingBottom: 8\n },\n searchbar: {\n elevation: 4\n },\n scrollView: {\n flex: 1,\n padding: 16,\n paddingTop: 8\n },\n card: {\n marginBottom: 16\n },\n cardHeader: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'flex-start'\n },\n cardTitle: {\n flex: 1\n },\n chipContainer: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n marginTop: 8\n },\n chip: {\n marginLeft: 8\n },\n fab: {\n position: 'absolute',\n margin: 16,\n right: 0,\n bottom: 0\n },\n modal: {\n backgroundColor: 'white',\n padding: 20,\n margin: 20,\n borderRadius: 8\n },\n input: {\n marginBottom: 16\n },\n modalButtons: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n marginTop: 16\n }\n});","map":{"version":3,"names":["React","useState","ScrollView","StyleSheet","View","Card","Title","Paragraph","FAB","List","IconButton","Searchbar","Chip","Portal","Modal","TextInput","Button","useSelector","useDispatch","addTemplate","removeTemplate","jsx","_jsx","jsxs","_jsxs","TemplatesScreen","dispatch","templates","state","_useState","_useState2","_slicedToArray","searchQuery","setSearchQuery","_useState3","_useState4","showAddModal","setShowAddModal","_useState5","url","name","branch","subDirectory","description","_useState6","newTemplate","setNewTemplate","filteredTemplates","filter","template","toLowerCase","includes","handleAddTemplate","id","Date","now","toString","undefined","handleRemoveTemplate","style","styles","container","children","searchContainer","placeholder","onChangeText","value","searchbar","scrollView","map","card","Content","cardHeader","cardTitle","icon","mode","onPress","Item","title","left","props","Icon","_objectSpread","chipContainer","compact","chip","fab","visible","onDismiss","contentContainerStyle","modal","label","text","input","multiline","modalButtons","disabled","create","flex","backgroundColor","padding","paddingBottom","elevation","paddingTop","marginBottom","flexDirection","justifyContent","alignItems","flexWrap","marginTop","marginLeft","position","margin","right","bottom","borderRadius"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/src/screens/TemplatesScreen.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { ScrollView, StyleSheet, View } from 'react-native';\nimport { \n Card, \n Title, \n Paragraph, \n FAB, \n List, \n IconButton, \n Searchbar,\n Chip,\n Portal,\n Modal,\n TextInput,\n Button\n} from 'react-native-paper';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { RootState } from '../store';\nimport { addTemplate, removeTemplate } from '../store/templatesSlice';\nimport { MobileTemplateRepository } from '../types';\n\nexport function TemplatesScreen() {\n const dispatch = useDispatch();\n const templates = useSelector((state: RootState) => state.templates.templates);\n \n const [searchQuery, setSearchQuery] = useState('');\n const [showAddModal, setShowAddModal] = useState(false);\n const [newTemplate, setNewTemplate] = useState({\n url: '',\n name: '',\n branch: 'main',\n subDirectory: '',\n description: '',\n });\n\n const filteredTemplates = templates.filter(template =>\n template.name.toLowerCase().includes(searchQuery.toLowerCase()) ||\n template.url.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n const handleAddTemplate = () => {\n const template: MobileTemplateRepository = {\n id: Date.now().toString(),\n url: newTemplate.url,\n name: newTemplate.name,\n branch: newTemplate.branch,\n subDirectory: newTemplate.subDirectory || undefined,\n description: newTemplate.description || undefined,\n };\n \n dispatch(addTemplate(template));\n setNewTemplate({ url: '', name: '', branch: 'main', subDirectory: '', description: '' });\n setShowAddModal(false);\n };\n\n const handleRemoveTemplate = (id: string) => {\n dispatch(removeTemplate(id));\n };\n\n return (\n <View style={styles.container}>\n <View style={styles.searchContainer}>\n <Searchbar\n placeholder=\"Search templates...\"\n onChangeText={setSearchQuery}\n value={searchQuery}\n style={styles.searchbar}\n />\n </View>\n\n <ScrollView style={styles.scrollView}>\n {filteredTemplates.map((template) => (\n <Card key={template.id} style={styles.card}>\n <Card.Content>\n <View style={styles.cardHeader}>\n <View style={styles.cardTitle}>\n <Title>{template.name}</Title>\n {template.description && (\n <Paragraph>{template.description}</Paragraph>\n )}\n </View>\n <IconButton\n icon=\"delete\"\n mode=\"contained\"\n onPress={() => handleRemoveTemplate(template.id)}\n />\n </View>\n \n <List.Item\n title=\"Repository URL\"\n description={template.url}\n left={(props) => <List.Icon {...props} icon=\"github\" />}\n />\n \n <View style={styles.chipContainer}>\n <Chip mode=\"outlined\" compact>\n Branch: {template.branch || 'main'}\n </Chip>\n {template.subDirectory && (\n <Chip mode=\"outlined\" compact style={styles.chip}>\n Subdir: {template.subDirectory}\n </Chip>\n )}\n </View>\n </Card.Content>\n </Card>\n ))}\n </ScrollView>\n\n <FAB\n style={styles.fab}\n icon=\"plus\"\n onPress={() => setShowAddModal(true)}\n />\n\n <Portal>\n <Modal\n visible={showAddModal}\n onDismiss={() => setShowAddModal(false)}\n contentContainerStyle={styles.modal}\n >\n <Title>Add New Template</Title>\n \n <TextInput\n label=\"Template Name\"\n value={newTemplate.name}\n onChangeText={(text) => setNewTemplate({ ...newTemplate, name: text })}\n style={styles.input}\n />\n \n <TextInput\n label=\"Repository URL\"\n value={newTemplate.url}\n onChangeText={(text) => setNewTemplate({ ...newTemplate, url: text })}\n style={styles.input}\n />\n \n <TextInput\n label=\"Branch (optional)\"\n value={newTemplate.branch}\n onChangeText={(text) => setNewTemplate({ ...newTemplate, branch: text })}\n style={styles.input}\n />\n \n <TextInput\n label=\"Subdirectory (optional)\"\n value={newTemplate.subDirectory}\n onChangeText={(text) => setNewTemplate({ ...newTemplate, subDirectory: text })}\n style={styles.input}\n />\n \n <TextInput\n label=\"Description (optional)\"\n value={newTemplate.description}\n onChangeText={(text) => setNewTemplate({ ...newTemplate, description: text })}\n style={styles.input}\n multiline\n />\n \n <View style={styles.modalButtons}>\n <Button mode=\"outlined\" onPress={() => setShowAddModal(false)}>\n Cancel\n </Button>\n <Button \n mode=\"contained\" \n onPress={handleAddTemplate}\n disabled={!newTemplate.name || !newTemplate.url}\n >\n Add Template\n </Button>\n </View>\n </Modal>\n </Portal>\n </View>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#f5f5f5',\n },\n searchContainer: {\n padding: 16,\n paddingBottom: 8,\n },\n searchbar: {\n elevation: 4,\n },\n scrollView: {\n flex: 1,\n padding: 16,\n paddingTop: 8,\n },\n card: {\n marginBottom: 16,\n },\n cardHeader: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n },\n cardTitle: {\n flex: 1,\n },\n chipContainer: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n marginTop: 8,\n },\n chip: {\n marginLeft: 8,\n },\n fab: {\n position: 'absolute',\n margin: 16,\n right: 0,\n bottom: 0,\n },\n modal: {\n backgroundColor: 'white',\n padding: 20,\n margin: 20,\n borderRadius: 8,\n },\n input: {\n marginBottom: 16,\n },\n modalButtons: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n marginTop: 16,\n },\n});"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}